ff14-bu-bot は FINAL FANTASY XIV (FF14) のゲーム内情報の検索などを行う Discord 用のチャットボットです。
command | description | example |
---|---|---|
/gather <アイテム名> |
アイテム名のギャザラー情報を探します。 | /gather シュラウドソイルG3 |
/hunt <アイテム名> |
モンスターから得られるアイテムの情報を探します。 | /hunt ボムの灰 |
/market <アイテム名> |
アイテムの入手情報を探します。 | /market クレリックキュロット |
/shop <アイテム名> |
アイテムのショップ情報を探します。 | /shop 食塩 |
/fish <魚の名前> |
魚の情報を探します。 | /fish ザリガニ |
ff14-bu-bot のソースコードは GitHub で管理されています。ソースコードの取得には Git が必要となります。Git を使ってソースコードの取得を行ってください。
$ git clone https://github.com/ff14-bu/ff14-bu-bot.git
$ cd ff14-bu-bot
ff14-bu-bot は Ruby を使っています。プラットフォームによってインストールする方法はさまざまであるため、Ruby のインストール方法については省略します。
また依存ライブラリーの管理には Bundler を用いています。Bundler は Ruby 2.4.2 時点では同梱されていません。別途インストールしてください。Bundler のインストールは Ruby をインストールした際に併せてインストールされる gem
コマンドから行えます。
$ gem install bundler
また ff14-bu-bot は Foreman を用いたプロセス管理に対応しています。Foreman がインストールされている環境ではコマンドの実行が簡単になります。必須ではありませんが Foreman のインストールも推奨します。
$ gem install foreman
依存するライブラリーは Gemfile
に記載してあります。前節「依存するソフトウェアのインストール」でインストールした Bundler を用いることでこれらのライブラリーのインストールを簡単に行えます。
$ bundle install --path vendor/bundle
ff14-bu-bot は Discord のチャットボットです。そのため Discord のボットユーザーのトークンが必要となります。Discord - My Apps (要ログイン) からアプリケーションの作成を行ってボットユーザーのトークンを取得してください。
ボットユーザーのトークンは環境変数「DISCORD_TOKEN
」を用いて設定します。Foreman は .env
という名前のファイルに環境変数の名前と値が「=
」を区切って記述されている場合、起動したプロセスの環境変数としてそれらの値が使われるようになります。なので DISCORD_TOKEN=
の後に前段落で取得したボットユーザーのトークンをつなげて .env
ファイルに記述しておくと良いでしょう。
Foreman を使うのであればプロセスの起動は foreman start
だけで済みます。とくに気をつけることはないでしょう。
$ echo DISCORD_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxx > .env
$ foreman start
ff14-bu-bot はチャットボットであるという都合上、24時間稼動し続ける必要があります。そのため Heroku などの PaaS を利用して動かすことを推奨します。
Heroku のアカウントを持っていれば下のボタンから簡単に ff14-bu-bot を Heroku にデプロイすることができます。
動作の保証はできませんが Heroku 以外の環境でも運用することができます。その場合は前章「動かし方」をご参照ください。
負荷がかかるような大きな処理はしていないため、CPU が仮想1コアの性能の低い VPS 環境下でも問題なく動かせられるかと思います。ただし外部のウェブサイトから情報を取得する仕様になっているため、外向きのインターネット接続ができる必要があります。
記載されている会社名・製品名・システム名などは、各社の商標、または登録商標です。
Copyright (C) 2010 - 2017 SQUARE ENIX CO., LTD. All Rights Reserved.
ff14-bu-bot は下記のウェブサイトから情報の検索を行っています。