不和でDM履歴を削​​除する方法

Discordがリリースされたとき、それはインスタントメッセージングとグループチャット(messaging and group chats)の概念を永遠に変えました。それが存在する10年前に、 (A decade)AOLインスタントメッセンジャー(AOL Instant Messenger)MSNメッセンジャー(MSN Messenger)、または新しいSkype(Skype—two)を使用していることに気付いたかもしれません。そのうちの2つはもう存在せず、後者はDiscordの人気に大きく苦しんでいます。

Discordの前は、メッセージングサービスが(messaging service)会話履歴(conversation history)をクラウドに永続的に保存することがどのようなものかを知りませんでした。実行中のログをAIMまたはMSN(AIM or MSN)にローカルに保存するには、ある種のサードパーティプラグインが必要です。Skypeでは(Skype)、テキストログがわずか30日間クラウドに保持されるようになりました。

一部の人にとっては、メッセージ履歴を永遠(message history forever)に保持することは素晴らしいことです。他の人にとっては、それは悪夢です。2017年1月、 (January)Discordは、ブログ投稿に(blog post)数十億のメッセージを保存する方法(how they’re able to store billions of messages)について概説しました。このポリシーはすぐには変更されないようです。Discordは、ユーザーが(Discord)Discordで(Discord)DM履歴(DM history)を一括削除する方法も提供していません。

では、何千ものダイレクトメッセージを送信し、それらを永久に存在させたくないと判断した場合はどうなるでしょうか。いくつかの解決策がありますが、どれも完璧ではありません。

ホットキーとの不和に関する不和DM履歴の削除(Deleting Discord DM History on Discord With Hotkeys)

Discordメッセージ(Discord message)を削除する最も直感的な方法は、 

  1. その上にカーソルを合わせると、右側のハンバーガーメニューアイコン(hamburger menu icon)が表示されます。
  2. アイコンをクリックします。
  3. [削除](Delete)を選択します。
  4. [削除](Delete)ボタンをクリックして削除を確認します。

ただし、これにはマウスを一貫して使用する必要があり、プロセスが大幅に遅くなります。したがって、この手順を模倣するキーボードコマンドのシーケンスについて知っておく必要があります。

シーケンスの内訳は次のとおりです。

  1. DiscordDMに入ります。
  2. (Up)を1回押して、最新のメッセージを選択します。
  3. もう一度(Up)を押すと、エディターがアクティブになります。
  4. Ctrl + Aを押して、フィールド内のすべてのテキストを選択します。
  5. テキストを削除するには、Backspaceキー(Backspace)を押します。
  6. Enterキー(Enter)を1回押して、編集を確認します。
  7. もう一度Enterキー(Enter)を押して、プロンプトで削除を確認します。

これは長くて疲れるプロセスのように見えますが、実際には、リズムに乗って、各メッセージを削除するのに1秒しかかかりません。複数の異なるボタンをクリックするためにカーソルを画面のさまざまな領域に絶えず移動するよりも、安定した手がはるかに少なくて済みます。

AutoHotkeyでDiscordDM履歴を削​​除する(Deleting Discord DM History With AutoHotkey)

マウスを使用せずにDMを削除できることがわかったので、簡単な(DMs)AutoHotkeyスクリプト(AutoHotkey script)を使用してプロセスを自動化する可能性が広がります。

過去にAutoHotkeyについて説明しました。たとえば、(AutoHotkey)最も便利な(most useful AutoHotkey scripts)5つのAutoHotkeyスクリプトに関するHelpDeskGeekの記事などです。アプリケーションのインストールは無料で、わずか1分で完了します。ただし、AutoHotkey(AutoHotkey)現在macOSで機能しないため、このオプションはWindowsユーザーのみが使用できます。(this option is only available to Windows users)

