誰でも作れる!Discord Bot 2024(初期設定編)
この note では
な Discord Bot の作り方を紹介します!
4年前に「誰でも作れる!Discord Bot(基礎編)」という note を書きましたが、内容が古くなってしまったのでリニューアルすることにしました。
リニューアルにより手順がもっと簡単になりました!
コードもしっかり書き直したのでカスタマイズもしやすくなりました。
この記事で紹介している Bot「MiniPotato」の Discord サーバーでは、紹介している Bot を実際に操作できます。
要望や質問等も可能な範囲で受け付けていますので、お気軽にご参加ください!
https://discord.gg/UDf4R5fgqr
リンク
誰でも作れる!Discord Bot 2024(初期設定編) (このページ)
誰でも作れる!Discord Bot 2024(カスタマイズ編/中級)(4月下旬公開予定)
誰でも作れる!Discord Bot 2024(カスタマイズ編/上級)(5月公開予定)
構成
discord.js v14.14.1を利用。
Glitch にて Discord Bot を実行。
Google Apps Script から POST することで起動状態を維持しています。
1. Discord 上の Bot の作成
https://discord.com/developers/applications から、Discord のアプリケーションを作成します。
1.1 右上の New Application を押す
1.2 アプリの名前(なんでもOK)を入力して Create を押す
1.3 Installation ページで設定を行う
1.3.1 Install Link で Discord Provided Link を選択
1.3.2 Default Install Settings の SCOPES で「bot」を選択
1.3.3 Default Install Settings の PERMISSIONS で権限を選択
身内向け・自分用であれば「Administrator」でOK
公開するBotの場合は、必要な権限を選択してください。
1.3.4 右下の Save Changes をクリック
1.4 Bot ページで設定を行う
1.4.1 Build-A-Bot -> ICON と USERNAME を設定する
ここで設定したものが、Discord 内に反映されます。
1.4.2 Authorization Flow -> PUBLIC BOT を設定する
有効にすると、だれでも Bot をサーバーに追加できます。
無効にすると、Bot をサーバーに追加できるのが自分だけになります。
1.4.3 Privileged Gateway Intents -> MESSAGE CONTENT INTENT を有効化する
Botで一部の情報を取得するためには、対応する Privileged Gateway Intents を有効化する必要があります。
私が公開しているサンプルでは、MESSAGE CONTENT INTENT を有効化してください。
1.4.4 右下の Save Changes をクリック
1.5 必要な情報をコピーしておく
1.5.1 Bot -> TOKEN からトークンを取得
Reset Token を押すと、トークンを取得できます。
後ほど使うので、コピーして控えておいてください。
※このトークンがあると Bot を操作できてしまいます。絶対に公開しないでください!
※万が一公開してしまった場合は、もう一度 Reset Token を押すことで以前のトークンを無効化することができます。
1.5.2 General Information -> APPLICATION ID をコピー
1.6 Bot をサーバーに追加する
1.6.1 Installation -> Install Link から URL をコピー
1.6.2 URLをブラウザで開いて、Botを追加したいサーバーを選ぶ
2. Glitch の設定
https://glitch.com/dashboard から、Glitch の設定を行います。
2.1 アカウント作成
右上の Sign up からアカウントを作成してください。
Google でログインするのが楽です!
2.2 プロジェクトを Remix する
プロジェクトを Remix することで、プロジェクトを自分のアカウントにコピーできます。
https://glitch.com/~minipotato-bot-by-eoi にアクセスして、右下の「Remix your own」を押してください。
2.3 初期設定を行う
2.3.1 トークンを設定する
手順 1.5.1 でコピーしたトークンを、「TOKEN」の右側の空欄に入力してください。
2.3.2 アプリケーション ID を設定する
手順 1.5.2 でコピーしたアプリケーション ID を、「APPLICATION_ID」の右側の空欄に入力してください。
2.4 動作を確認する
下にある「📝LOGS」をクリックすると、プログラムの出力を確認することができます。
正しく設定されていれば、「<Botの名前> がログインしました!」と出力され、Discord 上の Bot もオンラインになります。
2.4.1 コマンドを実行してみる
試しに「/nyan」と入力して、コマンドを実行してみましょう。Botがリプライしてくれます。
ちなみに、テキスト入力欄の左側のプラスマークから「アプリを使う」を選ぶことで、コマンドの一覧を確認できます。
3. Google Apps Script の設定
現状では、Glitchのサーバーが勝手に休眠状態になってしまうので、Google Apps Scriptから定期的にアクセスを行うことで休眠しないようにします。
3.1 Google Apps Scriptのプロジェクトを作成する
左上の「新しいプロジェクト」を押して、プロジェクトを作成します。
「無題のプロジェクト」を押すとプロジェクトの名前を編集できるので、わかりやすい名前を設定するのがおすすめです。
3.2 ソースコードを入力する
3.2.1 Glitch アプリの URL をコピーする
アプリケーションの URL は、Glitch のプロジェクト画面の Share から確認できる、「Live site」に書かれている URL です。
これをコピーしてください。
3.2.2 ソースコードを入力し、保存する
元のコードをすべて消し、以下のコードを入力してください。
また、画像のように、URL を " " の間に入力してください。
入力後は左上のフロッピーマークを押して保存してください。
var GLITCH_URL = "コピーしたURL";
function wakeGlitch(){
var params = {
'contentType' : 'application/json; charset=utf-8',
'method' : 'post',
'muteHttpExceptions': true
};
response = UrlFetchApp.fetch(GLITCH_URL, params);
}
3.3 トリガーを設定する
3.3.1 左の目覚まし時計アイコンを押し、トリガーページを開きます。
3.3.2 右下の「トリガーを追加」を押し、画像の通りに設定してください。
「分ベースのタイマー」「1 分おき」を選択してください。
3.3.3 許可を求められるので、許可します。
Googleアカウントを選択後は、画像のように「詳細」→「プロジェクト名に移動」を押して、許可
3.4 Glitchプロジェクトの「📝LOGS」からログを確認し、「Received POST request.」というログが1分に1回出ていれば設定完了です!
4. まとめ
これで初期設定は完了です!
コマンドの解説は「Discord Bot「MiniPotato」の紹介!🥔」をご参照ください!
カスタマイズ方法については「誰でも作れる!Discord Bot 2024(カスタマイズ編/初級)」以降の note をご参照ください!🙇♂️
MiniPotato Bot の Discord サーバーでは、紹介している Bot を実際に操作できます。
要望や質問等も可能な範囲で受け付けていますので、お気軽にご参加ください!
https://discord.gg/UDf4R5fgqr
この記事が気に入ったらサポートをしてみませんか?