圣经
不使用,那开发的用处何在?不提交bug,那 issue的意义在哪里?解决问题是开发者应有的义务,有问题,那就要去解决完善,你的话我甚至觉得你没参与过开发,你如何论证我发视频是错误的?请问你有什么办法解决目前的协议问题?B站不引人注目,那请问QQ群是谁的地盘?我做视频为了引导开发者解决问题,请问你做了什么?如果你真想为bot做贡献,应该去提交is和pr,而不是在这里当鸵鸟以为不用就没人管了,我希望你作为一个开发者面对问题应该去解决它而不是把头埋进沙子假装看不见它,你不让我们用bot的居心何在?
本文主要用于Ubuntu22.04系统安装Chronocat和喵崽
Chronocat+Trss崽安装教程请查看:基于Chronocat+TRSS-Yunzai+ws-plugin的免签名云崽机器人部署办法
前提条件
所需项目
- Chronocat文档:https://chronocat.vercel.app/install/
- 喵崽:https://gitee.com/yoimiya-kokomi/Miao-Yunzai
- miao-plugin(安装喵崽所要):https://gitee.com/yoimiya-kokomi/Miao-Yunzai
- ws-plugin:https://gitee.com/xiaoye12123/ws-plugin
所需环境
- Docker
- 喵崽所需要的Git、Node、Npm、Pnpm、Redis等
安装Docker
脚本安装
- 阿里云脚本
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
- 官方脚本
$ curl -fsSL https://test.docker.com -o test-docker.sh
sudo sh test-docker.sh
官方教程
自行测试
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
# Add the repository to Apt sources:
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
安装完使用docker --version
命令查看版本,出现版本号即为安装成功。
使用service docker start
命令启动docker,service docker status
查看docker状态
部署Chronocat
官方文档:https://chronocat.vercel.app/install/
官方仓库:https://github.com/chrononeko/chronocat
因为是使用的Ubuntu服务器,没有安装图形化界面,所以使用docker来部署Chronocat。
下面各项参数参考官方解释:https://chronocat.vercel.app/install/docker/official/#%E5%8F%82%E6%95%B0
docker run -d \
--name chronocat \
--restart=always \
-p 16530:16530 \
-p 5500:5500 \
-p 16340:16340 \
-v ./config:/chrono/.chronocat/config \
-v ./qq:/chrono/.config/QQ \
chronoc/at
执行以后可以看到已经在运行了
登录QQ
上面我们运行了docker镜像,接着执行docker logs -f chronocat
查看日志。日志应该如下图所示:
可以看到有一个链接,将链接里面的127.0.0.1替换为你的公网ip。例如我的虚拟机ip是192.168.116.128,浏览器打开网址(云服务器需要开放相应端口,自行查找教程)
扫码之后页面不会有什么反应,这是正常的,访问ip:5500,出现下面界面就说明使用成功了,ctrl+c
退出docker日志界面
获取Chronocat AccessToken
登录成功之后在/root
(根目录)目录下会出现config
和qq
两个文件夹,进入到config文件夹,打开chronocat.yml
文件
很明显的可以看到有一个token,例如我的就是:ff691153edaab3a5c83ab7*********
,这个token就是AccessToken,复制出来备用
# yaml-language-server: $schema=https://chronocat.vercel.app/config-v0.schema.json # ################################################################ # Chronocat 配置文件 ################################################################ # # 你好! # # 这是 Chronocat 的配置文件。Chronocat 的所有配置以及每个账号 # 的独立配置都存放在这个文件里。 # # 这是 Chronocat 配置的文档: # https://chronocat.vercel.app/config # 如果还没有看过的话,请先看一下! # # 如果你现在并不是使用完整功能的编辑器编辑此文件的话, # 我们推荐你使用一款完整功能的编辑器来编辑! # 这样的编辑器在你不小心改错配置的时候会智能地给出提示。 # 想要了解更多请查看上面的文档 ↑ # ################################################################ # 全局配置 ################################################################ # # 下面的配置是通用的!如果你只登录一个账号, # 那么只需修改下面这部分配置即可! # ################################################################ # servers:服务配置 # # 配置 Chronocat 开启的服务。需要尤其注意服务列表的格式哦~ servers: # type:服务类型 # # 开启 red 服务只需要指定 type 为 red 即可。 - type: red # token:服务密码 # # Chronocat 已经自动生成了随机密码。要妥善保存哦! # 客户端使用服务时需要提供这个密码! token: 'ff691153edaab3a5c83ab7*********' # port:服务端口 # # Chronocat 开启 red 服务的端口,默认为 16530。 port: 16530 # 开启 satori 服务与上面相同,指定 type 为 satori 即可。 - type: satori # 这里的 token 与上面的相同, # 但你也可以进行更换,让每个服务使用不同的服务密码。 token: 'ff691153edaab3a5c83ab7*********' # satori 服务的默认端口为 5500。 port: 5500 # ################################################################ # 账号配置 ################################################################ overrides: ############################################################## # # 下面的配置是每个账号专属的!修改下面的配置会覆盖上面的配置哦~ # 修改的时候要特别注意:账号前空两格,账号内配置要空四格哦! # ############################################################## 10000: servers: - type: red token: 'ff691153edaab3a5c83ab7*********' port: 16531 - type: satori token: 'ff691153edaab3a5c83ab7*********' port: 5501
安装喵崽+miao-plugin
安装node,pnpm,git,redis等,请查看我的另一篇文章:https://blog.hanhanz.top/archives/553.html
# 使用Gitee git clone --depth=1 https://gitee.com/yoimiya-kokomi/Miao-Yunzai.git cd Miao-Yunzai git clone --depth=1 https://gitee.com/yoimiya-kokomi/miao-plugin.git ./plugins/miao-plugin/
安装ws-plugin
#gitee git clone --depth=1 https://gitee.com/xiaoye12123/ws-plugin.git ./plugins/ws-plugin/ pnpm install --filter=ws-plugin
配置ws-plugin
生成配置文件
安装好喵崽和ws-plugin插件并安装好依赖以后,在喵崽根目录执行下面代码,会在根目录生成一个apps.js
curl -o "./apps.js" "https://gitee.com/Zyy955/Yunzai-Bot-plugin/raw/main/apps.js"
接着直接执行一次node apps.js
,看到已经加载成功了,这一步是为了生成ws-plugin的配置文件,这里先ctrl c停止运行。
配置accesstoken
找到喵崽根目录/plugins/ws-plugin/config/config文件夹,打开里面的ws-config.yaml
文件,将下面内容粘贴到文件最下方,并修改相应内容
- name: chronocat address: 127.0.0.1:16530 type: 4 accessToken: 你的AccessToken reconnectInterval: 5 maxReconnectAttempts: 0 uin: 机器人QQ closed: false
配置好保存之后 ,返回喵崽根目录执行node apps
即可,看到机器人QQ号就说明成功了。
设置主人
编辑喵崽根目录/config/config/other.yaml文件,在masterQQ那里添加主人账号(记得注意格式)。
masterQQ: - 主人QQ号
这样就配置完成了,可以和以前一样安装插件了。