我希望我的 slack bot 编辑原始消息(基本上是修改它)。要触发 bot,我想使用表情符号。
所以流程是用户发布消息 -> 如果用户想使用机器人按下反应 -> 一旦机器人被触发,使用机器人的自定义内容修改或编辑消息。
对于触发器,我认为这是我需要的 API https://api.slack.com/methods/reactions.get 但这甚至可能吗?
答案 0 :(得分:1)
您提到的 api 用于获取与消息/帖子相关的反应。
您真正需要的是在消息中添加反应时要捕获的事件。
这里是解决目的的api: https://api.slack.com/events/reaction_added
您现在可以根据事件负载实现业务逻辑。
示例有效负载:
{
"type": "reaction_added",
"user": "U024BE7LH",
"reaction": "thumbsup",
"item_user": "U0G9QF9C6",
"item": {
"type": "message",
"channel": "C0G9QF9GZ",
"ts": "1360782400.498405"
},
"event_ts": "1360782804.083113"
}
要更新消息,您可以使用 chat.update
api:
https://api.slack.com/methods/chat.update
您需要:
token:具有所需 chat:write
范围的“bot token”或“user token”
channel &时间戳详细信息:您可以在“reaction_ added”有效载荷的有效载荷中找到。
注意:
您不能编辑其他用户发送的消息,除非您拥有“用户令牌”。 https://api.slack.com/authentication/token-types#user