【Discord.js】特定のワードに反応するBot

テクノロジー
この記事は約3分で読めます。

こんにちはっ!
今回は、特定のワードに反応するBotをdiscord.jsで作っていこうと思います。

スポンサーリンク

Discord Botの作り方

こちらの記事にて詳しく説明しています!
わからないという方はこちらを先にお読みください。

サルでもわかる Discord Botの作り方

サルでもわかる Discord Botの作り方をゼロから説明していくシリーズです。

コード

コードは非常に短いです。

const { Client, GatewayIntentBits } = require('discord.js');

const client = new Client({ intents: [GatewayIntentBits.Guilds, GatewayIntentBits.GuildMembers, GatewayIntentBits.GuildMessages] });

client.login("<BotのToken>");

client.on('ready', () => {
    console.log(`${client.user.tag}`);
});

client.on('messageCreate', message => {
    if (message.author.bot) return;
    if (message.content.includes('<反応するワード>')) {
        message.channel.send('<Botが返す文章>');
    }
});
const { Client, Intents } = require('discord.js');
const client = new Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES, Intents.FLAGS.GUILD_MEMBERS] });

client.login("<BotのToken>");

client.on('ready', () => {
    console.log(`${client.user.tag}`);
});

client.on('messageCreate', message => {
    if (message.author.bot) return;
    if (message.content.includes('<反応するワード>')) {
        message.channel.send('<Botが返す文章>');
    }
});

以下のようにワードと文章を設定するとこのようになります。
<反応するワード> : なりかくん
<Botが返す文章> : なりかくんのブログを見ましょうね!

するとこのようになります。
しっかりと、”なりかくん”にだけ反応するBotになってますね!

終わりですっ!

コメント

  1. const { Client, Intents } = require(‘discord.js’);と入力すると、
    ‘const’ は、内部コマンドまたは外部コマンド、
    操作可能なプログラムまたはバッチ ファイルとして認識されていません。とでてきてしまいます

    • 当ブログをお読みいただきありがとうございます。
      こちらのコードですが、直接コマンドプロンプトに入力して実行する形ではなく.jsファイルを作成していただき実行する形となります。
      以下のカテゴリに一からDiscord Botの作り方を紹介していますのでそちらをお読みいただければと思います。
      https://narikakun.net/tag/dis-saru/

  2. npm install discord.js と node.js に書き込むだけでdiscord.js をダウンロードできるんですか?

    • Node.jsというアプリケーションで、npmというプログラムを利用してdiscord.jsをインストールするという形となります。

  3. 本記事に書かれているコードが旧バージョンのものだと思うんですけど、
    現バージョンに対応したコードとかあったりしますか?
    [Symbol(code)]: ‘CLIENT_MISSING_INTENTSと表示されて機能しません…。

    • 更新させていただきました!ご報告いただきありがとうございます!

  4. コメント失礼します
    上にあるコードを入力したら
    TypeError [CLIENT_MISSING_INTENTS]: Valid intents must be provided for the Client.
    と出ました。
    どうすればいいでしょうか?

    • 返信が大変遅くなり申し訳ないです。
      インテントを有効にしないといけないため、以下の記事を参考にインテントを有効化をお試しいただけますでしょうか?
      https://narikakun.net/technology/dis-saru-4/

  5. 初心者です。
    もう少し、入れ方を詳しく教えてくれませんか?
    宜しくお願いします!

    • ご返信が大変遅くなり申し訳ないです。
      当ブログにて作り方講座をまとめたものがありますので、そちらを参考にしていただければと思います。
      https://narikakun.net/tag/dis-saru/

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