首页 > 解决方案 > 如何使用斜杠命令向频道显示交互式消息,除了唤起它的人?

问题描述

我创建了一条交互式消息,该消息通过斜杠命令调用,该命令分发到整个频道。一切正常。但我终其一生都无法弄清楚如何将信息限制在整个频道上,而仅限于唤起它的人。现在消息会发送给每个人,包括调用它的人。如果您曾经使用过/poll,那么除了创建它的人之外,每个人都可以进行投票。

如果有人知道如何做到这一点,你能指出我正确的方向吗?

标签: slack-api

解决方案


来自斜杠命令的响应消息只能是以下两种情况之一:

  • 响应,只有发出ephemeral命令的用户才能看到
  • 回复,频道中的in_channel每个人都可以看到

没有功能或开关,因此响应消息对发布用户不可见。

但是,您可以构建一种解决方法并手动向每个用户发送除了发出命令的用户之外的临时消息。以下是其工作原理的概述:

此解决方法有一些重要的警告:

  • 您的应用程序需要许多额外的范围才能检索成员列表和发送消息(有关详细信息,请参阅这些 API 方法的文档)
  • 每秒大约 1 条消息的速率限制,因此根据组的大小,将这些消息发送给所有用户可能需要相当长的时间
  • 您的斜杠命令需要 3 秒响应。所以你需要实现一些花哨的多线程来发送所有这些消息。
  • 要在私人频道中进行这项工作,您必须与其他机器人用户合作

这将为您提供所需的结果,但有一些警告:


推荐阅读