Ejemplo n.º 1
0
 private GetVodPlaylistCommand(IServiceClient client, Uri endpoint,
                               ExecutionContext context, IDeserializer <ServiceResponse, GetVodPlaylistResult> deserializer,
                               GetVodPlaylistRequest request)
     : base(client, endpoint, context, deserializer)
 {
     _request = request;
 }
Ejemplo n.º 2
0
 public static GetVodPlaylistCommand Create(IServiceClient client, Uri endpoint,
                                            ExecutionContext context,
                                            GetVodPlaylistRequest request)
 {
     OssUtils.CheckBucketName(request.BucketName);
     return(new GetVodPlaylistCommand(client, endpoint, context,
                                      DeserializerFactory.GetFactory().CreateGetVodPlaylistResultDeserializer(),
                                      request));
 }
        public void LiveChannelBasicTest()
        {
            string liveChannelName = "live-channel";
            var    clcRequest      = new CreateLiveChannelRequest(_bucketName, liveChannelName);

            clcRequest.Description  = "just for test";
            clcRequest.Status       = "enabled";
            clcRequest.FragDuration = 10;
            clcRequest.FragCount    = 5;
            clcRequest.PlaylistName = "playlist1.m3u8";
            var clcResult = _ossClient.CreateLiveChannel(clcRequest);

            Assert.AreEqual(clcResult.PublishUrl.Contains("live/live-channel"), true);
            Assert.AreEqual(clcResult.PlayUrl.Contains("live-channel/playlist1.m3u8"), true);


            var infoResult = _ossClient.GetLiveChannelInfo(new GetLiveChannelInfoRequest(_bucketName, liveChannelName));

            Assert.AreEqual(infoResult.Description, "just for test");
            Assert.AreEqual(infoResult.Status, "enabled");
            Assert.AreEqual(infoResult.Type, "HLS");
            Assert.AreEqual(infoResult.FragDuration, 10);
            Assert.AreEqual(infoResult.FragCount, 5);
            Assert.AreEqual(infoResult.PlaylistName, "playlist1.m3u8");

            _ossClient.SetLiveChannelStatus(new SetLiveChannelStatusRequest(_bucketName, liveChannelName, "disabled"));

            infoResult = _ossClient.GetLiveChannelInfo(new GetLiveChannelInfoRequest(_bucketName, liveChannelName));
            Assert.AreEqual(infoResult.Status, "disabled");

            var statResult = _ossClient.GetLiveChannelStat(new GetLiveChannelStatRequest(_bucketName, liveChannelName));

            Assert.AreEqual(statResult.Status, "Disabled");

            var historyResult = _ossClient.GetLiveChannelHistory(new GetLiveChannelHistoryRequest(_bucketName, liveChannelName));
            var LiveRecords   = OssTestUtils.ToArray(historyResult.LiveRecords);

            Assert.AreEqual(LiveRecords.Count, 0);

            var gvpRequest = new GetVodPlaylistRequest(_bucketName, liveChannelName);

            gvpRequest.StartTime = DateTime.Now;
            gvpRequest.EndTime   = DateTime.Now.AddMinutes(100);
            try
            {
                var gvpResult = _ossClient.GetVodPlaylist(gvpRequest);
                Assert.IsTrue(false, "should not here.");
            }
            catch (OssException e)
            {
                Assert.AreEqual(e.ErrorCode, "InvalidArgument");
                Assert.AreEqual(e.Message, "No ts file found in specified time span.");
            }

            var pvpRequest = new PostVodPlaylistRequest(_bucketName, liveChannelName);

            pvpRequest.PlaylistName = "test-playlist.m3u8";
            pvpRequest.StartTime    = DateTime.Now;
            pvpRequest.EndTime      = DateTime.Now.AddMinutes(100);
            try
            {
                _ossClient.PostVodPlaylist(pvpRequest);
                Assert.IsTrue(false, "should not here.");
            }
            catch (OssException e)
            {
                Assert.AreEqual(e.ErrorCode, "InvalidArgument");
                Assert.AreEqual(e.Message, "No ts file found in specified time span.");
            }

            _ossClient.DeleteLiveChannel(new DeleteLiveChannelRequest(_bucketName, liveChannelName));
        }