botframework - 具有自适应卡的团队任务模块不会为其他用户打开并导致团队崩溃
问题描述
我正在使用 Bot 框架 Java SDK v4.13 (bot-integration-spring) 开发团队应用程序。我已通过上传自定义应用程序将应用程序导入我的团队。
我们有一个基于搜索的消息扩展程序,它显示列表项,然后选择一个项目会在撰写框中生成一张自适应卡片,我可以将其发送到频道中或发送给团队中的其他用户。该机器人不是对话的参与者 - 频道、群聊、与另一个用户的 1-1。
我Action.Submit
在自适应卡上添加了一个按钮来获取这张卡上的任务模块(弹出窗口),如下所示。
{
"data": {
"msteams": {
"type": "task/fetch"
},
"task": "postComment"
},
"type": "Action.Submit",
"title": "Comment"
}
单击该按钮将带来另一张自适应卡片,我可以将其提交回我的机器人。
{
"version": "1.2",
"type": "AdaptiveCard",
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"body": [
{
"type": "Input.Text",
"id": "subject",
"placeholder": "Subject"
},
{
"type": "Input.Text",
"id": "commentText",
"isMultiLine": "true",
"placeholder": "Enter Comment"
}
],
"actions": [
{
"type": "Action.Submit",
"title": "Post",
"data": {
"task": "replyToComment"
}
}
]
}
当我从消息扩展中选择卡片并将其发送给另一个用户或频道时,所有这些都对我有用。我可以打开任务模块(弹出窗口)并将生成的表单提交回我的机器人。
如果我的同事向我发送了同一张卡片并且我单击了此任务模块按钮,则团队会因覆盖和线条而崩溃。我在网络上检查了团队,并在开发人员工具中看到了以下关于应用安装同意元素的内容,这似乎是一些提示其他用户(在本例中为我)安装应用的对话框。
谁能帮助我了解我可能缺少的东西。非常感谢任何帮助。
解决方案
回答我自己的问题。
如果我们在团队中侧载应用程序并从中生成内容以发送给其他人、组或频道,则会出现此问题 例如 - 从消息扩展中选择一个项目并将其发送给同事
当另一个人试图点击卡片上的按钮时,团队会提示另一个人将应用程序安装到他们的团队中。由于应用程序是旁加载的,团队无法找到在组织目录或全局目录中发布的应用程序,因此它显示一个空模式。
我在我们的组织目录中发布了我的应用程序,这个问题就消失了。我的同事在单击按钮时被提示安装该应用程序。
推荐阅读
- python - 设计 django Relation 以便以后轻松保存数据
- reactjs - React Typescript:将字符串数组呈现为无序列表
- python-3.x - BeautifulSoup 无法读取 wiki 页面
- sql - 用子查询求和减去计数抛出错误
- php - 我想要“每当我点击饼图切片时,它应该将值传递到另一个页面”。我如何在 laravel 5.5 中使用 Lavacharts 来实现这一点?
- java - Java 错误中的 gas * price + value 资金不足
- javascript - 这个javascript返回语句是什么意思?
- xcode - Xcode scn 文件不显示
- sql - Liquibase 与 PostgreSQL:它不创建函数
- html - *ngIf... 当数据为空时,为 mat-checkbox 设置 disabled=true