-
ローカルホストではなくクラウドホスティングを使用する: Discordボットをローカルマシンで実行すると、マシンをオンにしている間しかボットが稼働しません。そのため、クラウドホスティングサービスを使用することをおすすめします。有名なサービスにはHeroku、Glitch、AWS、Google Cloud Platformなどがあります。これらのサービスはボットを24時間稼働させるために必要なインフラストラクチャを提供しています。
-
プロセスの永続化: ボットがホスティングされている環境では、アプリケーションを永続化する必要があります。これにより、ボットが予期せず停止することがなくなります。ボットを永続化するためには、プロセスマネージャを使用することが一般的です。例えば、pm2やforeverといったツールを使用することで、ボットを自動的に再起動することができます。
-
心拍監視: 心拍監視は、ボットが正常に動作しているかどうかを定期的にチェックする方法です。ボットが停止した場合、心拍監視はボットを再起動します。心拍監視には、cronジョブや専用のモジュール(例: forever-monitor)を使用することができます。
以下に、Node.jsで書かれたDiscord.jsモジュールを使用したボットの簡単な例を示します。
const Discord = require('discord.js');
const client = new Discord.Client();
client.on('ready', () => {
console.log('ボットが起動しました。');
});
client.on('message', (message) => {
if (message.content === '!ping') {
message.reply('Pong!');
}
});
client.login('YOUR_BOT_TOKEN');
上記の例では、ボットが!ping
というメッセージに反応し、"Pong!"と返信します。YOUR_BOT_TOKENの部分を自分のボットのトークンに置き換えてください。
これらの手法とコード例を使用することで、Discordボットを24時間稼働させることができます。ただし、ボットが大量のリクエストを処理する場合は、ホスティングサービスの制限や料金体系に注意する必要があります。