Ejemplo n.º 1
0
        private void InitAlternateCDNAddress(AMSChannel channel, AMSEvent eventData)
        {
            if (channel != null && eventData != null && channel.AlternateCDNEndpoint.IsNotEmpty())
            {
                VideoAddressType videoAddressType = WebHelper.GetVideoAddressType();
                VideoAddressType targetType       = VideoAddressType.AlternateCDN;
                string           buttonText       = this.switchVideoAddressType.InnerText;

                switch (videoAddressType)
                {
                case VideoAddressType.Default:
                    targetType = VideoAddressType.AlternateCDN;
                    buttonText = "切换到备用CDN";
                    break;

                case VideoAddressType.AlternateCDN:
                    targetType = VideoAddressType.Default;
                    buttonText = "切换到默认地址";
                    break;
                }

                this.targetAddressType.Value          = targetType.ToString();
                this.switchVideoAddressType.InnerText = buttonText;
                this.videoAddressType.Value           = videoAddressType.ToString();
            }
            else
            {
                this.switchVideoAddressType.Attributes["class"] = "btn btn-default disabled";
            }
        }
Ejemplo n.º 2
0
        private static string ChangeVideoAddress(AMSChannel channel, string url, VideoAddressType addressType)
        {
            string result = url;

            if (channel != null && channel.AlternateCDNEndpoint.IsNotEmpty() && url.IsNotEmpty())
            {
                Uri target = new Uri(url);

                if (addressType == VideoAddressType.AlternateCDN)
                {
                    result = MergePlaybackCDNHost(target, channel.AlternateCDNEndpoint);
                }
            }

            return(result);
        }
Ejemplo n.º 3
0
        public static string GetSingleEventJson(AMSChannel channel, AMSEvent eventData, VideoAddressType addressType)
        {
            var simpleEventData = new
            {
                id          = eventData.ID,
                channelID   = eventData.ChannelID,
                name        = eventData.Name,
                description = eventData.Description,
                speakers    = eventData.Speakers,
                url         = ChangeVideoAddress(channel, eventData.CDNPlaybackUrl, addressType),
                poster      = eventData.PosterUrl,
                views       = string.Format("{0:#,##0}", eventData.Views),
                startTime   = string.Format("{0:yyyy-MM-dd HH:mm:ss}", eventData.StartTime),
                endTime     = string.Format("{0:yyyy-MM-dd HH:mm:ss}", eventData.EndTime)
            };

            return(JSONSerializerExecute.Serialize(simpleEventData));
        }
Ejemplo n.º 4
0
        private static string ChangeVideoAddress(AMSChannel channel, string url, VideoAddressType addressType)
        {
            string result = url;

            if (channel != null && channel.AlternateCDNEndpoint.IsNotEmpty() && url.IsNotEmpty())
            {
                Uri target = new Uri(url);

                if (addressType == VideoAddressType.AlternateCDN)
                    result = MergePlaybackCDNHost(target, channel.AlternateCDNEndpoint);
            }

            return result;
        }
Ejemplo n.º 5
0
        public static string GetSingleEventJson(AMSChannel channel, AMSEvent eventData, VideoAddressType addressType)
        {
            var simpleEventData = new
            {
                id = eventData.ID,
                channelID = eventData.ChannelID,
                name = eventData.Name,
                description = eventData.Description,
                speakers = eventData.Speakers,
                url = ChangeVideoAddress(channel, eventData.CDNPlaybackUrl, addressType),
                poster = eventData.PosterUrl,
                views = string.Format("{0:#,##0}", eventData.Views),
                startTime = string.Format("{0:yyyy-MM-dd HH:mm:ss}", eventData.StartTime),
                endTime = string.Format("{0:yyyy-MM-dd HH:mm:ss}", eventData.EndTime)
            };

            return JSONSerializerExecute.Serialize(simpleEventData);
        }