前提・実現したいこと
かなり初歩的な質問で申し訳ないのですが、Discord botでメッセージIDから一致するメッセージの取得方法がわかりません。
実現したいことはユーザーがメッセージを送信した際、999999999999999999のIDと一致するメッセージを送信するです。
発生している問題・エラーメッセージ
処理が失敗し、エラーメッセージが表示されます。
/app/main.js:64 message.channel.messages.fetch(messageId).then(targetMessage => ^ TypeError: message.channel.messages.fetch is not a function at Client.client.on.message (/app/main.js:64:30) at Client.emit (events.js:189:13) at MessageCreateHandler.handle (/app/node_modules/discord.js/src/client/websocket/packets/handlers/MessageCreate.js:9:34) at WebSocketPacketManager.handle (/app/node_modules/discord.js/src/client/websocket/packets/WebSocketPacketManager.js:103:65) at WebSocketConnection.onPacket (/app/node_modules/discord.js/src/client/websocket/WebSocketConnection.js:333:35) at WebSocketConnection.onMessage (/app/node_modules/discord.js/src/client/websocket/WebSocketConnection.js:296:17) at WebSocket.onMessage (/app/node_modules/ws/lib/event-target.js:120:16) at WebSocket.emit (events.js:189:13) at Receiver._receiver.onmessage (/app/node_modules/ws/lib/websocket.js:137:47) at Receiver.dataMessage (/app/node_modules/ws/lib/receiver.js:409:14)
該当のソースコード
JavaScript
1 2const discord = require('discord.js'); 3const client = new discord.Client(); 4 5// メッセージ入力 6client.on('message', message => 7{ 8 9 // 固定ID'999999999999999999'定義 10 const messageId = '999999999999999999'; 11 12 // メッセージからチャンネル情報を取得して、取得したチャンネルからメッセージIDが一致するものを抽出 13 message.channel.messages.fetch(messageId).then(targetMessage => message.channel.send(targetMessage)); 14 return; 15 16}); 17
試したこと
以下のサイトを確認しながら進めています。
https://discord.js.org/#/docs/main/stable/general/welcome
メッセージの取得には.fetch()を使うのではと考えていました。
https://discord.js.org/#/docs/main/stable/class/MessageManager?scrollTo=fetch
補足情報(FW/ツールのバージョンなど)
Glitchで開発しています。
メッセージの取得方法が知りたいため、関係ないと思われるコードはかなり割愛しています。
そのためエラーが解消されるとループしてしまうのですが、対応済みなので気にしないでください。
不備や必要な情報があればお願いします。随時更新します。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。