Edited at
DiscordDay 2

Discord Botアカウント初期設定ガイド for Developer


はじめに

Discord Bot 作成の最初の躓きポイントとして、

アカウントの作成、サーバーへの登録、権限の設定などがありますが、

この記事ではそれらをまとめて解説します。

また、記事内でID等を晒していますが、

削除済みのBotアカウントの情報のため安心してお読みいただけます。


アカウントの作成

まずは DEVELOPER PORTAL にログインします。

右上の「New application」をクリックします。

モーダルウィンドウが開き、Bot(Application)名の入力を求められるので、

入力して「Create」をクリックします。

Bot(Application)アカウントの作成が完了し、

アカウントの管理画面が表示されます。


アイコンの設定

Bot の顔となるアイコンの設定をしましょう。

アカウント管理画面の APP ICON をクリックして、

アイコン画像をアップロードします。

アップロード時にトリミングはできないので、

事前にちょうどいいサイズに整形しておきましょう。

アップロードが完了したら「Save Changes」をクリックして反映させましょう。

反映後にアイコンを削除したい場合には APP ICON 下の「Remove」から。

アイコンの反映が完了すると

「All your edits have been carefully recorded.」

と表示されます。


Bot の初期設定

左の SETTINGS 欄の「Bot」をクリックします。

Application を Bot ユーザとして可動させる必要があるため、

「BUILD-A-BOT」右の「Add Bot」をクリックします。

「Bot ユーザとして稼働させると二度と元に戻せないよ!」

というメッセージとともにモーダルウィンドウが表示されますが、

問題ないので「Yes, do it!」をクリックします。

Botユーザ化が完了すると、

「A wild bot has appeared!」というメッセージが表示され、

Botのユーザハッシュタグ(#3297)やアクセストークンなどが確認できるようになります。


アクセストークンの取得

アクセストークンはプログラムからBotを操作するために必要な文字列です。

「TOKEN」の下の「Copy」をクリックするとアクセストークンをコピーできます。

必要な箇所にペーストして使用してください。

「Click to Reveal Token」をクリックすると、

トークンを確認することができます。

いつアクセスしてトークンを Copy しても同じ文字列を得ることができます。

(厳密には.以下の文字列は取得する度に変化しますが、同値として機能します。)

「Regenerate」からトークンの再発行が可能ですが、

再発行前のトークンが全て無効になるので注意してください。

(クリックすると以下のようにモーダルウィンドウが表示されます)

※ アクセストークンは知られるとBotが乗っ取られる危険性が高いため、

必ず誰にも見えない場所に保存してください!

トークンを記述したプログラムを公開して流出するケースが頻発しています。


サーバへの登録

左の SETTINGS 欄の「OAuth2」をクリックします。

「OAUTH2 URL GENERATOR」から、参加させるための認証 URL を発行できます。

「SCOPES」内の「bot」にチェックを入れると、

認証 URL が生成されるので Copy をクリックしてコピーします。

コピーした認証 URL にアクセスすると以下のような画面が開くので、

追加したいサーバーを選択したのち、右下の「認証」をクリックします。

※ 自分が管理者権限を持っているサーバーのみ選択できます。

スパム対策のための認証画面が開くので、チェックボックスをクリック。

以下のように「認証しました」と表示されれば登録は完了です。

Discordサーバー側でも参加できていることが確認できます。


Botの権限設定

Bot を Discord サーバーに追加する前と後で設定方法が変わります。


役職で権限を設定する

一般ユーザと同じ方法でBotの権限を設定します。

Discordサーバーの設定を開きます。

左のメニューから役職を選び、

役職リスト右上の+をクリックして新規役職を作成します。

名前と色を設定し、必要に応じて権限をONにしましょう。

とりあえず試すなら管理者をONにしておくのが手っ取り早いと思います。

設定後に「変更を保存する」をクリックするのを忘れずに。

役職が用意できたら、Botアカウントをクリックしてプロフィールを表示し、

+ボタンから役職を追加しましょう。

プロフィールに役職名が表示され、色が反映されたら完了です。


認証URLで権限を設定する

「OAuth2」内の「OAUTH2 URL GENERATOR」で、

「SCOPES」内の「bot」にチェックを入れた後、

画面を下にスクロールすると、権限設定が表示されます。

必要な権限にチェックを入れると、認証URLが変化して権限が反映されます。

権限を設定した認証URLにアクセスすると、以下のような画面が表示されます。

ここで各権限をOFFにすることも可能です。

DiscordサーバーにBotを追加すると、Botと同じ名前の役職が付与されます。

役職設定を開くと、この役職についての注意書きが表示されています。

この特殊な役職は他のメンバーに付与したり、削除することはできません。

ただし、権限の変更は通常と同様に可能です。


役職の並び順に関する仕様

Discordサーバーで複数の役職を管理する場合、

どの役職がどの位置にあるかはとても重要です。

単に見栄えだけの問題ではありません。

以下の場合、上から assistant Echidna test

という並びになっていますが、これは

assistant が最も権限が強く、testが最も権限が弱い

ことを意味しています。(everyoneは特殊なので除いています)

仮に test が役職の管理権限を持っていたとしても、

assistant 役職を削除することも、ユーザに付与することもできません。

以上を踏まえて、並び順はよく考えて設定しましょう。


Botの配布

「サーバへの登録」 にて紹介した認証URLを発行して公開します。

必要な権限も認証URLに設定しておきましょう。

また、「Bot」内の「PUBLIC BOT」がデフォルトでONになっていますが、

これをOFFにすると自分だけが Discord サーバーに Bot 追加できるようになります。


Botの管理

作成した各Bot(Apllication)はDEVELOPERポータルから管理画面にアクセスできます。

必要に応じて適宜設定を更新しましょう。


おわりに

Discord ではユーモアに溢れた様々な文言が表示されるため、

それらを楽しみながら各作業を行えるのが良いところだと思います。

(もちろん英語が読めることが前提ですが)

DEVELOPER PORTAL の UI は頻繁にアップデートされるため、

定期的に確認して記事を更新していきますが、

更新漏れや不備などがあれば編集リクエストやコメントを頂ければと思います。

また、現状では様々な Discord Bot 関連の記事の冒頭で

Botアカウント作成手順の記述が乱立していますが、

以後こちらへのリンクを貼ることで記事の軽量化ができれば幸いです。


関連記事