【问题标题】:Slack Events API - Only able to subscribe to messages posted in public channels?Slack Events API - 只能订阅公共频道中发布的消息?
【发布时间】:2021-07-20 05:38:11
【问题描述】:

我刚刚将一个 Slack 应用程序集成到我的 Slack 工作区中,现在我尝试简单地订阅事件,以便我可以响应某些类型的消息。但是,我注意到来自 Slack 事件订阅过程的 POST 请求仅在 public 频道中发布消息时发生,而不是 private 频道中的消息。

bot 用户同时在公共和私人频道中,所以我不太确定为什么会发生这种情况。我在文档 (https://api.slack.com/apis/connections/events-api) 中看到的唯一内容是:

权限模型

Events API 利用了 Slack 现有的对象驱动 OAuth 范围 系统来控制对事件的访问。例如,如果您的应用有 通过files:read范围访问文件,可以选择 订阅任何或不订阅任何与文件相关的事件,例如 file_created 和 file_deleted。

您只会收到已授权您的应用的用户可以接收的事件 “看到”他们的工作区(也就是说,如果用户授权访问 私人频道历史记录,您只会看到私人活动 他们所属的频道,而不是所有私人频道 工作区)。

机器人用户也可以代表他们自己订阅事件。机器人 工作区安装机器人时请求的范围涵盖事件访问 事件 API 和实时消息 API。

但这仍然没有说明为什么它不订阅私人频道,只订阅公共频道。

【问题讨论】:

    标签: ruby slack


    【解决方案1】:

    假设您订阅了“消息”事件。

    要接收来自不同会话类型的“消息”事件,您需要不同的范围。

    https://api.slack.com/events/message

    所需范围:channels:history, groups:history, im:history, mpim:history

    私人频道所需的范围是groups:history

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-11-08
      • 2022-01-12
      • 1970-01-01
      • 2018-05-29
      • 2020-03-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多