对机器人 DM 的 Slack Modal 提交响应不适用于不同的工作空间

Slack Modal submission response to bot's DM not working on different workspace

我正在使用 slack 机器人(范围 chat:write、命令和 users:read),启动机器人后,会打开一个模式,并且在提交时,应将响应发送到该机器人的 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目录,因为至少需要在两个工作区添加bot

我明白了这个问题,我正在将特定工作区的机器人令牌传递到另一个工作区。解决方案是在用户将机器人添加到工作区时存储 access_token,并在发布消息时发送 access_token。感谢提示。@mothirajha