slack - 使用 Slack Workspace 令牌向用户打开直接消息通道?
问题描述
我正在为 Slack开发一个新的Workspace 应用程序。我有一个用例,我需要通过直接消息(或 IM)向 Slack 中的用户发送通知。由于chat.postMessage端点需要一个频道ID,我可以使用conversations.list获取现有的IM 频道并向他们发送通知。
但是,如果用户还没有从他们这边打开一个 IM 频道,我需要创建一个。似乎 Web API 端点(conversations.open或im.open)都不支持 Workspace 令牌。我不断收到not_allowed_token_type错误响应。我可以使用conversations.create创建一个公共频道,但这不是我需要的。
使用 Workspace 令牌时是否有其他方法可以向用户打开 IM 频道?
解决方案
我花了一段时间才弄清楚这一点。您需要将conversations.app_home:create范围添加/请求到您的权限。然后,您可以在chat.postMessage
调用中将用户 ID 指定为通道 arg。
推荐阅读
- python - 如何检查列表是否包含递增一的整数
- python - 如何使用用户输入来访问变量?
- kotlin - 无法访问“号码”:它在“CardParams”中是内部的
- javascript - Javascript函数间歇性工作
- java - 如何捕获 IllegalArgumentException 而不是终止?
- amazon-web-services - 将 ASP.NET Core 部署到 AWS Elastic Beanstalk,必须包含带有“.runtimeconfig.json”后缀错误的文件
- c# - 初始化字符串错误“该值在当前上下文中不可用”?
- java - 如何在 SWT 组合框中的项目上跟踪鼠标(热跟踪)
- c++ - 有没有办法使用 Xinput.h 查看 Xbox 按钮的状态?(使用 Xbox One 控制器)
- python - 根据脚本中的 while 循环条件使用 Python 发送电子邮件