チャット読み上げ機能(/voice_reader)

通話が始まるとbotが設定済みのボイスチャンネルへ自動参加し、指定したテキストチャンネルの投稿を音声で読み上げます。対象ユーザーやロール、時間帯、声、入退室・リアクション・返信・メンションなどをサーバーごとに調整できます。

使い方

コマンド 内容
/voice_reader setup 読み上げるVC、テキストチャンネル、声、自動参加を登録・更新します。
/voice_reader target_add 対象ユーザーまたはロールを追加します。
/voice_reader target_remove 対象ユーザーまたはロールを削除します。
/voice_reader items 読み上げる項目を設定します。
/voice_reader schedule 読み上げる曜日・時間帯を設定します。
/voice_reader voice 話者、話速、音高、抑揚、音量を変更します。
/voice_reader voices 利用できる話者を表示します。
/voice_reader invite 設定済みVCへbotを手動で招待します。
/voice_reader leave 読み上げbotをVCから退出させます。
/voice_reader list このサーバーの設定を表示します。
/voice_reader remove 指定VCの設定を解除します。

最初にサーバー管理者が登録します。

/voice_reader setup voice_channel:雑談VC text_channel:#雑談 voice:voicevox:3 auto_join:True

引数

引数 使用するサブコマンド 説明
voice_channel 複数 設定・操作するボイスチャンネル
text_channel setup 読み上げるテキストチャンネル
voice setup, voice 候補から選ぶ声。利用できる声はvoicesで確認できます。
auto_join setup 通話開始時に自動参加するか
user / role target_add, target_remove 読み上げ対象。どちらか一方を指定します。
messages items 通常メッセージを読むか
join_leave items VCへの入退室を読むか
reactions items リアクション追加を読むか
replies items 返信メッセージを読むか
mentions items メンション名を読むか
attachments items 添付ファイルの件数を読むか
author_name items 投稿者名を読むか
enabled schedule 時間帯制限を有効にするか
start / end schedule HH:MM形式の開始・終了時刻
weekdays schedule mon,tue,wedのような対象曜日
timezone schedule 時刻を扱う地域。通常はAsia/Tokyo
speed / pitch voice 話速と音高
intonation / volume voice 抑揚と音量

応答・返り値

  • 登録・更新・解除の完了メッセージ
  • 現在のVC、読取元、声、自動参加、対象、項目、時間帯の設定
  • 利用できる音声と選択用の値
  • 手動参加・退出の結果
  • 通話中のチャット、入退室、リアクションなどの音声

必要条件・権限

  • 設定の登録・変更・一覧・解除には「サーバーの管理」権限が必要です。
  • 一般ユーザーが手動招待する場合は、設定済みVCに参加し、読み上げ対象に含まれている必要があります。
  • 退出は同じVCの参加者またはサーバー管理者が実行できます。
  • botには読取元テキストチャンネルを見る権限と、対象VCで「チャンネルを見る」「接続」「発言」の権限が必要です。

制限・仕様

  • 対象を未設定にするとBot以外の全員が対象です。ユーザーとロールを複数指定した場合はいずれかに当てはまる人を対象にします。
  • 開始時刻と終了時刻が同じ場合は選択曜日の終日です。深夜をまたぐ時間帯にも対応します。
  • URL、コード、スポイラーの内容は省略し、長い投稿は途中で省略します。
  • 短時間の連投、読み上げ待ち件数、音声利用量、botの負荷に応じて一部の読み上げを省略する場合があります。
  • 対象ユーザーがいなくなると、短い待機時間の後に自動退出します。
  • 音楽など別の音声が再生中の場合は割り込みません。
  • 利用できる声の種類はサーバーによって異なります。
  • 選択した声で最初に再生する際、音声エンジン名と話者名のクレジットを読み上げます。
  • VOICEVOXなど、選択した音声とキャラクターの利用規約に従って利用してください。VOICEVOXは公式の利用規約も確認してください。

使用例

対象ロールと入退室・リアクションを設定:

/voice_reader target_add voice_channel:雑談VC role:@読み上げ対象
/voice_reader items voice_channel:雑談VC messages:True join_leave:True reactions:True replies:True mentions:True

金曜・土曜の夜だけ有効にする:

/voice_reader schedule voice_channel:雑談VC enabled:True start:18:00 end:01:00 weekdays:fri,sat timezone:Asia/Tokyo

声の確認と変更:

/voice_reader voices provider:voicevox
/voice_reader voice voice_channel:雑談VC voice:voicevox:3 speed:1.05 pitch:0 intonation:1 volume:1

手動招待、設定確認、退出:

/voice_reader invite
/voice_reader list
/voice_reader leave

エラー・注意点

  • 読み上げられない場合は/voice_reader listで対象、時間帯、項目、読取元を確認してください。
  • botが参加しない場合は、対象VCの接続・発言権限と、自分が読み上げ対象に含まれているかを確認してください。
  • 投稿が一部省略される場合は、連投を避け、読み上げ待ちが減るまで待ってください。
  • 声が選べない場合は/voice_reader voicesに表示される別の声を選んでください。
  • Botが別のVCへ参加中の場合、その接続を勝手に移動しません。

コメント

タイトルとURLをコピーしました