/choosing-someone-discord-bot

Discordで音声チャットにいる人をランダムに指名するbot

Primary LanguageRubyMIT LicenseMIT

choosing-someone-discord-bot

choosing-someone-discord-botは、Discordのボイスチャンネルに参加しているメンバーをランダムに指名するbotです。

開発環境

Ruby 3.0.1

機能概要

  • Discordの音声チャンネルに参加し、任意のテキストチャットで!youコマンドを実行すると、ボイスチャンネルに参加中のメンバー1人のユーザー名がランダムにテキストチャットに出力されます。
  • 音声ミュート状態のメンバーは指名対象外になります。
  • !you 4のように引数を渡すと、引数分のユーザーが指名できます。
  • !you allを実行することで、ミュート状態ではないユーザー全員分の名前をランダム順に出力表示できます。

動作イメージ

Gif

利用方法

利用方法は2つあります。お好みの方法を選択ください。

下記招待URLから追加

https://discord.com/oauth2/authorize?client_id=871997264518856714&permissions=33557504&scope=bot

自分でDiscordのApplicationの作成

https://discordapp.com/developers/applications/

  • Developer PortalからBotを作成し、発行されたTokenをコードの環境変数に設定
  • PRESENCE INTENT、SERVER MEMBERS INTENTを有効にする
  • OAuth2 の Scope から Bot をチェックし、下記必要権限にチェックする
    • View Channels
    • Send Messages
    • Use Voice Activity
  • 発行されたURLからBotをサーバーに招待する

起動方法

ローカルの場合

ruby choose.rbでBotを起動させることができます。

Herokuを利用する場合

デプロイ後、ResourcesタブよりDynoのbundle exec ruby choose.rbが有効になっていることを確認してください。