Slash命令响应发送两个不同的响应,一个响应给用户,另一个响应给通道

时间:2019-01-25 12:15:02

标签: slack slack-api slack-commands

我创建了一个斜杠命令“ / myMeetings”,实际上是使用requestURL-https://slack.mycompany.com/slack

配置的

所以现在我的用例是发送一个包含两条文本消息的响应,一种是短暂的,另一种是in_channel的消息

throw new NotImplementedException ();

类似的东西

setTimeout(() => PerlinCircle('1', centerX , centerY, expension, 5, 0, 'rgba(0,0,0,'+alpha+')', true),3000);

我该如何实现这种行为?

1 个答案:

答案 0 :(得分:2)

您只能向Slash命令请求发送一个直接响应,并且只能是in_channelephemeral。因此建议的语法将不起作用。

但是,要实现您的要求,您只需在响应之外添加一条消息,其中{_3}}代表in_channel或chat.postMessage代表短暂的消息。您会在延迟响应请求中获得频道ID,因此您知道将消息发送到的位置。

请注意,此方法有一些特殊注意事项:

  • 您的应用将需要其他范围来发布消息(例如, chat.write.bot
  • 此方法在公共渠道上会很好,但在任何私人甚至直接消息渠道中都不会,因为您的应用可能无法访问该渠道 渠道。为了缓解这种情况,我建议您强迫用户邀请您 漫游器用户访问任何私有渠道,从而为您的应用提供访问权限。