理想的には、AutoHotkeyスクリプトから次のものが必要になります。

  1. オンとオフを切り替える(toggle key)ためのトグルキー
  2. 各ステップの間に一時停止がある完全なキーボードシーケンス(keyboard sequence)
  3. 以前のメッセージを継続的にロードする方法

これが私が書いたスクリプト(example script)の例です:

F1 ::
    Toggle:=!Toggle
    loop {
        if not Toggle
            break
        if WinExist( "ahk_exe discord.exe")
            WinActivate
        SendInput {Up}
        Sleep 100
        SendInput {Up}
        Sleep 100
        SendInput ^ a
        Sleep 100
        SendInput {Backspace}
        Sleep 100
        SendInput { Enter}
        Sleep 100
        SendInput {Enter}
        Sleep 100
        SendInput {WheelUp}
        Sleep 200
    }
    return

このスクリプトは、F1キーをトグルとして使用して、(F1 key)メッセージの削除(message deletion)を有効または無効にします。これを機能させるには、スクリプトをオンに切り替える前に、アクティブなDMウィンドウ(DM window)にいる必要があります。各キーを押す間の一時停止(スリープ)は、処理(Sleep)能力(power don)の低いマシンが自分より先に進んでキーをスキップしないようにするためのものです。このスクリプトは実行されているが、動作がおかしい場合は、各スリープ(Sleep)の値を50ずつ増やしてみてください。

ただし、このスクリプトには注意が必要です。それは、Discord呼び出し(Discord call)メッセージに到達すると壊れてしまうということです。これらは次のようになります。

これらのメッセージの1つに到達すると、(Up)キーを押して前のメッセージを選択できなくなります。ただし、スクリプトの改善により、この回避策が可能になる場合があります。

ボットを使用したDiscordDM履歴の削除(Deleting Discord DM History With Bots)

まず、 Discordボットを使用して(Discord bot)DM履歴(DM history)を削​​除する方法については説明しませんが(we will not be providing instructions)、これが可能であることを読者に知らせます。

過去数年間で、Discordは、セルフボットの使用を思いとどまらせることから、その条件に違反し(violation of its terms)ていると完全にラベル付けすることへと移行しました。

Thanks for the heads up. We do not endorse the use of self-bots, and strongly recommend that users avoid using them.

— Discord (@discordapp) April 10, 2017

とはいえ、セルフボットを使用するとアカウントが終了するリスクがあるため、これを行うことをお勧めすることはできません。ただし、多くのユーザーは、公開、破壊的、または有害ではない目的でセルフボットを使用しても、Discordからの叱責につながることはないと報告しています。あなた自身の裁量で決定を下してください。

セルフボットは、DiscordAPIトークン(Discord API token)で実行されている単なるユーザーアカウントです。現在、Discordでは、(Discord)開発者ポータル(Developer Portal)を介してボットを追跡およびタグ付けする必要があります。セルフボットはこれを回避し、標準のユーザーアカウントに(user account access)APIリクエストを行うためのアクセスを提供し、幅広いタスクを自動化できるようにします。メッセージの削除もその1つです。

Discord APIは現在、Message Delete Bulkゲートウェイイベントを発生させる(Message Delete Bulk gateway)POSTリクエスト(POST request)をサポートしており、ボットが2週間未満のすべてのメッセージをすばやく削除できるようにします。古いメッセージは、個別にキューに入れて削除できます(レート制限(rate limit)で)。

Discordはメッセージを永久に保存することに満足しているように見えるので、メッセージを大量に削除してプライバシーを保護するための解決策を考え出すのは私たちの責任です。上記の3つのオプションはすべて少しお粗末ですが、 Discord(Discord)が解決策を提供するまではこれが最善です。



About the author

私は 10 年以上の経験と Android デバイスでの作業経験を持つコンピューター技術者です。また、過去 5 年間オフィスで働いており、Office 365 と MacOS の使い方を学びました。余暇には、屋外で音楽を演奏したり、映画を見たりするのを楽しんでいます。



Related posts