最近,Slack 增加了让机器人做比以前更多的事情的能力。这很棒!。多年来,我已经能够毫无问题地将许多经典风格的机器人连接到 RTM API。昨天我尝试创建一个新风格的机器人并将其连接到 RTM API 以尝试一些新功能,但无法做到。
在创建新样式机器人期间,在为您的机器人提供各种权限后,您会收到类似以下的消息;
我遇到的问题是,使用 RTM (Python) API,通常不直接访问任何 OAuth 方法。从表面上看,似乎没有一种方法可以向 RTM API 提供 URL 来验证您的机器人。根据官方文档,连接机器人的方式本质上是这样的;
slack_token = 'xoxb-123456-......'
rtm_client = RTMClient(token=slack_token)
rtm_client.start()
如果我提供经典风格机器人的身份验证 token ,一切都会按预期连接。使用此方法对新样式机器人进行身份验证的结果如下:
slack.errors.SlackApiError: The request to the Slack API failed.
The server responded with: {'ok': False, 'error': 'not_allowed_token_type'}
这似乎只是新型机器人的问题。同样,通过 RTM API,您通常不会直接访问任何 OAuth 方法,因此我不确定所提供的 URL 可能会插入到何处。
RTMClient 对象的唯一看起来可能有效的参数是“base_url”参数。我曾尝试为该参数提供所提供的 URL,但这并没有让我通过身份验证。
The server responded with: {}
如何为 RTM API 提供新的作用域?
最佳答案
万一其他人来这里问同样的问题。经过更多阅读,我在此页面上发现了一行:https://api.slack.com/authentication/basics
无赖,哦,好吧。
关于python - 如何将新风格的机器人连接到 RTM API (Python),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59429291/