我有一个应用程序,我需要在slack中创建多方im组,然后为用户提供一个URL来访问该组。
首先,给定客户组织A
中的用户A_org
使用松弛Oauth2方法注册其应用程序的许可证。
稍后,用户B
(不是最初注册应用程序/创建身份验证令牌的用户)需要访问多方组消息传递通道。
目前,我正在创建该组:
const response = await callSlackApiMethod('mpim.open', {
token: access_token, // <-- access token of authorizing user (user A)
users: slackIds.join(',') // <-- group of users including B, not including A
});
其中callSlackApiMethod
只是GET
来自松弛的REST方法,并提供了参数。
问题:
response
中返回的组始终包含用户A
的slackId。有没有办法为用户B(和其他用户)创建一个mpim频道,不包括用户A,而且不必分别授权每个用户?
提前致谢!
答案 0 :(得分:1)
不,mpim.open无法做到这一点。使用用户A的令牌创建mpim频道与用户A邀请其他用户进入群组对话相同。
但您可以使用groups.create创建新的私人频道,并邀请用户B加入。它最初还将包括用户A,但用户A可以离开私人频道,以便只剩下用户B(以及任何其他受邀用户)。
请注意,通过将私人频道留给用户A,您可以在脚本中放松对它的控制。您将无法以任何方式重新输入或管理它。我一直在使用的解决方法是拥有一个管理员用户帐户(例如slackadmin),该帐户可以保留在私人频道中,而不会显示为“间谍用户”。