首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在处理由node.js中的Slack中的提示生成的先前按钮的输入时发出的问题

在处理由node.js中的Slack中的提示生成的先前按钮的输入时发出的问题
EN

Stack Overflow用户
提问于 2018-08-14 05:40:17
回答 1查看 368关注 0票数 4

在同一聊天历史记录上存在多个按钮的情况下,用户可能会单击以前消息中的按钮,因此我无法识别输入来自哪个对话框/消息。

示例:

由于聊天机器人是为多渠道实现的,我避免使用Slack的交互消息,所以我的目标是在bot框架本身上处理这个问题。我尝试从会话对象以及event_source获取信息,但没有找到具体的解决方案。

EN

回答 1

Stack Overflow用户

发布于 2018-08-14 12:12:37

在按钮附件中使用callback_id中的唯一ID来区分不同的按钮集,例如提示#1和提示#2。一旦按下按钮,callback_id将包含在Slack发送给应用程序的请求中。

再加上Slack、通道ID、用户ID等请求的一般上下文信息,您的应用程序应该能够做出正确的反应。

按钮定义示例(来自正式文件):

代码语言:javascript
复制
{
    "text": "Would you like to play a game?",
    "attachments": [
        {
            "text": "Choose a game to play",
            "fallback": "You are unable to choose a game",
            "callback_id": "wopr_game",
            "color": "#3AA3E3",
            "attachment_type": "default",
            "actions": [
                {
                    "name": "game",
                    "text": "Chess",
                    "type": "button",
                    "value": "chess"
                },
                {
                    "name": "game",
                    "text": "Falken's Maze",
                    "type": "button",
                    "value": "maze"
                },
                {
                    "name": "game",
                    "text": "Thermonuclear War",
                    "style": "danger",
                    "type": "button",
                    "value": "war",
                    "confirm": {
                        "title": "Are you sure?",
                        "text": "Wouldn't you prefer a good game of chess?",
                        "ok_text": "Yes",
                        "dismiss_text": "No"
                    }
                }
            ]
        }
    ]
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51834384

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档