【Discord.js】Discord.js を使ったDiscordBotの作り方をご紹介!

discord-js アイキャッチ画像Discord.js

皆さんこんにちは!今回はNode.jsのモジュール “Discord.js” を使った DiscordBot の立て方から、簡単な応答までをご紹介します!

スポンサーリンク

必要な準備

  • Discordサーバーの準備
  • BOTのアクセストークンの準備
  • BotをDiscordサーバーに追加
  • Node.jsのインストール
  • Discord.jsのインストール
  • 簡単な応答を作る

Discordサーバーの準備

はじめに、Discordでサーバーを作成しておきます。

なぜ作成するのかというと、Botをサーバーに追加する人がサーバーの管理者権限を持っている
必要があり、作成しておくことで自作Botのテスト等をしやすいためです。

1つは自分のテストサーバーを作っておくことをお勧めします。

BOTのアクセストークンの準備

DiscordBotのアクセストークンを準備します。

ブラウザで
Discord Developer Portal — My Applications
にアクセスし、自分のDiscordアカウントでログインします。

bot-developers_login

右上の New Application を押します。

すると、Applicationの名前を入れる画面が出てくるので、Botの名前を入れて、Createを押します。

Application追加

左の欄の Bot を押し、右の Add Bot を押すと真ん中のような画面が出てくるので、Yes, do it! を押して Bot化が完了です。

Build-A-BotTOKEN の欄にある Click to Reveal Token を押すと、文字列が表示されます。

これがBotのトークンです。後で使うのでCopyを押して、どこかに保存しといてください。

BotをDiscordサーバーに追加

BOTのURL取得

左の欄の OAuth2を押し、真ん中下の SCOPES の中のbotチェックを入れ、出てきたURLを右のCopyを押してコピーします。

これがDiscordBotの招待URLです。

ブラウザのURLにこれを張り付け、アクセスします。
そこで Botを追加します の部分に追加するサーバーを選択し、認証 ボタンをクリックします。

これでBotをサーバーに招待することが出来ました。

Node.jsのインストール

Windowsの場合
  1. Node.js にアクセスし、推奨版のインストーラーをダウンロードします。
  2. ダウンロードしたインストーラーを開き、インストールを完了させます。
    ほとんど Next で問題ありません。
Linux-Ubuntuの場合

ターミナルを開いて以下のコマンドを実行します。

sudo apt install -y nodejs npm

最新版を入れたい、別のバージョンを入れたいという方は
Ubuntuに最新のNode.jsを難なくインストールする:Qita を参考にしてみて下さい。

ターミナルで以下のコマンドを実行し、バージョンが返ってきたら
Node.jsNpmの導入が完了です。

$ node --version
v14.10.1
$ npm --version
6.14.8

Discord.jsのインストール

Discord.jsNode.js のパッケージを管理するツール npm を使ってインストールします。

ターミナルで以下のコマンドを実行します。

Windows
npm install discord.js --save
Linux-Ubuntu
sudo npm install discord.js --save

簡単な応答Botを作る

今回は /hello と打つと HELLO!! と返す簡単なコマンドを作ります。

適当なところに test-bot というディレクトリを作成しファイルを作成します。

mkdir ./test-bot

# 作成したディレクトリに移動します。
cd test-bot

# bot.jsというファイルを作成します。
$ nano bot.js

下記のコードを書いていきます。

// discord.js モジュールのインポート
const Discord = require('discord.js');

// Discord Clientのインスタンス作成
const client = new Discord.Client();

// トークンの用意
const token = 'ここにコピーしたBotのトークン';

// 起動するとconsoleにready...と表示される
client.on('ready', () => {
    console.log('ready...');
});

client.on('message', message => {
    if(message.author.bot) return; //BOTのメッセージには反応しない

    if(message.content === "/hello"){ //送られたメッセージが /helloだったら
        message.channel.send("HELLO!") 
        //メッセージが送られたチャンネルに HELLO!と送信する
    }
})

// Discordへの接続
client.login(token);

コードを保存することが出来たら、Botを起動させます。

ターミナルで以下のコマンドを実行します。

node bot.js

するとコンソールには ready… と表示されていると思います。
Discord側でもBotがオンラインになっているのが確認が出来たら、起動完了です!

実際に /hello と打ってみて下さい!BotがHELLOと返信すると思います!

DiscordBot のトークンは大切に保管するようにしてください。
もし知らない人の手に渡ってしまうとあなたのBotを乗っ取られてしまう恐れがあります。
もし乗っ取られたと感じたら、すぐに Developer Portal に行き、トークンを再生成
して下さい。

最後に

いかがだったでしょうか?今回はDiscord.jsを使ったDiscordBotの作り方を紹介しました。
Discord.jsの記事は沢山あるので、この機会にプログラミングに手を付けてみては
いかがでしょうか?

サンプルコードなどもまとめる予定です。

コメント

タイトルとURLをコピーしました