Azure聊天机器人-自适应卡-显示安全视频

时间:2019-07-11 16:48:32

标签: c# botframework chatbot

我正在使用Microsoft虚拟助手模板创建我的聊天BoT。想要在我的azure聊天机器人中显示视频。.但是,视频无法正常工作,尤其是当视频来自公司共享点位置时。我猜这是由于身份验证问题造成的。如何发送登录的用户令牌以在聊天窗口中显示视频。

public static VideoCard GetVideoCard()
    {
        var videoCard = new VideoCard
        {
            Title = "This my Title",
            Subtitle = "by the subtitle",
            Text = "t is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.  distribution of letters,." +
                   " t is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.ution of letters,.",

            Image = new ThumbnailUrl
            {
                Url = "https://mycompany.rev.vbrick.com/#/videos/11111-db89-11111-b39d-111111",
            },

            Media = new List<MediaUrl>
            {
                new MediaUrl()
                {

                    Url="https://mycompany.rev.vbrick.com/#/videos/11111-db89-4bc3-b39d-111111",

                },
            },
            Buttons = new List<CardAction>
            {
                new CardAction()
                {
                    Title = "Learn More",
                    Type = ActionTypes.OpenUrl,
                    Value = "https://mycompany.rev.vbrick.com/#/videos/1111-db89-4bc3-b39d-1111",
                },
            },
        };

        return videoCard;
    }

1 个答案:

答案 0 :(得分:0)

您必须use OAuth,即supported by vBrick

基本上,这些步骤将是:

  1. 向用户显示登录屏幕(here's a good sample

  2. 用户登录后,将对他们发出的所有HTTP请求进行身份验证。只要您可以在Azure中使用vBrick的OAuth,它就应该可以工作。我无法测试,因为vBrick不是免费服务。

  3. 由于视频卡视频请求是作为用户的客户端发出的,因此它应该可以工作。


对于遇到此问题并想要使用OneDrive中的视频(这是我测试的方式)的任何人,OneDrive都会对该URL进行身份验证,然后将您重定向到公共下载URL。由于重定向在视频卡中不起作用,因此最好的方法是使用MS Graph API get all OneDrive Items"@microsoft.graph.downloadUrl"。将视频卡的URL设置为downloadUrl,然后将视频卡发送给用户。