Discord botの作り方 2
botの作り方はDiscord botの作り方 1を参考にしてください。
Node.jsを用意する
Node.jsの導入方法はこちらを参考にしてください。
Discord.jsのインストール
> npm install discord.js
+ discord.js@11.3.2
added 8 packages in 1.168s
単純な動作をするbotを作成
!ping
と打ち込んだらpong!
と返すbot
const Discord = require('discord.js');
const client = new Discord.Client();
client.on('ready', () => {
console.log('Login!!');
});
client.on('message', (message) => {
if (message.content.startsWith('!ping')) {
message.channel.send('pong!');
}
});
client.login('ここにTokenを入力');
これで完成です!
おまけ
記事を書くに至ったコードです・・・
Discordで📌をしたメッセージをDMで保存するメモ帳botです
const Discord = require('discord.js');
const client = new Discord.Client();
const botToken = "ここにトークン";
const pinEmoji = '📌';
client.on('ready', () => {
console.log('I am ready!');
});
client.on('messageReactionAdd', async (messageReaction, user) => {
if (messageReaction.emoji.name !== pinEmoji) {
return;
}
if (!user.dmChannel) {
await user.createDM();
}
let time = new Date(messageReaction.message.createdTimestamp).toISOString().replace(/T/, ' ').replace(/\..+/, '');
let info = time + '(UTC)' + ' <@' + messageReaction.message.author.id + '> ' + 'in <#' + messageReaction.message.channel.id + '>';
let message = '[' + info + '] ' + messageReaction.message.content;
user.dmChannel.send(message);
let attachments = [];
for (const [key, attachment] of messageReaction.message.attachments) {
attachments.push(attachment.url);
}
user.dmChannel.send(message, {files: attachments});
});
client.login(botToken);