接着上篇部署ts服务器文章,部署音乐机器人TS3AudioBot总共有两种方法,一种是直接安装,第二种是使用docker安装。
本文以Linux系统1panel面板或宝塔面板为例。
第一种方法:直接安装
1、下载安装包
前往Github下载安装包,例如TS3AudioBot_linux_x64.tar.gz。安装方法在Github中也有。
Github:https://github.com/Splamy/TS3AudioBot
下载哪个版本由所使用的服务器决定。可以在终端使用指令 lscpu 查看。
2、安装前置ffmpeg
在Github中有介绍如何安装ffmpeg。以下只提及Linux系统的安装方式。
Linux安装:
Ubuntu/Debian
sudo apt-get install libopus-dev ffmpeg
Arch Linux
sudo pacman -S opus ffmpeg
CentOS 7
sudo yum -y install epel-release
sudo rpm -Uvh https://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
sudo yum -y install ffmpeg opus-devel
注:在宝塔面板软件商店中有一个ffmpeg管理器,可以一键安装ffmpeg。
2、安装音乐机器人
上传安装包至服务器,上传到哪里取决于你自己。(例如我上传到/mnt/ts3adb/文件夹内)
然后解压安装包,得到一个文件夹和一个文件:WebInterface、TS3AudioBot。
使用终端打开安装目录,例如 cd /mnt/ts3adb
然后用指令运行安装程序,如./TS3AudioBot,随后如图设置。
安装完成后会出现几个新的文件和文件夹。
Bots文件夹
rights.toml文件
ts3audiobot.toml文件
a、配置rights.toml文件
连接服务器,复制服主的UID。
打开rights.toml文件,找到#Playing rights下的useruid ,在后面填上服主的UID,别忘了双引号。
b、创建与配置bot机器人
打开 /bots/ 目录,有一个已经生成了的default文件夹(没有就自己新建一个),打开该文件夹,里面有一个bot.toml文件(没有就自己新建一个),这个文件就是该机器人的配置文件。
将ts3audiobot.toml的内容复制到bot.toml中,然后进行配置与修改。
将run后面改成true
在[bot.connect]下输入服务器地址
在[connect]下修改机器人名称
开启网页端控制
在[web]下输入端口,例如58913,然后在防火墙开放此端口,随后就可以使用网页控制机器人了。
在ts中向机器人私聊,输入 !api tocken,机器人会返回一串密钥,在网页端输入该密钥就可以登入并控制机器人了。
播放本地音乐:将音乐上传到服务器,并复制音乐文件的路径,在网页端输入文件路径就可以添加音乐到播放列表。
创建歌单:在网页端可以创建歌单。如果无法创建歌单,可以尝试在机器人所在目录(例如/bots/default/)创建一个名为playlists的新的文件夹。
添加新的机器人
在 /bots/ 新建一个文件夹(名字随意),在里面新建一个bot.toml文件,配置机器人参考上文。
多个机器人效果
第二种方法:docker
安装前置ffmpeg,方法和上文一样。
Github:https://github.com/getdrunkonmovies-com/TS3AudioBot_docker
Github中有安装方法。
1、拉取docker
在终端输入 docker pull ancieque/ts3audiobot
2、设置安装目录
在终端中输入以下命令。
mkdir -p $(pwd)/data
其中 $(pwd) 为安装目录,例如 mkdir -p /mnt/ts3adb/data
chown -R 9999:9999 $(pwd)/data
其中 $(pwd) 为安装目录,例如 chown -R 9999:9999 /mnt/ts3adb/data
3、安装机器人
在终端中输入命令
docker run --rm -v $(pwd)/data:/data -it ancieque/ts3audiobot:0.12.0
$(pwd) 为安装目录,最后的版本号输入最新的(在github看)。
安装完后按ctrl+C关闭机器人。打开安装目录,和上文一样进行配置即可。
配置完成后在终端输入
docker run --name ts3audiobot -d -v $(pwd)/data:/data ancieque/ts3audiobot:0.12.0
以守护进程运行机器人。
一些注意事项
如果都是以docker安装ts服务端和机器人并且安装在同一个服务器,需要留意两个容器之间能否互相访问。
例如在宝塔面板中,需要在容器设置中加入同一个网络。