如何解决为什么我无法使用 Slack Bolt 库阅读聊天消息?
我创建了一个 Slack 应用程序。我能够阅读和响应斜杠命令。但是,应用程序无法读取消息。当我发出斜杠命令时,我会看到这样的 Web 服务器事件:
127.0.0.1 - - [19/Jan/2021 13:11:07] "POST /slack/events HTTP/1.1" 200 -
但是,当在聊天中输入短信时,我的网络服务器上没有登录。我相信一条 slack 消息应该触发一个将数据发送到我的 API 的事件。注意:我使用的是事件 API。
我正在使用 Bolt for slack。
我假设此权限位于订阅机器人事件下的事件订阅设置中。在这种情况下,我只启用了 app_home_opened
。
channels:read
和 channels:history
有一个选项。它们都是粗体,无法添加。我认为这意味着它们默认启用。
这是一个响应 /list
但不响应 hello
的简化应用程序:
import os
from slack_bolt import App
# Initializes the app
app = App(
token=os.environ.get("SLACK_BOT_TOKEN"),signing_secret=os.environ.get("SLACK_SIGNING_SECRET")
)
# Respond to hello
@app.message("hello")
def say_hello(message,say):
say("hi")
# List all users
@app.command("/list")
def list_users(ack,say,command):
ack()
say("list users")
# Start your app
if __name__ == "__main__":
app.start(port=int(os.environ.get("PORT",3000)))
我相信 channels:history
是我查看聊天内容所需的权限。为什么我无法阅读和回复消息?
This is the documentation I'm trying to refer to for the events API.
解决方法
我在“应用程序设置”>“事件订阅”>“订阅机器人事件”下缺少 message.channels 权限。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。