首页 > 解决方案 > 在频道中最后一条消息的 4 个月后归档松弛频道

问题描述

我正在寻找一种在频道中最后一个消息 4 个月后存档松弛频道的方法。

我查看了商店中的应用程序和 slack 的功能。我的要求没有解决方案。我需要自己制作,但不确定是否需要使用 api 制作机器人或应用程序。

这个想法是当频道名称具有扩展名为 proj- 时,该频道中的最后一个 msg 是 4 个月大。此频道需要存档。

标签: slack-api

解决方案


python中可能的示例

这不是官方的 Slack API 示例应用程序或任何东西,但它与您所描述的非常相似 - Destalinator

编写一个基本脚本来实现它

在高层次上,您想要做的事情是非常可能的,不需要太复杂。

获取频道列表

您要做的是在您的服务器上安排一个 ping 的预定作业conversations.list。该端点将返回工作区中的一组通道。您可以排除已存档的频道以使列表更易于管理。获得该列表后,我建议删除created不到 4 个月的频道,再次精简列表。

获取最后一条消息的时间

获得精简的频道列表后,您将需要对其进行迭代,conversations.history在每个频道上执行 ping 操作,并将oldest参数设置为您喜欢的时间段,在本例中为 4 个月。

如果给定频道的响应包含一个空messages数组,则该频道自oldest. 将此频道 ID 存储在某处以供以后使用。

遍历所有可能的频道后,您应该有一个较小的数组,现在只包含过去 4 个月内没有内容的频道 ID。

归档“陈旧”频道

剩下的唯一步骤是归档它们,我们将使用conversations.archive端点来完成。这里唯一的参数是 atoken和 a channel。因此,遍历您的频道以存档数组,为每个条目点击此端点。

有了这一切,你就完成了!


推荐阅读