【发布时间】:2021-01-02 07:08:34
【问题描述】:
我们正在我们的 Microsoft Teams 应用程序中尝试消息扩展功能,该应用程序有一个命令,当从撰写框调用时,该命令会从机器人获取动态参数集。
当用户点击消息扩展时,我们的应用会收到有效负载类型“invoke”和名称“composeExtension/fetchTask”
我们的应用程序处理数据,并在任务中以“类型”:“继续”的自适应卡作为回报,并且自适应卡具有打开 URL 的链接,如下所示
"task": {
"type": "continue",
"value": {
"card": {
"contentType": "application/vnd.microsoft.card.adaptive",
"content": {
"type": "AdaptiveCard",
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"version": "1.2",
"body": [{
"type": "ActionSet",
"actions": [{
"type": "Action.OpenUrl",
"title": "Open Facebook",
"url": <URL to open Facebook>
}],
}
]
}
}
}
}
MSTeams 在任务模块弹出窗口中显示此卡。当用户单击操作按钮时,它会在新的浏览器选项卡中打开 Facebook 页面,但任务模块弹出窗口并未关闭。
当用户单击操作按钮时,是否有关闭任务模块弹出窗口?
注意:我们没有使用 Bot Framework SDK 和 Microsoft Teams Javascript 客户端 SDK。
【问题讨论】:
-
您的机器人将收到一个动作,说 composeExtension/SubmitAction。您可以在那里返回 200 OK 响应 Request.CreateResponse(HttpStatusCode.OK, taskEnvelope);
-
@Trinetra-MSFT Bot 没有收到带有 actions.type: Action.OpenUrl 的操作 composeExtension/SubmitAction。如果我们使用 actions.type: Action.Submit,Bot 会收到 composeExtension/SubmitAction 事件。但是 URL 没有在新页面中打开。请提供解决此问题的附加说明。
-
你能看一下teams message extension action的这个示例代码吗?
-
浏览示例代码并进行了尝试,但这无助于解决问题。示例代码使用具有静态参数列表的消息传递扩展。如前所述,我们的应用程序没有收到带有 actions.type: Action.OpenUrl 的操作 composeExtension/SubmitAction。您能否为这种特殊情况提供解决方案,因为我们无法切换到静态参数列表?
-
Action 类型应该是 submit 以获得 submitAction 触发器
标签: microsoft-teams