Slack webhook和直接/私人消息

我创建了一个基于websocket的Slack bot(下棋) . 为了返回电路板的图形表示(所以PNG而不是简单的ASCII),我必须使用webhook,因为普通消息不能有附件 .

与机器人的交互是通过直接消息,我有1个webhook . 如果我将wehook中的 Channels 设置为“@username”,则该消息将发布在该用户的“slackbot”DM中 . 但我希望它与该用户一起发布在我的机器人DM中 .

我怎么做?

或者有替代webhook的替代品吗?

谢谢 .

亨利

回答(1)

2 years ago

Direct messages between bot and user

如果您想使用特定于机器人的直接消息通道而不是通用slackbot通道,则需要打开直接消息通道,就像在任何两个用户之间一样 .

使用im.open(将为您提供通道ID)打开从机器人到用户的直接消息通道 . 然后将消息发送到该 Channels ID,例如与 chat.postMessage . Important :确保您使用机器人访问令牌而不是所有API调用的常规访问令牌 .

Method for sending messages

我建议使用API方法chat.postMessage而不是webhook . 它为您提供了比webhook更多的选项,当然也支持附件 .