【发布时间】:2021-09-13 08:09:52
【问题描述】:
我希望我的 slack 机器人编辑原始消息(基本上是修改它)。要触发机器人,我想使用表情符号。
所以流程将是用户发布消息 -> 如果用户想要使用机器人按下反应 -> 一旦触发机器人,使用机器人的自定义内容修改或编辑消息。
对于触发器,我认为这是我需要的 API https://api.slack.com/methods/reactions.get,但这可能吗?
【问题讨论】:
我希望我的 slack 机器人编辑原始消息(基本上是修改它)。要触发机器人,我想使用表情符号。
所以流程将是用户发布消息 -> 如果用户想要使用机器人按下反应 -> 一旦触发机器人,使用机器人的自定义内容修改或编辑消息。
对于触发器,我认为这是我需要的 API https://api.slack.com/methods/reactions.get,但这可能吗?
【问题讨论】:
您提到的 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.updateapi:
https://api.slack.com/methods/chat.update
您需要:
token:'bot token' 或 'user token' 需要 chat:write 范围
频道和时间戳 详细信息:您可以在“reaction_added”有效负载的有效负载中找到。
注意:
除非您拥有“用户令牌”,否则您无法编辑其他用户发送的消息。 https://api.slack.com/authentication/token-types#user
【讨论】:
want my slack bot to edit the original message (basically modify it) 部分的内容是什么,因为在事件捕获后我需要通过机器人编辑用户的原始消息