对机器人 DM 的 Slack 模态提交响应无法在不同的工作空间上工作
Posted
技术标签:
【中文标题】对机器人 DM 的 Slack 模态提交响应无法在不同的工作空间上工作【英文标题】:Slack Modal submission response to bot's DM not working on different workspace 【发布时间】:2021-05-08 02:05:06 【问题描述】:我正在使用 slack 机器人(范围聊天:写入、命令和用户:读取),启动机器人后,会打开一个模式,提交时,响应应该是发送到该机器人的 DM。我正在使用 chat.postMessage API 来实现这一点(类似于 https://api.slack.com/tutorials/message-action)。下面是示例代码,它在我创建机器人的工作区中工作,但是当我在不同的工作区上尝试相同以获取 "ok"=>false, "error"=>"channel_not_found"
response = JSON.parse(params[:payload])
user_id = response["user"]["id"]
args = channel: user_id ,text: "A message"
@options = body: args
HTTParty.post("https://slack.com/api/chat.postMessage",
:body => args.to_json,
:headers => 'Content-Type' => 'application/json', 'Authorization' => 'Bearer Bot User OAuth Access Token'
)
实现这一目标的最佳方法是什么?我无法将其提交到 app 目录,因为该机器人需要添加到至少两个工作区中。
【问题讨论】:
请检查您是否在不同的工作场所使用正确的机器人令牌。 【参考方案1】:我了解问题所在,我正在将特定工作区的机器人令牌传递给另一个工作区。解决方案是在用户将机器人添加到工作区时存储 access_token,并在发布消息时发送 access_token。感谢您的提示。@mothirajha
【讨论】:
以上是关于对机器人 DM 的 Slack 模态提交响应无法在不同的工作空间上工作的主要内容,如果未能解决你的问题,请参考以下文章
Discord.py 机器人:如何让我的不和谐机器人向我发送对用户在 DM 中使用的命令的响应,例如进行调查?
为什么在dialogflow中创建的丰富消息不会出现在经过Slack测试的机器人中?