【问题标题】:Slash command response send two different responses, one to the user and another to channel斜杠命令响应发送两个不同的响应,一个给用户,另一个给通道
【发布时间】:2019-01-25 12:15:02
【问题描述】:

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

所以现在我的用例是发送一个包含两条文本消息的响应,其中一个是临时类型,另一个是 in_channel 的消息

request_type - in_channel 
and
request_type - ephemeral

类似的东西

[
    {
      "response_type": "in_channel",
      "text": "This message will be shown to the entire channel"
    },
    {
      "response_type": "ephemeral",
      "text": "only shown to the user who initiates slash command"
    }
]

我怎样才能实现这种行为?

【问题讨论】:

    标签: slack slack-api slack-commands


    【解决方案1】:

    对于 Slash 命令请求,您只能发送一个直接响应,并且只能是 in_channel 或 ephemeral。所以建议的语法不起作用。

    但是,为了满足您的要求,您可以简单地在回复之外发布一条消息,chat.postMessage 用于 in_channel 或 chat.postEphermal 用于临时。您将在 slask 响应请求中获得通道 ID,因此您知道将消息发送到哪里。

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

    • 您的应用需要额外的范围来发布消息(例如 chat.write.bot)
    • 这种方法可以在公共渠道中正常工作,但不适用于任何私人甚至直接消息渠道,因为您的应用可能无法访问该渠道 渠道。为了减轻影响,我建议强制用户邀请您的 bot 用户访问任何私人频道,从而授予您的应用访问权限。

    【讨论】:

      猜你喜欢
      • 2019-07-10
      • 2021-04-04
      • 1970-01-01
      • 2021-07-17
      • 1970-01-01
      • 2022-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多