如何执行 Slack 斜杠命令将某些内容发送回工作区?

How can I implement a Slack slash command to send something back to the workspace?

我不想将我的服务器暴露给 Internet,但我有一个正在与之交互的 Slack。 如何使用斜杠命令的请求 URL 向 Slack 应用程序发送信号?我希望用户使用斜杠命令,以便 app/bot 以某种方式识别并写入私人频道或其他内容。我的服务器通过 app/bot 与 Slack 交互,因此我可以通过检查该专用频道来读取该输入。有什么想法吗?

如果不向 Internet 公开端点,则不能使用斜杠命令。

不需要将您的服务器暴露在 Internet 上的唯一替代方法是使用 Real Time Messaging API。它使用 Websockets 而不是 HTTP。您不能使用斜杠命令或消息按钮等任何其他交互功能,但可以使用聊天。所以例如您的机器人可以在频道上收听 !bot command 并做出回应。

许多聊天机器人都在使用 RTM API,并且也有很多库。

从技术上讲,您还可以通过 conversations.history 读取和解析频道的消息历史记录,但由于 API 的速率限制,我会让您的机器人反应非常慢。