Skip to content
rds9teamPublic

About

認証bot

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

14 Commits

Folders and files

Repository files navigation

Discord 認証 Bot (auth)

Python (discord.py) で動作する、高機能で安全な Discord サーバー向け認証 Bot です。

導入

https://discord.com/oauth2/authorize?client_id=1516079643709411378 こちらのリンクから導入もできます

主な機能

  1. エフェメラル対話型認証パネル設定 (/set-panel)
    • コマンドを実行した管理者にのみ表示されるエフェメラルEmbed画面から、ロール選択・ログ先・認証方式・タイトル・色・規約文を直感的に設定
    • 「認証パネルを設置」ボタンを押すだけで指定チャンネルへパネルを即座にデプロイ
  2. サーバー別ログチャンネル管理 (/set-log-channel)
    • サーバーごとにログ送信先をコマンドやセットアップ画面から自由に設定・解除
  3. 多彩な認証方式
    • ワンクリック認証: ボタンを押すだけで即座にロールを付与
    • 計算問題認証: スパムBot対策としてランダムな足し算の答えを入力
    • CAPTCHA認証: ランダムな4桁の確認コード入力
    • 合言葉認証: ルール等に記載されたキーワードを入力
    • 規約同意認証: パネルに表示された利用規約を確認し「同意する」と入力
  4. 未認証ロールの自動剥奪
    • 認証完了時に、指定した未認証ロールを自動で削除
  5. ブラックリストロール制限 (要注意ロール対策)
    • 特定のロール(要注意・制限ロール等)が付与されているユーザーの認証を自動ブロック
    • ブロック発生時や入力ミス発生時はログチャンネルへ警告・失敗通知
  6. クールダウン・連打防止 (Rate Limit)
    • 連続でのボタン連打やDoS行為を自動で抑制(3秒の待機時間)
  7. 認証統計・情報コマンド
    • /stats [role]: サーバー内の総人数・認証人数・未認証人数・認証率やBotの稼働時間・Pingを表示(ロール別集計対応)
    • /ping: WebSocket Ping を測定
    • /help: コマンドと機能の詳しいヘルプを表示
  8. ウェルカムDM案内
    • 認証完了時にユーザーへ自動で案内DMを送信
  9. ステータス自動ローテーション
    • 10秒ごとに「〇〇人 | 〇〇鯖」「ping 〇〇ms」「Powered by rds9」を切り替え表示

セットアップ手順

1. 依存関係のインストール

pip install -r requirements.txt

2. 環境変数の設定

.env.example をコピーして .env を作成し、必要な値を設定します。 (特定サーバーに依存する初期ロールIDなどは不要で、すべてBotのコマンドからサーバーごとに設定できます)

DISCORD_TOKEN=your_bot_token_here
CLIENT_ID=your_client_id_here

3. Botの起動

python main.py

コマンド一覧

コマンド 権限 説明
/set-panel 管理者限定 エフェメラル設定画面を開き、付与ロール・ログ先・方式などをEmbed上で対話設定してパネルを設置
/set-log-channel 管理者限定 サーバー個別の認証ログ通知チャンネルを設定・解除
/stats 全員 サーバーのメンバー数やBot稼働状況を表示(ロール指定時は認証集計)
/ping 全員 Botの応答速度(Ping)を測定
/help 全員 コマンドと使い方のヘルプを表示

ライセンス

MIT License

About

認証bot

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages