Slack清除通道中的所有消息(〜8K)
我们目前有一个带有〜8K消息的Slack频道全部来自Jenkins集成。 是否有任何编程方式来删除该频道的所有消息? Web界面一次只能删除100条消息。
提前致谢!
我很快发现有人已经做了一个帮手: 松弛清洁剂 。
对我来说,这只是: slack-cleaner --token=<TOKEN> --message --channel jenkins
默认清理命令不起作用给我下面的错误:
$ slack-cleaner --token=<TOKEN> --message --channel <CHANNEL> Running slack-cleaner v0.2.4 Channel, direct message or private group not found
但下面的工作没有任何问题来清理机器人的消息
slack-cleaner --token <TOKEN> --message --group <CHANNEL> --bot --perform --rate 1
要么
slack-cleaner --token <TOKEN> --message --group <CHANNEL> --user "*" --perform --rate 1
清理所有的消息。
我使用1秒的速率限制,以避免HTTP 429 Too Many Requests
错误,因为松散的API速率限制。 在这两种情况下,频道名称都没有#
号
!! UPDATE!
作为@ niels-van-reijmersdal在评论中提到。
此function已被删除。 有关详情,请参阅以下主题:twitter.com/slackhq/status/467182697979588608?lang=en
!!结束更新!
这是SlackHQ在twitter上的一个很好的回答,它没有任何第三方的东西。 https://twitter.com/slackhq/status/467182697979588608?lang=en
您可以通过特定频道的存档( http://my.slack.com/archives )页面批量删除:在菜单中查找“删除消息”
我写了一个简单的节点脚本来删除公共和私人频道的信息。 你可以修改和使用它。
https://gist.github.com/firatkucuk/ee898bc919021da621689f5e47e7abac
首先修改你的令牌和频道ID。 然后运行脚本:
node ./delete-channel-messages
您可以从以下URL中了解您的令牌:
https://api.slack.com/custom-integrations/legacy-tokens
此外,通道ID被写入浏览器url栏中。
https://mycompany.slack.com/messages/MYCHANNELID/
脚本在一次运行中删除1000条消息。
对于任何不需要编程的人来说,这是一个快速的方法 :
(可能仅限于付费用户)
- 在networking或桌面应用程序中打开频道,然后单击齿轮(右上angular)。
- select“其他选项…”来调出档案菜单。
- select“设置频道留言保留策略”。
- 设置“保留所有消息的特定天数”。
- 所有比这个时间早的消息将被永久删除!
我通常把这个选项设置为“1天”,离开了一些上下文的频道,然后我回到上面的设置,并将其保留策略设置回“默认” ,继续从现在开始存储它们。
slack-cleaner --token=<TOKEN> --message --channel jenkins --user "*"