Rust 製の Discord ボイスチャットボットです。
serenity と songbird を用いて、VC への参加と退出をスラッシュコマンドで制御できます。
serenity– Discord API ライブラリsongbird– 音声再生ライブラリtokio– 非同期ランタイムdotenv– 環境変数読み込みreqwest,serde,serde_json,urlencoding– 今後の機能拡張のために準備されていますwhatlang– 投稿メッセージの言語判定に使用
.envに以下の環境変数を設定します。DISCORD_TOKEN=YOUR_TOKEN DISCORD_GUILD_ID=GUILD_ID
cargo runで BOT を起動します。- サーバー内で
/joinを実行するとボイスチャネルに参加し、/leaveで退出します。/sayコマンドでテキストを読み上げます。/joinを実行したチャンネルに投稿されたメッセージは自動的に読み上げられ、中国語のメッセージは中国語で、それ以外は日本語で読み上げます。
TTS 機能として Google Translate の読み上げ音声を利用しています。
Docker でも実行できます。まずイメージをビルドします。
docker build -t multitts ..env で利用する環境変数を設定した上で、次のように起動します。
docker run --env-file .env multitts