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"; } }
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); }
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)); }
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; }
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); }