[Slack] ボットが投稿したメッセージを一括削除する

Slackボットが投稿した過去のメッセージを削除したいです。
slack-cleanerなるものがあるようなので、使ってみたいと思います。

導入方法

dockerイメージで導入できるようなので、そのように...

$ docker pull sgratzl/slack-cleaner

事前準備

Legacy Tokenを作成します。
ここからLegacy-Tokensを発行する必要があります。
いつ発行できなくなるか分からないので、ご注意。

実行方法

$ docker run -it --rm sgratzl/slack-cleaner
bash-4.4#

では、特定のメッセージを削除していきます。
今回は、botが投稿したメッセージを削除します。
以下のコマンドで削除されるメッセージの一覧を確認できます。

# slack-cleaner --token TOKEN --message --channel general --bot

問題なければ、以下のコマンドで実行します。
(--performをつけるだけ...)

slack-cleaner --token TOKEN --message --channel general --bot --perform

問題

以下のメッセージが出て、途中から処理が進みませんでした。

Failed to delete (429 Client Error: Too Many Requests for url

どうやら一気に削除コマンドを実行しすぎたようです。
時間はかかりますが、削除コマンドの実行間隔を指定する事ができるので、使ってみます。

slack-cleaner --token TOKEN --message --channel general --bot --perform --rate 1

(--rate の後に実行間隔を秒で指定できます)

まとめ

結構簡単に削除できましたが、結局画像などの方が容量を食っているので全体の容量はあまり変わりませんでした。
ともあれ、簡単に特定のメッセージを削除することができるので、そういった要求がある時にはおすすめです。
また、環境をdockerで導入できるのはかなり便利だと感じました。  

参考URL

0 件のコメント :

コメントを投稿