discord.jsを使用して、サーバーのブースト回数とレベルユーザーがサーバーをブーストした際に検知する方法をご紹介します。
検証済みバージョン
- discord.js: v14.15.3
必要なモジュール
ChannelType
EmbedBuilder
やり方
- サーバーのブースト回数を検知する
premiumSubscriptionCount
サンプルコード
client.on('messageCreate', (message) => {
if (message.content === '!boostcount') {
message.reply({ content:`このサーバーのブースト回数は、${premiumSubscriptionCount}回です` });
}
});
- サーバーのブーストレベルを検知する
premiumTier
サンプルコード
client.on('messageCreate', (message) => {
if (message.content === '!boostlevel') {
message.reply({ content:`このサーバーのブーストレベルは、${premiumTier}レベルです` });
}
});
- ユーザーがサーバーをブーストした際に検知する
channel.type === 8
サンプルコード
client.on('messageCreate', (message) => {
if (channel.type === 8) {
message.channel.send({ content:`サーバーがブーストされました!` });
}
});
応用
ブーストされた際にチャンネルにブーストしたユーザーと現在のブースト数、レベルを送信することができます
client.on('messageCreate', (message) => {
if (message.type === 8) {
const embed = new EmbedBuilder()
.setAuthor({
name: `@${message.author.tag}`,
url: `https://discord.com/users/${message.author.id}`,
iconURL: message.author.displayAvatarURL(),
})
.setColor('#ff73fa')
.setDescription(`## サーバーがブーストされました!\n> __現在のブースト数は ${message.guild.premiumSubscriptionCount}回 (${message.guild.premiumTier}レベル)です!__`)
.setFooter({
text: 'Server Boosted!',
iconURL: 'https://cdn.hagetako.com/boost.gif',
})
.setTimestamp();
message.channel.send({ content:`<@${message.author.id}>`, embeds: [embed] });
}
});
このような感じで、ユーザーが行ったブーストを検出することが可能です。
このコードを動かすためには
このボットを24時間稼働させるためには、安定したサーバーが必要です。XServer VPSを利用することで、ボットの運用を確実に行うことができます。以下にその理由をご紹介します。
- 高い安定性とパフォーマンス
XServer VPSは、高速なSSDストレージと強力なプロセッサーを備えており、ボット運用に必要なリソースを十分にサポートします。 - スケーラビリティ
ボットへのトラフィックが増加した場合でも、簡単にリソースを増強できます。これにより、大規模な運用が必要になっても、面倒な移行作業を行わずに対応可能です。 - 簡単な管理
使いやすい管理画面と充実したサポートにより、初心者でも安心して利用できます。
これらの理由から、XServer VPSを利用することで、ボットが24時間安定して稼働する環境を簡単に整えることができます。興味がある方は、以下のリンクから詳細を確認し、自分のニーズに最適なプランを選んでみてください。
XServer VPS 公式サイト
このリンクから申し込むと、アフィリエイトが適用され、特典や割引が受けられる場合があります。
コメント