【问题标题】:Slack slash command: Respond as user, not appSlack 斜杠命令:作为用户而不是应用程序响应
【发布时间】:2020-11-02 19:07:14
【问题描述】:

发送对 Slack 斜杠命令的响应时,我想在启动 slach 命令的用户下发送。

我创建了一个带有斜杠命令的 Slack 应用程序。它调用我的 Flask 网络服务,我使用“response_url”网络挂钩将一些内容写回频道。频道中的响应由我的应用程序给出。这按预期工作。但我希望响应显示为用户已给出。

giphy 的 Slack 插件就是一个例子。如果我调用它,我会收到一条临时消息来选择我想要的 gif。但随后它以 my 的名义发布在频道中。

所以我有两个问题:

  1. API 调用如何以特定用户的身份响应斜杠命令?
  2. 我的应用需要哪些权限才能允许应用的此类行为?

Slack API 文档很全面,但是很多研究都没有产生我想要的结果。

谢谢!

【问题讨论】:

    标签: slack slack-api


    【解决方案1】:

    当您使用response_url 时,您无法自定义您的用户名或图标。为此,您需要使用chat.postMessage API 方法。现在有两种方法可以在这里实现您所需要的:

    1. 使用user token:这使您可以代表用户执行操作。不过,您需要从您想要发布消息的每个用户那里获得授权。

    2. 使用您的机器人令牌请求chat:write.customize 范围:您可以发布带有icon_urlusername 参数的消息,您可以分别为这两个参数提供用户的图标和名称。这要容易得多,因为这只需要一次性授权。

    更多信息在official documentation

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-07-17
      • 1970-01-01
      • 2017-02-11
      • 1970-01-01
      • 2019-07-10
      • 1970-01-01
      相关资源
      最近更新 更多