首页 > 解决方案 > 在聊天机器人模拟器中自动播放视频

问题描述

我正在向我的聊天机器人添加视频卡。

var resultMessage = context.MakeMessage();
            var bytes = System.IO.File.ReadAllBytes(HttpContext.Current.Server.MapPath("~/Videos/Cute.mp4"));
            string videoData = Convert.ToBase64String(bytes);
            resultMessage.AttachmentLayout = AttachmentLayoutTypes.Carousel;
            resultMessage.Attachments = new List<Microsoft.Bot.Connector.Attachment>();
            VideoCard vc = new VideoCard()
            {
                // Title = $"hi",
                // Subtitle = Address,
                Media = new List<MediaUrl>()
                    {
                        new MediaUrl()
                        {
                          // Url = "https://i1.wp.com/thefreshimages.com/wp-content/uploads/2017/12/lord-shiva-hd-images.jpg?resize=3840%2C2160&ssl=1"
                          Url = "data:video/mp4;base64,"+ videoData

                        },
                    }
            };
            resultMessage.Attachments.Add(vc.ToAttachment());

            await context.PostAsync(resultMessage);

它会在用户单击播放按钮时播放。但我想自动播放。

标签: c#.net

解决方案


这里说Autostart 属性默认为 true,所以它应该自动开始播放。您可以尝试将其设置为 true 并查看它是否有效。

VideoCard vc = new VideoCard()
{
    Media = new List<MediaUrl>()
    {
        new MediaUrl()
        {
            // Url = "https://i1.wp.com/thefreshimages.com/wp-content/uploads/2017/12/lord-shiva-hd-images.jpg?resize=3840%2C2160&ssl=1"
            Url = "data:video/mp4;base64,"+ videoData
        }
    },
    Autostart = true
};

推荐阅读