カテゴリー
Hack

Slackクライアントで相手が削除したメッセージを残すパッチスクリプト

SharonBrizinov/slack-anti-delete は、Slackクライアント上で相手が消したメッセージをこちら側では残したままにする、というツールです。

管理者が「メッセージは削除できない」設定としていない限り、Slack で送ったメッセージは編集したり削除したりすることができます。チャット相手のクライアントではそれらは無かったことにされタイムラインから消されます。

しかし、このツールを使うと相手が削除してもメッセージが残り続けると。

Slack社が作っているクライアントでどうやってそんな改造をするのかな、と思ってみたら、Slack の実行ファイルの場所を見つけ、クライアントが呼び出している JavaScript ファイルのキャッシュを探してそれらの動作を書き換える Python スクリプトという力技でした。

Windows も対応というので試してみたところ、確かに相手が消したはずのメッセージが残り続けます。

ツールを使って削除メッセージが消えないようにした様子を再現

作者がこのツールを作った動機は、友人の愚痴で以前の上司が品の無いメッセージを彼に送ってはすぐに消す、という行為を繰り返していて、その件について上司を詰めようとしたけれど(消されているから)証拠が何もなかった、という話を聞いたことによるものだそうです。

この件だけ見るとパワハラやセクハラの告発として使えそうだし、ツールの意義もあるかもです。Hacker News の議論では「相手が消したつもりのものを収集するのは可能であっても倫理的にどうなんだ」という意見も出てはいます。

まあ、Slack API で連携させたツールから全部を保存してるような場合もあるだろうし、消されたメッセージを残す方法はこれに限らないところではあるので、消さないといけないような発言はするな、というのはまず基本ではありますが。

間違って書かれたものが残ると困る場合として、パスワードを間違ってSlackに打ち込んだ場合があり、実際にPCにログインするつもりでPCのパスワードを同僚に送ってしまった場合など、消して済むなら消えてるのが望ましい場合もあるでしょう。ただ、どのみちこのパスワードは直ちに変更しなければいけないでしょうけど。

twitter などでも有名人が「まずい」と思ってかすぐに削除したはずのツイートがフォロワーのtwitterクライアントにはずっと残っていて、そのスクリーンショットが流出して批難される、なんていうことも起こりますよね。送り側の消して無くしたい気持ちと受け手側の消せば無かったことになるのかという気持ちの狭間で、送ったメッセージの削除をどうするかについて人々の意見はわかれるところなのかもしれません。

via Hacker News