我正在使用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;
}
答案 0 :(得分:0)
您必须use OAuth,即supported by vBrick。
基本上,这些步骤将是:
向用户显示登录屏幕(here's a good sample)
用户登录后,将对他们发出的所有HTTP请求进行身份验证。只要您可以在Azure中使用vBrick的OAuth,它就应该可以工作。我无法测试,因为vBrick不是免费服务。
由于视频卡视频请求是作为用户的客户端发出的,因此它应该可以工作。
对于遇到此问题并想要使用OneDrive中的视频(这是我测试的方式)的任何人,OneDrive都会对该URL进行身份验证,然后将您重定向到公共下载URL。由于重定向在视频卡中不起作用,因此最好的方法是使用MS Graph API get all OneDrive Items和"@microsoft.graph.downloadUrl"
。将视频卡的URL设置为downloadUrl
,然后将视频卡发送给用户。