見出し画像

DiscordでDropBox内の曲もYoutubeも再生できちゃう日本語のすごいMusicBot(JMusicBot)を導入して使うまで。

rythm先輩…。

1.用意するもの

WindowsかMacもしくはVPS。私は常時起動しっぱにしたかったので(あと楽しいから)さくらのVPS1Gプランです。OSはUbuntu20.04

TeraTerm(すでにVPS繋ぐ設定は全て終わっているものとします)

DropBoxとその中にmp3の音楽ファイル。

Youtubeで流したい曲。

2.こいつをインストール→導入→起動→使うまでがとりあえずの目標

まずはインストールから。

①javaを入れる。Ubuntu20.04です。こうです。

java -version
javac -version

どっちもver11が既に入っていました。入っていない場合は

sudo apt update
sudo apt install default-jre
sudo apt install default-jdk
java -version
javac -version

としてjavaのバージョンチェックしてください。

②インストール

https://github.com/Cosgy-Dev/JMusicBot-JP/releasesへ行って最新バージョンに決めます。(これを書いてる段階では0.6.5)ダウンロードせいよと言われてるファイルを右クリックしてリンクのアドレスをコピーしときます。

mkdir JMusicBot
cd JMusicBot
https://github.com/Cosgy-Dev/JMusicBot-JP/releases/download/0.6.5/config.txt
https://github.com/Cosgy-Dev/JMusicBot-JP/releases/download/0.6.5/JMusicBot-0.5.0.jar
ls

lsするとディレクトリJMusicbotの中にファイルが2つあるのが分かります。

Botアカウント作成はダイスbotと変わりません。

https://discordapp.com/developers/applications/me へ飛ぶ。
名前とアイコンを設定して保存。

画像3

APPLICATION IDが↑の絵のすぐ下にあるのでメモ帳か何かに一旦コピペしとく。

「Create a Bot User」をクリック、Add a Bot to this App?と聞かれたらYes, do it!クリック。

左側のメニューのBotをクリックするとTokenがコピペ出来るようになる。(Copyボタンをクリックするだけ)

画像4

https://discordapp.com/oauth2/authorize?client_id=[Client IDの数字]&scope=bot&permissions=0 にアクセス。

入れたいサーバーの名前を選んで「認証」をクリック。

設定

config.txtを編集します。

画像5

tokenにさきほどの開発者ページからBotのトークンを貼り付けます。
ownerに自分のIDを貼り付けます。自分のIDはDiscordの設定→詳細設定→開発者モードをONにしたのち、自分の発言のアイコンを右クリックしてユーザーIDをコピーです。

最低限の設定はこれだけ。プレフィックスを「?」に設定すると以下と全く同じ操作ができるようになるはず。


3.起動

botを入れたいサーバーを選んでロボットじゃないよピポパしてください。java -jar JMusicBot-JP-0.6.5.jar します。
自分はボイチャに接続しておきます。(マイクミュート忘れないでね)
botがオンラインになります。
botをオフラインにしたい場合はTeraTermでCtrl+Cしてください。

4.使い方

JMusicBot コマンド一覧:(?helpでDMが送られてきます)

?about - ボットに関する情報を表示します
?invite - Botの招待用URLを表示します。
?ping - ボットのレイテンシをチェックします
?settings - Botの設定を表示します

General:

?serverinfo - サーバーに関する情報を表示します
?userinfo <ユーザー> - 指定したユーザーに関する情報を表示します

Music:

?lyrics [曲名] - 現在再生中の曲または指定した曲名の歌詞を表示します
?nowplaying - 現在再生中の曲を表示します
?play <title|URL|subcommand> - 指定された曲を再生します
?playlists - 利用可能な再生リストを表示します
?mylist <append|delete|make|all> - 自分専用の再生リストを管理
?queue [ページ] - 再生待ちの楽曲一覧を表示します
?remove <再生待ち番号|すべて|ALL> - 再生再生待ちから曲を削除します
?search <query> - 指定した文字列を使用してYouTube上の動画を検索します。
?scsearch <query> - 指定した文字列を使用してSoundcloudで検索します
?ncsearch <検索語句> - 指定した文字列を使用してニコニコ動画上の動画を検索します。
?shuffle - 追加した曲をシャッフル
?skip - 現在流れている曲のスキップをリクエスト
?volume [0-150] - 音量を設定または表示します

