我正在构造并发送邮件附件:
var zz = {
"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": "chess",
"text": "Chess",
"type": "button",
"value": "chess"
}
]
}
]
}
web.chat.postMessage(message.source.channel, '', zz);带按钮的消息在Slack上显示得很好,但当我点击一个按钮时,Slack对我的本地ngrok或express路由没有POST响应:
app.post('/slackaction', function(req, res)
而其他消息则可以正常发送到此路由。
在我点击一个按钮后,我从Slack中看到了这个错误:
"Oh no, something went wrong. Please try that again"Slack交互式消息request_url设置为:https://xxx.ngrok.io/slackaction
发布于 2016-09-03 03:59:12
感谢Taylor Singletary的评论为我指明了正确的方向。
测试令牌或自定义集成的机器人令牌可以发布交互式消息,但您需要一个应用程序来处理它们。
要修复它,你需要在你的应用程序中添加一个机器人:https://api.slack.com/apps,然后获取该机器人的访问令牌。
您可以在这里使用松弛按钮生成器:https://api.slack.com/docs/slack-button#来获取OAuth URL并将其粘贴到浏览器上。
然后,从您的应用程序处理OAuth流,存储访问令牌并将其与chat.postMessage一起使用。
然后,您应该会在单击消息按钮时收到POST请求。
https://stackoverflow.com/questions/39043664
复制相似问题