Slack:检索机器人用户在频道中的回复

问题描述 投票:0回答:1

我们有一个机器人用户,他在公共或私人 Slack 频道(我们自己的工作区中的私人机器人)中发布对某些消息的回复(在线程中)。但有时,我们想删除其中一些(或全部)消息。

通过手动检索每条消息的时间戳来手动完成很容易(“复制链接”通常可以解决问题)......但显然,这不会扩展到数百或数千条消息。因此,我们希望自动化检索和删除消息的过程。然而,

conversations.replies
的文档是这样说的:

机器人用户令牌可以使用此方法进行直接消息和多方直接消息对话,但缺乏足够的权限在公共和私人渠道上使用此方法

要将

conversations.replies
与公共或私有通道线程一起使用,请使用具有
channels:history
groups:history
范围的用户令牌。

所以让我说清楚:我们可以使用机器人用户发布回复公共或私人渠道中的消息......但是我们无法检索那些相同的消息???这不可能吗?肯定有办法...

我们没有一个用户可以访问所有渠道(IT/管理员除外)……只有机器人可以。因此使用用户令牌的解决方法对我们来说根本不起作用。

我们得到的输入将来自用户请求删除两者的线程(该线程中的所有机器人消息)。但如果我们甚至无法看到或检索这些消息,我们似乎就无处可去。 🤷u200d♂️

slack slack-api
1个回答
0
投票

我们最终基于 Slack 工作流程实施了一个完全不同的解决方案:

  • 工作流程由用户想要删除的消息上的表情符号反应触发(我们为此创建了一个新的
    :delete:
    表情符号)。
  • 然后我们向删除机器人消息 API 发送
    POST
    请求:
    • 反应消息所在的频道;
    • 反应消息(或线程回复)的时间戳;
    • 以及尝试删除消息的用户(因为并非所有用户都有权访问)。

然后我们的API可以轻松地使用上述信息来删除消息! 🎉

并且所有信息都可以轻松地直接从 Slack 工作流程发送(参见下面的屏幕截图)。 👌

screenshot of some variables that are available for use in Slack workflows

© www.soinside.com 2019 - 2024. All rights reserved.