質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.12%
Discord

Discordは、ゲーマー向けのボイスチャットアプリです。チャット・通話がブラウザ上で利用可能で、個人専用サーバーも開設できます。通話中でも音楽を流したり、PC画面を共有できるなど多機能な点が特徴です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

解決済

discord.jsで特定の文章に対して反応するbotを作りたい

air_toumei
air_toumei

総合スコア23

Discord

Discordは、ゲーマー向けのボイスチャットアプリです。チャット・通話がブラウザ上で利用可能で、個人専用サーバーも開設できます。通話中でも音楽を流したり、PC画面を共有できるなど多機能な点が特徴です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

2回答

0グッド

0クリップ

277閲覧

投稿2022/11/13 13:26

編集2022/11/15 13:27

前提

discord.jsでbotを作っていて特定の文章を送るとbotが返事をする、といったものを作ろうとしています。

実現したいこと

  • botを作る
  • 設定とか招待とか起動とか
  • 前提に書いてあるように特定の文章を送るとbotが反応する

発生している問題・エラーメッセージ

特定の文章を送ってもbotが反応してくれない

該当のソースコード

javascript

1const { Client, GatewayIntentBits } = require('discord.js'); 2 3const client = new Client({intents: [GatewayIntentBits.Guilds, GatewayIntentBits.GuildMembers, GatewayIntentBits.GuildMessages]}); //clientインスタンスを作成する 4 5// Discordへの接続 6client.login(/*トークン*/); 7 8client.once('ready', () => { //ここにボットが起動した際のコードを書く(一度のみ実行) 9 console.log(`${client.user.tag}`);//botの名前を表示 10}); 11 12client.on('message', message => { 13 if(message.author.bot) return; //BOTのメッセージには反応しない 14 15 if (message.content.includes('hello')) { //helloと送られたら 16 message.channel.send('hello!'); //hello!と返す 17 } 18})

試したこと

他のサイトを見て

javascript:1

1const { Client, Intents } = require('discord.js'); 2 3const client = new Client({intents: []});//ここ原因なはずだけど何書けばいいのかさっぱりわからない

のようにした


補足

javascript:3

1const client = new Client({intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES]}); //clientインスタンスを作成する

のようにしてもエラーが出る


Discord Developer Portal から
Privileged Gateway Intents の中の MESSAGE CONTENT INTENT をオンにした

botに管理者権限の付与

補足情報(FW/ツールのバージョンなど)

OS: MacOS Monterey 12.6.1
エディター: VSCode 1.73.1 (Universal)

node v16.16.0
npm 8.11.0
discord 0.0.269 (0.0.269)

以下のような質問にはグッドを送りましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

回答2

0

自己解決

ふと思いついてdiscord.jsのバージョンを見てみたらv14でした。
このサイトこのサイトを見てみるとIntents.FLAGS.GUILDSGatewayIntentBitsに置き換えられていると書いてあったので

js

1intents: [GatewayIntentBits.Guilds, GatewayIntentBits.MessageContent, GatewayIntentBits.GuildMessages]

としたらうまく行きました。
こんな簡単なことに何日間無駄にしてたんだろ…

投稿2022/11/15 14:05

air_toumei

総合スコア23

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

0

Text

1あなたはbotにブロックされていないか確認するべきである。

投稿2022/11/13 13:55

atcoderyellow

総合スコア481

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

2022/11/13 14:48

こちらの回答が他のユーザーから「スパムと見受けられる内容を含む回答」という指摘を受けました。

2022/11/15 07:13

こちらの回答が他のユーザーから「説明が不足している回答」という指摘を受けました。

回答へのコメント

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.12%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Discord

Discordは、ゲーマー向けのボイスチャットアプリです。チャット・通話がブラウザ上で利用可能で、個人専用サーバーも開設できます。通話中でも音楽を流したり、PC画面を共有できるなど多機能な点が特徴です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。