【備忘録】discord.py エラー Missing Accessについて
タイトルのままです。
意外と単純な話なのですが、気づかないと一生直せないので。
まずはエラーコードなのですが、
raise Forbidden(response, data)
discord.errors.Forbidden: 403 Forbidden (error code: 50001): Missing Access
と出ます。
普通この手のエラー解決では、バージョンなのを示すのが習わしですが、
先に結論から話すと、
何かしらDiscord サーバーにおいて権限がない場合です。
権限関係は、Discord サーバーにbotを招待する際に、Developer Portal
において、OAuth2にて
権限を設定するかと思いますが、これで漏れているとエラーが発生します。
そのため、再度こちらのPortalにてサーバーでの権限を増やす必要があります。
エラーコードでは何の権限が足りていないかまでは表示されないため、自分で調べる必要があります。
そして、もう一つが、プライベートのテキストチャンネルなどに対して、
bot自体が許可されていないのにも関わらず、書き込みなどをしようとすると同じくエラーが出ます。
プライベートチャンネルは、設定したロールやメンバー以外に、”管理者権限”をもつロール・メンバーも自動的にアクセスできます。
これは、botを招待する際に”管理者権限”を付与しなかった、つまり権限がなかったからと置き換えることができます。
そのため、Missing Accessが出た際は
botに権限が付与されているか
または
操作しようとしているチャンネルにbotが招待されているか
を確認するようにしましょう。
Shiftkeyについて
noteの内容に共感していただければ、ぜひともサポートを宜しくお願いします。今後の記事投稿の励みになります。