DJ:

?forceremove <ユーザー> - 指定したユーザーのエントリーを再生待ちから削除します
?forceskip - 現在の曲をスキップします
?movetrack <from> <to> - 再生待ちの曲の再生順を変更します
?pause - 現在の曲を一時停止します
?playnext <title|URL> - 次に再生する曲を指定します
?repeat [all|on|single|one|off] - 再生待ち楽曲の再生が終了したら曲を再追加します
?skipto <position> - 指定された曲にスキップします
?playlist <append|delete|make|setdefault> - 再生リスト管理
?stop - 現在の曲を停止して再生待ちを削除します

Admin:

?prefix <プレフィックス|NONE|なし> - サーバー固有のプレフィックスを設定します
?setdj <役割名|NONE|なし> - ボットコマンドを使用できる役割DJを設定します。
?settc <チャンネル名|NONE|なし> - ボットのコマンドチャンネルを設定します
?setvc <チャンネル名|NONE|なし> - 再生に使用する音声チャンネルを固定します。
?autoplaylist <name|NONE|なし> - サーバーの自動再生リストを設定

Owner:

?debug - デバッグ情報を表示します
?setavatar <url> - ボットのアバターを設定します
?setgame [action] [game] - ボットがプレイしているゲームを設定します
?setname <name> - ボットの名前を設定します。
?setstatus <status> - ボットが表示するステータスを設定します
?publist <append|delete|make|all> - 再生リスト管理
?shutdown - 安全にシャットダウン



よく使うオーナー権限⇒?repeat on ?repeat one ?repeat off ?stop
左から順に、リピートオン、1曲リピート、リピートオフ、曲を止めてキューも空にする、です。
誰でも使えるコマンド⇒?play URL ?skip
左から、URLの音楽を再生(youtube、Drop BOX)、曲をスキップ

試してみましょう。
あとbotの状況を確認するために ?settings をしょっちゅう使います。
ではかけてみます。

画像1

画像2

DropboxのURL見えるから見せたくない場合は鍵部屋かな?(未検証)

5.おまけその①-Win10編

多分、JAVAをインストールして設定ファイルをいじれば何とかなる。ファイルは右クリック→名前を付けてリンク先を保存。設定ファイルはメモ帳ではなくサクラエディタ辺りでいじること。設定ファイルが出来たらJMusicBot-0.5.0.jarをダブルクリックするだけ。でもこの方法では常時有効化はできないです。24時間365日PCつけっぱにはしないでしょ?

6.おまけその②-VPSで常時有効化する

【CentOS7】VPSを使ってDiscordにMusicBotを導入して自動起動させる方法【2020年版】様の「自動起動させる」を改造します。

cd /etc/systemd/system/
vim music.service

[Unit]
Description=MusicBot
After=network.target

[Service]
Type=simple
WorkingDirectory=JMusicBotディレクトリまでの絶対パス
ExecStart=java -jar JMusicBotディレクトリまでの絶対パス/JMusicBot-0.5.0.jar &

[Install]
WantedBy=multi-user.target

上記ファイルを作ったら以下実行。

sudo chmod 644 music.service
sudo systemctl enable music.service
sudo systemctl daemon-reload
sudo systemctl start music.service

JMusicbotがオンラインになれば成功です。お疲れ様でした!

トラベラーという昔のSFRPGのソロジャーナル化を頑張っています。印刷代の足しにしてやるぜ!という嬉しい方がいましたらメンバーシップ入って頂けると喜びます。