LoginSignup
5

More than 5 years have passed since last update.

[Discord] FredBoat(多機能Bot)を自鯖でホストする

Last updated at Posted at 2016-12-28

 本家に紹介していただきました。ありがとうございます。
 Thank you for sharing :)


 

 FredBoat を自鯖でホストしてみたかったので。
 (セルフホストについての説明は ここ

 検証環境

~$ cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)

 ちなみに64ビット(amd64)環境。

 必要なもの

 詳細な説明は後述します。

 ・Java 8 JDK
 ・Git
 ・Maven
 ・DiscordのBotユーザトークン
 ・Linux(Windowsでも動作するが、今回はLinuxで解説する)

 Java 8 JDKのインストール

 ダウンロードページ にrpmパッケージがあったので、ありがたく使わせてもらう。

~$ wget http://download.oracle.com/otn-pub/java/jdk/8u111-b14/jdk-8u111-linux-x64.rpm
~$ sudo rpm -Uvh jdk-8u111-linux-x64.rpm

 GitとMavenのインストール

 yumから入れればパスも自動で設定してくれる(というかパスが通ってる場所にインストールされる)のでOK。

~$ sudo yum -y install git maven

 DiscordのBotユーザトークン

 まずは、 https://discordapp.com/developers/applications/me にアクセスする。

 スクリーンショット
 New App をクリック。

 スクリーンショット
 とりあえず、App Name だけ入力して Create App をクリック。

 スクリーンショット
 Create a Bot User をクリック。
 プロンプトで何か聞いてくるが、Yes, do it!をクリック。

 スクリーンショット
 click to reveal をクリックして表示されたトークンが後で必要になるのでコピーしておく。

 FredBotのビルド

~$ git clone https://github.com/Frederikam/FredBoat.git
~$ cd FredBoat
~/FredBoat$ mvn package shade:shade
~/FredBoat$ mkdir bin
~/FredBoat$ cp FredBoat/target/FredBoat-1.0.jar bin/
~/FredBoat$ cp FredBoat/config.json bin/
~/FredBoat$ cp FredBoat/credentials.json.example bin/credentials.json

 設定

 まず、config.json を編集する。

{
        "patron": true,
        "development": false
}

 次に、credentials.json 。

{
        "malPassword": null,
        "clientToken": null,
        "token": {
                "beta": null,
                "production": null,
                "music": null,
                "patron": "ここにさっき取得したBotユーザのトークン"
        },
        "googleServerKeys": [

        ],
        "cbUser": null,
        "cbKey": null,
        "mashapeKey": null
}

 起動

~/FredBoat$ cd bin
~/FredBoat/bin$ java -jar FredBoat-1.0.jar

 いくつかエラーが出るが、様々なサービスのトークンが未取得なだけなので、気にしない。
 (使いたいサービスがあったら、credentials.json を編集する。)

 まとめ

 結局、公式サイトを適当に翻訳しただけなんだよなあ。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5