松弛机器人是否可以根据表情符号编辑消息?

时间:2021-07-01 08:45:32

标签: bots slack slack-api

我希望我的 slack bot 编辑原始消息(基本上是修改它)。要触发 bot,我想使用表情符号。

所以流程是用户发布消息 -> 如果用户想使用机器人按下反应 -> 一旦机器人被触发,使用机器人的自定义内容修改或编辑消息。

对于触发器,我认为这是我需要的 API https://api.slack.com/methods/reactions.get 但这甚至可能吗?

1 个答案:

答案 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