【问题标题】:Execute slash command as slack bot作为 slack bot 执行斜杠命令
【发布时间】:2017-02-11 06:54:47
【问题描述】:

我正在编写一个简单的 slack 机器人,它应该在被调用时执行其他 slack 命令。一切都已启动并正在运行,但是这个机器人发出的松弛命令似乎没有被执行。

例如,我的机器人每小时发布一次/giphy kitten,并且消息就像在频道中一样(因此发送方似乎可以工作),但斜杠命令本身并未执行。如果我自己将相同的命令发布到同一个频道,它会按预期工作。不允许机器人执行斜杠命令吗?

【问题讨论】:

    标签: slack-api slack


    【解决方案1】:

    命令chat.command 需要权限范围post,只有旧令牌才有,Slack 应用程序不可用。

    我刚刚询问了 Slack 客户支持是否仍然可以通过编程方式发送斜杠命令并收到以下回复:

    恐怕不会。斜线命令只能由人工触发 来自客户端的消息。道歉。

    【讨论】:

      【解决方案2】:

      机器人可以使用未记录的 API 方法 chat.command 来调用斜杠命令。

      有关此 API 方法的非官方文档页面,请参阅 here

      here也回答了这个问题。

      【讨论】:

      • 我偶然发现了完全相同的问题,所以我做了一些编码,这里有一个工作示例:github.com/dazlious/slack-cmd-trigger 你可以用你的 api-token 触发任何带有命令的通道。跨度>
      • @erik-kalkoken 在尝试 chat.command 时,我收到了缺少范围错误。 chat.command 工作所需的范围是什么?我已经尝试过 chat:write:bot & chat:write:user
      • 您需要提供范围 post 才能使命令正常工作。但是,此范围在 Slack 应用程序配置窗口中似乎不可用,因此目前它仅适用于我认为的旧令牌。
      • @Avin 你不能。它仅适用于具有 post 范围的令牌,只有旧令牌可以使用,并且不适用于 Slack 应用程序。
      • 在没有遗留令牌的情况下还有什么方法可以实现这一点吗?不一定非要是 Slack 应用,我只是想定期在 Slack 中执行一些命令。
      猜你喜欢
      • 1970-01-01
      • 2017-01-04
      • 1970-01-01
      • 2021-03-09
      • 2019-07-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多