首页 > 解决方案 > 直接点击后建议的操作消失

问题描述

我已经使用节点 js 配置了 Microsoft bot 框架 v4 的直接通道。我在欢迎信息中建议了操作。当我单击任何建议的操作时,它会在 UI 中消失,但它会收到对机器人的响应。

var msg =  MessageFactory.suggestedActions(
        CardFactory.actions([
                        {
                            type: 'messageBack',
                            title: 'xyz',
                            value: 'xyzDialog'
                        }]),'please select choice');

  await    context.sendActivity(msg);

您能否指导我如何使它显示为最终用户单击了建议的操作?

提前致谢。

标签: botframeworkdirect-line-botframework

解决方案


根据此处的文档:

与显示在丰富卡片中的按钮不同(即使在被点击后用户仍然可以看到和访问),显示在建议操作窗格中的按钮将在用户做出选择后消失。这可以防止用户在对话中点击过时的按钮并简化机器人开发(因为您不需要考虑这种情况)。

因此,简而言之,您无法通过建议的操作达到您想要的结果。你有几个选择:

  1. 处理您的机器人代码中的建议操作并将回复发送回用户,感谢他们的输入(并可能将他们的输入重复给他们“感谢您选择 X”)。
  2. 根据这个过时的 示例,使用 CardAction 代替。
  3. 使用自适应卡(新方式),这里有一个示例以及详细指南

最后两种方法的缺点是用户将能够重复单击这些按钮,因此您的机器人必须在后端处理多个提交。


推荐阅读