c# - 如何在 Microsoft Bot 框架服务器端打开 Internet 选项卡?

标签 c# botframework microsoft-teams adaptive-cards

当用户点击自适应卡片上的 action.submit 时,我需要打开一个 url 选项卡。我不想使用 Action.OpenURL。在 OnEvent 方法中,我想添加一些代码以在客户端打开 Internet 选项卡。是否可以在 Microsoft Bot 框架内从服务器端打开客户端 (MICROSOFT TEAMS) 的选项卡?如果是,我如何在 C# 中完成。

最佳答案

通常希望将提交操作和打开 URL 操作组合在一个按钮中,以便机器人在用户打开页面时接收到事件。由于没有卡片支持双重操作,因此在尝试使其工作时有一些想法需要探索:

  1. 使用提交操作,然后让机器人将事件发送回 channel ,使页面自动打开
  2. 使用打开 URL 操作,然后让 URL 访问机器人

除非您使用网络聊天,否则第一个想法是不可能的,因为没有任何事件可以让客户端打开 URL,如果您使用网络聊天,那么您不妨扩展它以支持双重操作。

对于第二个想法,有几种方法可以实现。您可以托管一个单独的 API 来向机器人发送事件,或者您可以将 URL 放在机器人自己的域中并让它直接调用机器人代码。在任何情况下,一旦机器人收到有关操作的通知,您就会希望将用户重定向到您希望他们看到的实际页面。这里有一个例子:https://github.com/EricDahlvang/OpenUrlRedirectBot

关于c# - 如何在 Microsoft Bot 框架服务器端打开 Internet 选项卡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63236409/

相关文章:

.net - MS 团队应用程序 : There was a problem reaching this app

c# - 为什么 Int32.ToString() 发出调用指令而不是 callvirt?

c# - System.Net.Http.HttpRequestException(微软机器人框架)

node.js - 运行新的 Stack Overflow Bot 时出错

azure - TeamsBot 没有对话引用

azure - Microsoft Teams 通知间歇性停止工作

c# - JSON 到 C# 中的字符串数组

c# - 通过索引号 wpf mvvm 在 listview itemsource 中搜索值

c# - 无法导入 X509 v3 证书

c# - 在android中访问azure中的机器人