BotFramework Composer新手求助:实现菜单选项触发文件发送功能
在BotFramework Composer中创建带文件发送功能的选项菜单
1. 构建选项菜单
在你的机器人对话中添加一个发送响应动作,使用自适应卡片实现带两个选项的交互菜单,代码示例如下:
{ "type": "AdaptiveCard", "$schema": "http://adaptivecards.io/schemas/adaptive-card.json", "version": "1.4", "body": [ { "type": "TextBlock", "text": "请选择操作", "size": "Large", "weight": "Bolder" } ], "actions": [ { "type": "Action.Submit", "title": "选项1:获取文件", "data": { "choice": "option1" } }, { "type": "Action.Submit", "title": "选项2:其他操作", "data": { "choice": "option2" } } ] }
卡片会渲染出两个按钮,点击后将对应的choice值传递给机器人。
2. 处理选项1的文件发送逻辑
添加条件分支动作,判断turn.activity.value.choice是否等于option1:
- 在分支的「是」路径下,添加发送响应动作,通过附件形式发送文件:
- 如果是本地文件,先将文件放到项目的
wwwroot文件夹下(如wwwroot/files/sample.pdf),响应内容写:这是你要的文件: [Attachment=file](/files/sample.pdf) - 如果是远程文件,使用JSON格式的响应:
{ "type": "message", "attachments": [ { "contentType": "application/pdf", "contentUrl": "https://your-domain.com/sample.pdf", "name": "示例文件.pdf" } ] }
- 如果是本地文件,先将文件放到项目的
3. 处理选项2的逻辑(可选)
在条件分支的「否」路径下,添加对应选项2的响应内容,比如:
你选择了选项2,可在此处扩展后续功能。
内容的提问来源于stack exchange,提问作者user13474012
相关产品推荐
相关产品推荐

