我希望能够在用户安装应用程序时向他们发送直接消息,但我似乎无法找到一种方法来告诉他们是谁。查看 Slack 的 OAuth 文档,似乎根本没有包含此信息,只有团队的名称及其 ID。关于如何获得个人用户的任何想法?
以下是相关文档:https ://api.slack.com/docs/oauth 。
谢谢!
你可以用你的access token
. 安装您的应用程序的user_id
用户将在响应中:
{"ok": true,
"url": "https:\/\/myteam.slack.com\/",
"team": "My Team",
"user": "cal",
"team_id": "T12345",
"user_id": "U12345"}
然后,您可以使用chat.postMessage函数user_id
中的通道参数向该用户发送消息。
这将通过 Slackbot 或作为应用程序一部分的机器人用户向用户发送直接消息。
编辑:这仅适用于 xoxp 令牌
当您使用oauth.v2.access API 调用交换临时代码以访问令牌时,响应 json 中有authed_user
字段。此字段包含安装应用程序的用户的用户 ID。使用此用户 ID,您可以向用户打开直接消息通道并在其中发送消息。