private static IStreamingEndpoint CreateAndStartStreamingEndpoint(string streamingEndpointName) { // A single Media Services account can have multiple Streaming Endpoints. // You may want to have multiple Streaming Endpoints if you want to have different // configurations for each (for example, security settings, cross site access policies, scale units, etc.) // or if you want to separate your Video on Demand (VOD) and Live streaming. var options = new StreamingEndpointCreationOptions { Name = streamingEndpointName, ScaleUnits = 1, AccessControl = new StreamingEndpointAccessControl { IPAllowList = new List <IPRange> { new IPRange { Name = "Public Internet", Address = IPAddress.Parse("0.0.0.0"), SubnetPrefixLength = 0 } } }, CacheControl = new StreamingEndpointCacheControl { MaxAge = TimeSpan.FromSeconds(1000) } }; var streamingEndpoint = _context.StreamingEndpoints.Create(options); streamingEndpoint.Start(); return(streamingEndpoint); }
public void StreamingEndpointVerifyCDNEnabledFlag() { var name = "StreamingEndpoint" + DateTime.UtcNow.ToString("hhmmss"); var option = new StreamingEndpointCreationOptions(name, 1) { CdnEnabled = true }; var streamingEndpoint = _mediaContext.StreamingEndpoints.Create(option); var createdToValidate = _mediaContext.StreamingEndpoints.Where(c => c.Id == streamingEndpoint.Id).FirstOrDefault(); Assert.IsNotNull(createdToValidate); Assert.AreEqual(true, createdToValidate.CdnEnabled); streamingEndpoint.Delete(); name = "CDNDisabled" + DateTime.UtcNow.ToString("hhmmss"); var disabledOption = new StreamingEndpointCreationOptions(name, 1) { CdnEnabled = false }; streamingEndpoint = _mediaContext.StreamingEndpoints.Create(disabledOption); createdToValidate = _mediaContext.StreamingEndpoints.Where(c => c.Id == streamingEndpoint.Id).FirstOrDefault(); Assert.IsNotNull(createdToValidate); Assert.AreEqual(false, createdToValidate.CdnEnabled); streamingEndpoint.Delete(); }
public static void CreateStreamingEndpoint() { const string cdnProfileName = "XamCamCDNProfile"; switch (CloudMediaContext.StreamingEndpoints.Where(x => x.CdnProfile.Equals(cdnProfileName)).Count() > 0) { case false: var streamingEndpointOptions = new StreamingEndpointCreationOptions(cdnStreamingEndpointName, 1) { StreamingEndpointVersion = new Version("2.0"), CdnEnabled = true, CdnProfile = cdnProfileName, CdnProvider = CdnProviderType.StandardAkamai, }; CloudMediaContext.StreamingEndpoints.Create(streamingEndpointOptions); break; } switch (CloudMediaContext.StreamingEndpoints.FirstOrDefault()?.State) { case StreamingEndpointState.Stopped: CloudMediaContext.StreamingEndpoints.FirstOrDefault()?.Start(); break; } }
public async Task <IStreamingEndpoint> CreateStreamingEndpoint() { IStreamingEndpoint streamingEndpoint; if (!_cloudMediaContext.StreamingEndpoints.Any(x => x.CdnProfile.Equals(_azureMediaServiceCdnProfileName))) { var streamingEndpointOptions = new StreamingEndpointCreationOptions(_azureMediaServiceCdnEndpointName, 1) { StreamingEndpointVersion = new Version("2.0"), CdnEnabled = true, CdnProfile = _azureMediaServiceCdnProfileName, CdnProvider = CdnProviderType.StandardAkamai }; streamingEndpoint = await _cloudMediaContext.StreamingEndpoints.CreateAsync(streamingEndpointOptions).ConfigureAwait(false); } else { streamingEndpoint = _cloudMediaContext.StreamingEndpoints.First(x => x.Name.Equals(_azureMediaServiceCdnEndpointName)); } if (streamingEndpoint.State is StreamingEndpointState.Stopped) { await streamingEndpoint.StartAsync().ConfigureAwait(false); } return(streamingEndpoint); }
public void StreamingEndpointVerifyDefaultCdnOptions() { var name = "StreamingEndpoint" + DateTime.UtcNow.ToString("hhmmss"); var option = new StreamingEndpointCreationOptions(name, 1) { CdnEnabled = true }; var streamingEndpoint = _mediaContext.StreamingEndpoints.Create(option); var createdToValidate = _mediaContext.StreamingEndpoints.Where(c => c.Id == streamingEndpoint.Id).FirstOrDefault(); Assert.IsNotNull(createdToValidate); Assert.AreEqual(createdToValidate.CdnProvider, CdnProviderType.StandardVerizon.ToString()); Assert.AreEqual(createdToValidate.CdnProfile, StreamingEndpointCreationOptions.DefaultCdnProfile); Assert.AreEqual(new Version("2.0").ToString(), createdToValidate.StreamingEndpointVersion); Assert.IsNotNull(createdToValidate.FreeTrialEndTime); createdToValidate.CdnProfile = "newTestcdnProfile"; createdToValidate.CdnProvider = CdnProviderType.PremiumVerizon.ToString(); createdToValidate.Update(); createdToValidate = _mediaContext.StreamingEndpoints.Where(c => c.Id == streamingEndpoint.Id).FirstOrDefault(); Assert.AreEqual(createdToValidate.CdnProvider, CdnProviderType.PremiumVerizon.ToString()); Assert.AreEqual(createdToValidate.CdnProfile, "newTestcdnProfile"); streamingEndpoint.Delete(); }
public void StreamingEndpointCreateStartStopDelete() { var name = "StreamingEndpoint" + DateTime.UtcNow.ToString("hhmmss"); var option = new StreamingEndpointCreationOptions(name, 1); var streamingEndpoint = _mediaContext.StreamingEndpoints.Create(option); Assert.IsNotNull(streamingEndpoint); streamingEndpoint.Start(); Assert.AreEqual(StreamingEndpointState.Running,streamingEndpoint.State); streamingEndpoint.Stop(); Assert.AreEqual(StreamingEndpointState.Stopped, streamingEndpoint.State); streamingEndpoint.Delete(); var deleted = _mediaContext.StreamingEndpoints.Where(c => c.Id == streamingEndpoint.Id).FirstOrDefault(); Assert.IsNull(deleted); }
public void StreamingEndpointCreateStartStopDelete() { var name = "StreamingEndpoint" + DateTime.UtcNow.ToString("hhmmss"); var option = new StreamingEndpointCreationOptions(name, 1); var streamingEndpoint = _mediaContext.StreamingEndpoints.Create(option); Assert.IsNotNull(streamingEndpoint); streamingEndpoint.Start(); Assert.AreEqual(StreamingEndpointState.Running, streamingEndpoint.State); streamingEndpoint.Stop(); Assert.AreEqual(StreamingEndpointState.Stopped, streamingEndpoint.State); streamingEndpoint.Delete(); var deleted = _mediaContext.StreamingEndpoints.Where(c => c.Id == streamingEndpoint.Id).FirstOrDefault(); Assert.IsNull(deleted); }
public static IStreamingEndpoint CreateAndStartStreamingEndpoint() { var options = new StreamingEndpointCreationOptions { Name = StreamingEndpointName, ScaleUnits = 1, AccessControl = GetAccessControl(), CacheControl = GetCacheControl() }; IStreamingEndpoint streamingEndpoint = _context.StreamingEndpoints.Create(options); streamingEndpoint.Start(); return(streamingEndpoint); }
public void StreamingEndpointVerifyCdnOptions() { var name = "StreamingEndpoint" + DateTime.UtcNow.ToString("hhmmss"); var option = new StreamingEndpointCreationOptions(name, 1) { CdnEnabled = true, CdnProfile = "testCdnProfile", CdnProvider = CdnProviderType.PremiumVerizon, StreamingEndpointVersion = new Version("2.0") }; var streamingEndpoint = _mediaContext.StreamingEndpoints.Create(option); var createdToValidate = _mediaContext.StreamingEndpoints.Where(c => c.Id == streamingEndpoint.Id).FirstOrDefault(); Assert.IsNotNull(createdToValidate); Assert.AreEqual(true, createdToValidate.CdnEnabled); Assert.AreEqual(option.CdnProfile, createdToValidate.CdnProfile); Assert.AreEqual(option.CdnProvider.ToString(), createdToValidate.CdnProvider); Assert.AreEqual(new Version("2.0").ToString(), createdToValidate.StreamingEndpointVersion); Assert.IsNotNull(createdToValidate.FreeTrialEndTime); var updateProfile = "UpdatedProfile"; streamingEndpoint.CdnEnabled = false; streamingEndpoint.CdnProfile = updateProfile; streamingEndpoint.Update(); createdToValidate = _mediaContext.StreamingEndpoints.Where(c => c.Id == streamingEndpoint.Id).FirstOrDefault(); Assert.AreEqual(false, createdToValidate.CdnEnabled); Assert.IsTrue(string.Equals(updateProfile, createdToValidate.CdnProfile)); streamingEndpoint.Delete(); name = "CDNDisabled" + DateTime.UtcNow.ToString("hhmmss"); var disabledOption = new StreamingEndpointCreationOptions(name, 1) { CdnEnabled = false }; streamingEndpoint = _mediaContext.StreamingEndpoints.Create(disabledOption); createdToValidate = _mediaContext.StreamingEndpoints.Where(c => c.Id == streamingEndpoint.Id).FirstOrDefault(); Assert.IsNotNull(createdToValidate); Assert.AreEqual(false, createdToValidate.CdnEnabled); streamingEndpoint.Delete(); }
public void CdnSettingsTest() { var dataContextMock = new Mock <IMediaDataServiceContext>(); var streamingEndpointMock = new Mock <IStreamingEndpoint>(); var originCreationOptions = new StreamingEndpointCreationOptions("unittest", 1) { CdnEnabled = true, CdnProfile = "testCdnProfile", CdnProvider = CdnProviderType.StandardAkamai, StreamingEndpointVersion = new Version("1.0") }; var fakeResponse = new TestMediaDataServiceResponse(new Dictionary <string, string> { { StreamingConstants.OperationIdHeader, "" } }) { AsyncState = new TestStreamingEndpointData(originCreationOptions) }; dataContextMock.Setup(ctxt => ctxt.AddObject("StreamingEndpoints", It.IsAny <object>())); dataContextMock.Setup(ctxt => ctxt.SaveChangesAsync(It.IsAny <object>())) .Returns(() => Task <IMediaDataServiceResponse> .Factory.StartNew(() => fakeResponse)); dataContextMock.Setup(ctxt => ctxt.Execute <OperationData>(It.IsAny <Uri>())) .Returns(() => new List <OperationData> { new OperationData { State = OperationState.Succeeded.ToString() } }); _mediaContext.MediaServicesClassFactory = new TestMediaServicesClassFactory(dataContextMock.Object); var actual = _mediaContext.StreamingEndpoints.Create(originCreationOptions); dataContextMock.Verify(ctxt => ctxt.SaveChangesAsync(It.IsAny <object>()), Times.Exactly(1)); Assert.AreEqual(originCreationOptions.Name, actual.Name); Assert.AreEqual(originCreationOptions.ScaleUnits, actual.ScaleUnits); Assert.AreEqual(originCreationOptions.CdnEnabled, actual.CdnEnabled); Assert.AreEqual(originCreationOptions.CdnProvider.ToString(), actual.CdnProvider); Assert.AreEqual(originCreationOptions.CdnProfile, actual.CdnProfile); Assert.AreEqual(originCreationOptions.StreamingEndpointVersion.ToString(), actual.StreamingEndpointVersion); }
public TestStreamingEndpointData(StreamingEndpointCreationOptions options) : base(options) { }
public void StreamingEndpointVerifyCDNEnabledFlag() { var name = "StreamingEndpoint" + DateTime.UtcNow.ToString("hhmmss"); var option = new StreamingEndpointCreationOptions(name, 1) { CdnEnabled = true }; var streamingEndpoint = _mediaContext.StreamingEndpoints.Create(option); var createdToValidate = _mediaContext.StreamingEndpoints.Where(c => c.Id == streamingEndpoint.Id).FirstOrDefault(); Assert.IsNotNull(createdToValidate); Assert.AreEqual(true, createdToValidate.CdnEnabled); streamingEndpoint.Delete(); name = "CDNDisabled" + DateTime.UtcNow.ToString("hhmmss"); var disabledOption = new StreamingEndpointCreationOptions(name, 1) { CdnEnabled = false }; streamingEndpoint = _mediaContext.StreamingEndpoints.Create(disabledOption); createdToValidate = _mediaContext.StreamingEndpoints.Where(c => c.Id == streamingEndpoint.Id).FirstOrDefault(); Assert.IsNotNull(createdToValidate); Assert.AreEqual(false, createdToValidate.CdnEnabled); streamingEndpoint.Delete(); }