Slack 机器人可以与另一个机器人交互并在频道中触发它的某些功能吗?
Can a Slack bot interact with another bot and trigger some functions of it in a channel?
我构建了一个 Slack 机器人并试图让我的机器人与频道中的另一个机器人交互,但它似乎不起作用。
例如,我想使用 Polly(一个 Slack 机器人)的投票功能。
像我这样的普通用户发送 /polly "Which is better?" "Tacos" "Pizza" 消息,Polly 将在频道中创建一个 Slack 投票。但是当我让我的机器人在同一个频道发送相同的消息时(我使用 python-slackclient 和 chat.postMessage 方法),消息就像一个简单的文本,换句话说,它没有触发波莉.
那么,在一个频道中,Slack 机器人如何与另一个机器人交互并触发它的某些功能?
有人做过这样的事吗?
更新
https://github.com/ErikKalkoken/slackApiDoc/blob/master/chat.command.md
我尝试了这个方法,但遇到了另一个问题...
错误信息是
{'error': 'missing_scope',
'needed': 'post',
'ok': False,
'provided': 'identify,bot:basic'}
Oauth 令牌需要 "post" 范围,但 官方文档显示 "post" 范围已弃用 。如何使我的令牌具有 "post" 范围?
我曾尝试让两个机器人进行交互,但没有成功。 Slack 以某种方式识别消息的来源,如果消息是由机器人或应用程序发送的,它就无法响应。我什至尝试 post 作为用户通过 slack API 发送消息,但没有成功。
但是,机器人可以使用 chat.command
方法来调用斜杠命令。
可以在此处找到非官方文档:
https://github.com/ErikKalkoken/slackApiDoc/blob/master/chat.command.md
你是正确的,未记录的 chat.command
需要 post
范围才能工作,这在标准 OAuth 流程中不可用(例如,你不能选择它作为 Slack 应用程序配置中的范围网站。)
据我所知,目前唯一可行的解决方案是使用 legacy 令牌。
另见 回答。
我构建了一个 Slack 机器人并试图让我的机器人与频道中的另一个机器人交互,但它似乎不起作用。
例如,我想使用 Polly(一个 Slack 机器人)的投票功能。
像我这样的普通用户发送 /polly "Which is better?" "Tacos" "Pizza" 消息,Polly 将在频道中创建一个 Slack 投票。但是当我让我的机器人在同一个频道发送相同的消息时(我使用 python-slackclient 和 chat.postMessage 方法),消息就像一个简单的文本,换句话说,它没有触发波莉.
那么,在一个频道中,Slack 机器人如何与另一个机器人交互并触发它的某些功能? 有人做过这样的事吗?
更新
https://github.com/ErikKalkoken/slackApiDoc/blob/master/chat.command.md
我尝试了这个方法,但遇到了另一个问题...
错误信息是
{'error': 'missing_scope',
'needed': 'post',
'ok': False,
'provided': 'identify,bot:basic'}
Oauth 令牌需要 "post" 范围,但 官方文档显示 "post" 范围已弃用 。如何使我的令牌具有 "post" 范围?
我曾尝试让两个机器人进行交互,但没有成功。 Slack 以某种方式识别消息的来源,如果消息是由机器人或应用程序发送的,它就无法响应。我什至尝试 post 作为用户通过 slack API 发送消息,但没有成功。
但是,机器人可以使用 chat.command
方法来调用斜杠命令。
可以在此处找到非官方文档:
https://github.com/ErikKalkoken/slackApiDoc/blob/master/chat.command.md
你是正确的,未记录的 chat.command
需要 post
范围才能工作,这在标准 OAuth 流程中不可用(例如,你不能选择它作为 Slack 应用程序配置中的范围网站。)
据我所知,目前唯一可行的解决方案是使用 legacy 令牌。
另见