目次
Levlix ボットの権限
Levlix にできるのは、Discord が許可していることだけです。ロールやチャンネルが権限を与えていない場合、その機能はオンのまま、何も起こらずに止まっています。
権限が重要な理由
ボットに何かが足りなくても、Discord は警告しません。操作を拒否して権限エラーを返しますが、そのエラーはボット自身のログにしか届かず、サーバーには何も表示されません。外から見ると、理由もなく機能が壊れたように見えます。
- メンバーが参加してもウェルカムメッセージが届かない。Levlix がウェルカムチャンネルに投稿できないためです。
- ログ機能はオンなのに、ログチャンネルが何日も空のまま。
- 報酬を設定しているのに、レベルロールが付与されない。
Levlix に何ができるかを Discord が決める仕組み
Levlix はサーバーの普通のメンバーです。特定のチャンネルで何ができるかを、Discord は 3 つの要素から判断します。
ロール
Levlix が持つすべてのロールの権限が足し合わされ、その合計が結果になります。ボット専用の権限というものはありません。Levlix が 3 つのロールを持っている場合、そのどれか 1 つで許可された権限は、サーバー全体で許可されたものとして扱われます。
チャンネルの権限上書き
どのチャンネルでも、ロールや個々のメンバーに対して権限を許可したり拒否したりできます。上書きはサーバー全体の設定より優先されます。あるロールがサーバー全体で「メッセージを送信」を持っていても、1 つのチャンネルで拒否されていれば、その拒否が優先されます。
カテゴリー
チャンネルは、自分自身の上書きを持たない限り、カテゴリーの上書きを引き継ぎます。カテゴリーで Levlix のロールに何かを拒否すると、その下のすべてのチャンネルに影響します。サーバーの一区画がまとめて静かになってしまう原因として、これが最もよくあるものです。
Levlix が今持っている権限を確認する
サーバー全体
- サーバー設定 を開き、ロール を開きます。
- Levlix ロールを選びます。ボットが参加したときに Discord が作成したロールです。
- 権限の一覧に目を通します。チャンネル側で別の指定がない限り、これが Levlix がどこでもできることです。
1 つのチャンネル
- チャンネルの設定を開き、権限 タブに切り替えます。
- Levlix ロール、またはメンバーとしてのボットを探します。どちらも表示されていなければ、カテゴリーとサーバー全体のロールだけが適用されます。
- Discord は 1 つのチャンネルでの結果を表示することもできます。チャンネルの権限画面で Levlix ロールまたは Levlix メンバーを選ぶと、カテゴリーから引き継いだものも含め、そこで実際に適用される権限が一覧表示されます。「Levlix はここに投稿できるか」を知るには、この画面が一番の近道です。
足りない権限を付与する
サーバー全体に
- サーバー設定、ロール、Levlix の順に開きます。
- 権限をオンにして保存します。
Levlix が複数のロールを持っている場合は、どれか 1 つで権限を付与すれば十分です。
1 つのチャンネルに
- チャンネルの設定を開き、権限 タブに切り替えます。
- Levlix ロールまたは Levlix メンバーがまだ一覧にない場合は追加します。
- 権限を緑のチェックマークに設定します。真ん中の灰色のスラッシュは、チャンネルがロールまたはカテゴリーの設定を引き継ぐことを意味し、赤いバツ印は、ロールが許可していてもこのチャンネルでは拒否することを意味します。
プライベートチャンネル
@everyone から隠されているチャンネルには、もう 1 つ権限が必要です: チャンネルを見る。これがないと Levlix にはそのチャンネルがまったく見えず、投稿もできず、ダッシュボードのチャンネル選択欄にも表示されません。そのチャンネルで直接、Levlix ロールに チャンネルを見る と メッセージを送信 を付与してください。
Levlix が投稿するすべてのチャンネルで最低限必要な権限
| 権限 | 必要な理由 |
|---|---|
| チャンネルを見る | そもそもチャンネルを見るため。これがなければ、そのチャンネルでのほかの権限は意味を持ちません。 |
| メッセージを送信 | メッセージそのものを投稿するため。 |
| 埋め込みリンク | 推奨。Levlix のメッセージの多くは、カード、画像、ボタンといったリッチなコンテンツを含んでおり、この権限がないと一部が欠けて届くか、まったく届きません。 |
ロールの階層
権限は話の半分にすぎません。Discord は順位も比較します。Levlix が作成、付与、削除できるのは、自分の最上位ロールより下にあるロールだけで、最上位ロールが自分より上にあるメンバーはモデレートできません。そのため、ロールの管理 が付与されているのにレベルロールが付与されない、あるいはモデレーターへのタイムアウトが失敗し続ける、ということが起こります。どちらの場合も、対象が単に高すぎる位置にあるのです。サーバーのオーナーは、階層がどうであれ、ボットがモデレートすることは決してできません。
各モジュールに必要なもの
モジュールに権限が必要になるのは、そのモジュールをオンにしてからです。表には、Levlix が求める権限とその理由をまとめています。
| モジュール | 権限 | Levlix が必要とする理由 |
|---|---|---|
| XP レベルロール | ロールの管理 | レベルロールが設定されているため、Levlix がそれを作成して付与する必要があります。 |
| チケット | プライベートスレッドを作成、スレッドの管理、メッセージを送信、スレッドでメッセージを送信 | チケットは依頼ごとにプライベートスレッドを作成し、依頼者をそこに追加して、スレッド内にメッセージを、親チャンネルにパネルを投稿します。 |
| 自動モデレーション | メッセージの管理、メンバーをタイムアウト | 自動モデレーションは互いに独立した複数のサブスイッチで構成されており、この 2 つの権限はそのどれでも使われます。違反メッセージの削除と、違反を繰り返す人へのタイムアウトです。 |
| アンチヌーク | 監査ログを表示 | 破壊的な操作を誰が行ったかをアンチヌークに伝えるリアルタイムの監査ログイベントを、Discord はこの権限を持つボットにしか届けません。 |
| 誕生日ロール | ロールの管理 | 誕生日ロールは 1 日だけ付与され、その後に外されます。 |
| 招待トラッキング | サーバー管理、招待を作成 | Discord がサーバーの招待一覧と各招待の使用回数を見せるのは、サーバー管理を持つメンバーだけです。招待リンクはこの権限を求めます。Levlix を追加するときにチェックを外した場合は、Levlix ロールに付与してください。 |
| 一時ボイス | チャンネルの管理、メンバーを移動 | Levlix はメンバー専用のボイスルームを作成し、そこへメンバーを移動させ、オンにした権限をルームのオーナーに与えます。Discord は、Levlix 自身が持っている権限しか渡させません。 |
自動モデレーションは、さらに踏み込むと追加の権限を求めます。エスカレーションには メンバーをキック と メンバーをBAN が、レイド時のロックダウンには ロールの管理 が追加で必要です。どちらも、その特定のオプションをオンにしたときにだけ必要になります。
監査ログを表示 がないアンチヌークは何も受け取れず、知らないうちに一度も発動しません。対応そのものに必要な権限は、設定したアクションによって異なり、メンバーをBAN、メンバーをキック、ロールの管理 のいずれかです。
ダッシュボードに表示される内容
すべてのチャンネルを手作業で確認する必要はありません。Levlix ダッシュボード では、Levlix が投稿できないチャンネルに設定ページで印が付くので、保存する前に、そのメッセージが届かないことがわかります。モジュールページでは、有効なモジュールに権限が足りないとすぐに警告が表示され、その権限名が Discord での表記のとおりに示されます。画面のそのほかの部分については ダッシュボードの概要 で説明しています。
Levlix を再招待する
複数の権限がまとめて足りない場合は、招待リンクを使うのが元の状態に戻す一番の近道です。招待ページ を開き、同じサーバーをもう一度選んで権限を確認します。Discord は 2 つ目のボットを作るのではなく、既存の Levlix ロールに権限を追加します。そのサーバーで サーバー管理 が必要です。最初に Levlix を追加したときに必要だったのと同じ権限です。招待の流れ全体については はじめに を参照してください。
よくある症状
| 症状 | よくある原因 |
|---|---|
| ウェルカムメッセージ が表示されない | ウェルカムチャンネルで チャンネルを見る または メッセージを送信 が足りない、またはチャンネルがプライベート。 |
| ログチャンネル が空のまま | ログチャンネルで同じ 2 つの権限が足りない。スタッフ用カテゴリーから引き継いでいることが多い。 |
| メッセージがプレーンテキストで届く | 埋め込みリンク が足りないため、カード、画像、ボタンが取り除かれている。 |
| ロールが付与されない | ロールの管理 が足りない、またはそのロールが Levlix ロールより上にある。 |
| タイムアウトが失敗する | メンバーをタイムアウト が足りない、またはメンバーが Levlix より上のロールを持っている。 |
権限を付与しても機能が動かない場合は、Levlix サポート Discord で質問してください。