我正在开发BotFramework,专门针对Facebook Messenger Channels .

在HeroCard上说,CardActions会转换为Messenger中的按钮 .

如果CardAction的类型为“OpenUrl”,Messenger将尝试使用提供的URL在应用程序中打开webview .

Messenger使用可选的“Messenger Extensions”来增强webview体验,如果您以正确的方式调用webview并在FB设置中将域列入白名单,则允许webview获得更多权限,例如关闭它的能力例如,用Javascript本身 .

如果您只是使用Facebook特定的JSON设置ChannelData,则需要在JSON按钮的本机属性中将'messenger_extensions'属性设置为'true' .

但是,如果你正在使用通用的BotFramework方式,比如说

new HeroCard("Title here", "and more", 
                buttons: { new CardAction()
            {
                Title = "Open in webview",
                Type = ActionTypes.OpenUrl,
                Value = "https://example.com/webviews/1"
            } });

是否可以为此CardAction设置messenger_extensions:true?或者只能通过消息的ChannelData中的JSON中的特定于Messenger通道的列表/按钮模板中的整个英雄卡来实现?