EASYBOT GUIDE
Discord Privileged Gateway Intentsの有効化とエラー対処
Used disallowed intentsやメンバー取得失敗を、BotコードとDiscord Developer PortalのIntent設定から解決する方法を説明します。
Gateway Intentsは、Discord Botが受け取るイベントの種類を選ぶ設定です。一部は特権Intentで、Developer Portal側の許可とコード側の指定の両方が必要です。
必要なIntentを選ぶ
Botの機能に必要なイベントだけ有効にします。メッセージ本文やメンバー一覧を使わないBotで、特権Intentを何となく有効にする必要はありません。
- 使用するイベントと機能を対応させる
- 不要な特権Intentを要求しない
- Discordの現在のIntent要件を公式資料で確認する
Portalとコードを一致させる
Portalで無効のIntentをコードが要求すると接続時に拒否されます。反対にPortalで許可されていても、コード側が指定しなければ対象イベントは届きません。
- Developer PortalのBot設定を確認する
- ライブラリのIntent指定を確認する
- 設定を保存してBotを再起動する
エラーを切り分ける
Used disallowed intentsはGateway接続時の設定問題を示します。イベントが届かない場合は、接続後のコード、対象ギルド、キャッシュや権限も確認します。
- 接続ログの最初のエラーを読む
- Portal変更後にプロセスを再接続する
- 必要ならテストBotで一つずつIntentを有効化する
プライバシーと運用
ユーザー情報へアクセスする範囲を必要最小限にし、保存するデータの目的と期間を決めます。Intentを許可されたことは、あらゆるデータ保存への同意を意味しません。
- 必要なデータだけ処理する
- 個人情報の保存期間を定める
- Botの説明とプライバシー案内を更新する