python - 删除没有管理员在场的直接消息
问题描述
我的问题很简单:使用python的slack客户端删除slack中的直接消息是正确的api(和方法)?
情况是:
- 用户 x 向聊天机器人发送直接消息。
- 安全机器人需要删除收到的消息。
- 为此测试的 api
chat.delete
与使用管理员帐户的 oauth 令牌的机器人一起使用。 chat.delete
接收作为参数的通道 id、消息的时间戳和 as_user 为 true。
问题是,slack 文档说要删除一条消息,管理员(机器人正在使用的令牌的所有者)需要已加入目标消息所在的通道。但当然,管理员不在用户和机器人之间的私人消息中。
因为 api 返回一个错误并说Channel not found。
如果管理员使用机器人测试命令,机器人可以删除消息,但这是因为管理员在私人对话中。
而且,如果您使用 bot 令牌而不是 admin oauth 令牌向chat.delete
api 请求,则抛出的错误是can't delete the message。我想这是因为要删除,您需要管理员令牌而不是机器人令牌。但是,实现这一目标的正确方法是什么?
解决方案
好吧,经过大量研究,结果是sadli。
直接使用api的slack机制,只有私信的所有者可以删除,而管理员不能阅读、修改或删除其他人的任何私信。
slack 所有者可以查看和查看其他用户的 qthect 消息,前提是拥有业务订阅,并且使用某些工具而不是让下载这些 pms,但不能修改或删除它。
谢谢大家!
推荐阅读
- sonarqube - Sonarqube 用于覆盖和覆盖
- javascript - 如果其他反应,你可以内联运行函数吗?
- sql-server - 标记满足两个条件且第三个值最低的所有行
- c++ - 从 gcc 4.6.3 移植到 5.4.0 时出现 basic_string.h 错误
- git - macOS Git 客户端可以使用存储在用户 Keychain 中的证书吗?
- docker - .dockerfile 扩展名是什么?
- html - 为什么对齐项目中心不起作用?
- javascript - Appium 错误处理不起作用
- rpm - Yocto 和使用签名 rpm 包存储库时的图像生成
- docker - Strapi 路由返回 404 未找到