サーバーを守る、スパムフィルターBot。
キーワード・ユーザーIDで自動削除。管理者コマンドで即設定。
Botを追加
Botについて
スパムフィルターBotは、Exiサーバー向けに開発された自動メッセージ削除Botです。
登録したキーワードを含むメッセージや、特定ユーザー・BotのIDが一致するメッセージを
リアルタイムで検知して自動削除します。
設定はDiscordのスラッシュコマンドから行え、config.jsonに永続保存されます。
主な機能
🔍 キーワードフィルタリング
登録したキーワードを含むメッセージを大文字・小文字を無視して検知し、自動削除します。
🚫 ユーザーID指定ブロック
特定ユーザーまたはBotのIDを登録すると、そのユーザーのメッセージをすべて削除します。
📢 チャンネル絞り込み
監視チャンネルを指定できます。未設定の場合はサーバー全チャンネルが対象です。
📋 削除ログ送信
指定したチャンネルに、削除理由・ユーザー情報を含む詳細なログを自動送信します。
⚡ 一括スパム削除
過去メッセージ(最大500件)を遡ってスパムを一括削除する /spam_purge を搭載しています。
🔀 ON/OFF トグル
フィルター機能をコマンド一つで即時に有効・無効を切り替えられます。
削除判定フロー
メッセージ受信時、以下の順に判定を行います。
- フィルターが 無効(enabled: false) なら処理終了
- Botが送信したメッセージなら処理終了
- 監視チャンネルが設定されていて、対象外チャンネルなら処理終了
- 送信者IDが target_user_ids に一致 → 削除
- メッセージ本文にキーワードが一致 → 削除
- 削除が発生した場合、ログチャンネルに通知
スラッシュコマンド一覧
すべてのコマンドは 管理者 権限が必要です。
🛡️ スパムフィルター
| コマンド | 種別 | 権限 | 説明 |
|---|---|---|---|
/spam_status |
/ スラッシュ | 管理者 | 現在のフィルター設定(キーワード・対象ユーザー・チャンネルなど)をすべて表示します。 |
/spam_add_keyword |
/ スラッシュ | 管理者 | 削除対象のキーワードを追加します。 |
/spam_remove_keyword |
/ スラッシュ | 管理者 | 登録済みキーワードを削除します。 |
/spam_add_user |
/ スラッシュ | 管理者 | 削除対象ユーザー/BotのDiscord IDを追加します。 |
/spam_remove_user |
/ スラッシュ | 管理者 | ユーザーIDの削除対象指定を解除します。 |
/spam_set_channel |
/ スラッシュ | 管理者 | 監視対象チャンネルを追加します。未設定の場合は全チャンネルが対象です。 |
/spam_unset_channel |
/ スラッシュ | 管理者 | 監視対象チャンネルから除外します。 |
/spam_set_log |
/ スラッシュ | 管理者 | 削除ログを送信するチャンネルを設定します。 |
/spam_toggle |
/ スラッシュ | 管理者 | スパムフィルターをON/OFFに切り替えます。 |
/spam_purge |
/ スラッシュ | 管理者 | このチャンネルの過去メッセージ(最大500件)からスパムを一括削除します。 |
/spam_purge_all |
/ スラッシュ | 管理者 | 全テキストチャンネルの過去メッセージ(各最大200件)からスパムを一括削除します。 |
/cross_channel_toggle |
/ スラッシュ | 管理者 | クロスチャンネルスパム検知をON/OFFに切り替えます。5分以内に複数チャンネルへ同じ内容を投稿したユーザーの直近5分のメッセージを全チャンネルから削除します。 |
/everyone_toggle |
/ スラッシュ | 管理者 | @everyoneスパム検知をON/OFFに切り替えます。 |
/everyone_set_timeout |
/ スラッシュ | 管理者 | @everyoneスパム検知時のタイムアウト時間と検知ウィンドウを設定します。タイムアウト時間は候補から選択できます。 |
