ChatRank はフィヨルドブートキャンプで自作サービスです。
今月の発言数の合計と発言者数の多いチャットユーザーのランキングを知る。
- Ruby 3.0.2
- Ruby on Rails 6.1.4
- React.js 17.0.2
- Discordのサーバーの管理者は過去のメッセージが月次統計できます。
- Discordのアカウントでログインします
- 「サーバーにbotを招待する」または、「ボットを招待」をクリックしてください
- 初めてログインしたときは、サーバーは表示されませんので、サーバーとチャンネルのinputで「更新」をクリックしてください
- 過去のメッセージでメンバーをランク付けする必要がない場合は、この機能を気にしないでください
- サーバーとチャンネルの一覧を更新した後、サーバーの管理者として発言の集計ができます
- 「発言の集計をする」をクリックしたら、確認してください
- サーバーに大量のメッセージがある場合、プロセスにはかなりの時間がかかります(多分20分から数時間)・統計中にリーダーボードが表示しません
- この機能は必要な場合にのみ使用してください
- ホームページにアクセスしてランキングを確認するか、
chatrank!leaderboard
をチャンネルに送信してください(詳細については、chatrank!help
を参照してください)
- https://discord.com/developers/applications/ でApplicationを作成
Developer Portal
でBotを作成し、Token
を環境変数に設定する
Developer Portal / OAuth2 / Redirects
にリダイレクトURLを設定するClient ID
とClient Secret
を環境変数に設定する
環境変数名 | 説明 |
---|---|
DISCORD_BOT_TOKEN | Botの Token |
DISCORD_CLIENT_ID | OAuth2の Client ID |
DISCORD_CLIENT_SECRET | OAuth2の Client Secret |
$ bin/rails setup
$ bin/rails serve
$ bin/rails bot:run
$ bin/rails test:all
$ bin/lint
デフォルトでは、herokuは web
のdynoのみを実行します。アプリの全機能については、worker
のdynoを有効にしてください。
個人のアカウントには、月ごとに 550 時間の基本の Free dyno 時間が割り当てられています。この基本の時間のほかに、クレジットカードで認証を行っているアカウントには、月単位の Free dyno 割り当てに 450 時間が追加されます。 つまり、アカウントをクレジットカードで認証しているユーザーには、月ごとに合計で 1000 Free dyno 時間が割り当てられます。
-- https://devcenter.heroku.com/ja/articles/free-dyno-hours#free-dyno-hour-pool
アプリに Free Web dyno があり、その dyno が 30 分間 Web トラフィックを受信しない場合、その dyno は休眠状態になります。 Web dyno のスリープに加えて、Worker dyno (存在する場合) もスリープします。 Free Web dyno は休眠中、Free dyno 時間を消費しません。
-- https://devcenter.heroku.com/ja/articles/free-dyno-hours#dyno-sleeping