Delete README.md
Browse files
README.md
DELETED
@@ -1,200 +0,0 @@
|
|
1 |
-
# Yunzai-Bot-Web
|
2 |
-
|
3 |
-
> 基于 Web 的 Yunzai-Bot 发行版,不依赖 QQ,极易部署!
|
4 |
-
|
5 |
-
Yunzai-Bot 是查询原神游戏信息的 QQ 机器人,但是 QQ 登录比较麻烦(小号、扫码、要求和设备同局域网..)。对于单纯只想查询原神面板信息的用户来说,或许并不想处理 QQ 登录的问题。
|
6 |
-
|
7 |
-
**Yunzai-Bot-Web** 提供了一种更轻量的部署方案!通过解除 Yunzai-Bot 对 QQ 的依赖,**Yunzai-Bot-Web** 可以进行零手工配置的部署,一行 `docker compose up -d` 即可开始使用~
|
8 |
-
|
9 |
-
![demo](./doc/assets/demo.png)
|
10 |
-
|
11 |
-
## 快速上手
|
12 |
-
|
13 |
-
安装最新版本的 [Docker](https://docs.docker.com/engine/install/)
|
14 |
-
|
15 |
-
在合适的文件夹下新建 [docker-compose.yml](https://github.com/117503445/yunzai-bot-web/blob/master/docker-compose.yml)
|
16 |
-
|
17 |
-
```yaml
|
18 |
-
version: '3'
|
19 |
-
|
20 |
-
services:
|
21 |
-
yunzai-web:
|
22 |
-
image: registry.cn-hangzhou.aliyuncs.com/117503445-mirror/yunzai-web
|
23 |
-
container_name: yunzai-web
|
24 |
-
restart: unless-stopped
|
25 |
-
ports:
|
26 |
-
- 8080:8080
|
27 |
-
depends_on:
|
28 |
-
redis:
|
29 |
-
condition: service_healthy
|
30 |
-
volumes:
|
31 |
-
- ./data/yunzai-web/yunzai-bot-data:/workspace/Yunzai-Bot/data # data of `Yunzai-Bot`
|
32 |
-
- ./data/yunzai-web/be-images:/workspace/Yunzai-Bot/web-data/images # images of backend
|
33 |
-
|
34 |
-
- ./config/plugins:/workspace/Yunzai-Bot/user_plugins # plugins of `Yunzai-Bot`
|
35 |
-
# - ./config/config.json:/workspace/Yunzai-Bot/config.json # config of backend, unconment this line when config.json is provided
|
36 |
-
|
37 |
-
- ./dev-data/vsc:/root/.vscode-server # vscode-server cache
|
38 |
-
redis:
|
39 |
-
image: registry.cn-hangzhou.aliyuncs.com/117503445-mirror/redis:alpine
|
40 |
-
restart: unless-stopped
|
41 |
-
volumes:
|
42 |
-
- ./data/redis/data:/data
|
43 |
-
- ./data/redis/logs:/logs
|
44 |
-
healthcheck:
|
45 |
-
test: [ "CMD", "redis-cli", "PING" ]
|
46 |
-
start_period: 10s
|
47 |
-
interval: 5s
|
48 |
-
timeout: 1s
|
49 |
-
```
|
50 |
-
|
51 |
-
在此文件夹下运行命令
|
52 |
-
|
53 |
-
```sh
|
54 |
-
docker compose up -d
|
55 |
-
```
|
56 |
-
|
57 |
-
访问 <http://localhost:8080>
|
58 |
-
|
59 |
-
Enjoy :)
|
60 |
-
|
61 |
-
## 使用技巧
|
62 |
-
|
63 |
-
### 插件管理
|
64 |
-
|
65 |
-
以 [miao-plugin](https://gitee.com/yoimiya-kokomi/miao-plugin) 插件为例
|
66 |
-
|
67 |
-
#### 插件安装
|
68 |
-
|
69 |
-
先将插件下载至 `./config/plugins/` 目录
|
70 |
-
|
71 |
-
```sh
|
72 |
-
git clone --depth=1 https://gitee.com/yoimiya-kokomi/miao-plugin.git ./config/plugins/miao-plugin
|
73 |
-
```
|
74 |
-
|
75 |
-
重启容器,应用插件更新
|
76 |
-
|
77 |
-
```sh
|
78 |
-
docker compose down && docker compose up -d
|
79 |
-
```
|
80 |
-
|
81 |
-
#### 插件升级
|
82 |
-
|
83 |
-
拉取更改
|
84 |
-
|
85 |
-
```sh
|
86 |
-
cd ./config/plugins/miao-plugin
|
87 |
-
git pull
|
88 |
-
```
|
89 |
-
|
90 |
-
重启容器,应用插件更新
|
91 |
-
|
92 |
-
```sh
|
93 |
-
docker compose down && docker compose up -d
|
94 |
-
```
|
95 |
-
|
96 |
-
|
97 |
-
### 帮助
|
98 |
-
|
99 |
-
输入 `#帮助` 查看 Yunzai 的帮助
|
100 |
-
|
101 |
-
输入 `#喵喵帮助` 查看喵喵插件的帮助
|
102 |
-
|
103 |
-
![help](./doc/assets/help.png)
|
104 |
-
|
105 |
-
### 绑定 uid
|
106 |
-
|
107 |
-
![bind-uid](./doc/assets/bind-uid.png)
|
108 |
-
|
109 |
-
### 绑定 ck
|
110 |
-
|
111 |
-
ck 指的是 [米游社](https://www.miyoushe.com/ys) 的 cookie。Yunzai 在进行某些信息查询时需要用到 ck。
|
112 |
-
|
113 |
-
#### 油猴脚本[推荐]
|
114 |
-
|
115 |
-
可以通过油猴脚本,便捷的将 ck 发送至 Yunzai-Web。
|
116 |
-
|
117 |
-
详情见 <https://github.com/117503445/yunzai-bot-web/tree/master/script/miyoushe-token-sender>
|
118 |
-
|
119 |
-
#### 手动
|
120 |
-
|
121 |
-
在电脑上,登录 [米游社](https://www.miyoushe.com/ys),打开浏览器的开发者工具,抓包,得到 cookie
|
122 |
-
|
123 |
-
![get-ck](./doc/assets/get-ck.png)
|
124 |
-
|
125 |
-
然后将 cookie 直接发送即可完成绑定
|
126 |
-
|
127 |
-
![bind-ck](./doc/assets/bind-ck.png)
|
128 |
-
|
129 |
-
### 多用户
|
130 |
-
|
131 |
-
默认情况下 **Yunzai-Bot-Web** 只支持单个原神用户。可以通过本节的配置,开启安全的多原神用户功能。
|
132 |
-
|
133 |
-
准备配置文件 `./config/config.json`
|
134 |
-
|
135 |
-
以下为配置文件示例。
|
136 |
-
|
137 |
-
```json
|
138 |
-
{
|
139 |
-
"multiUser": false,
|
140 |
-
"users": {
|
141 |
-
"user1": {
|
142 |
-
"password": "pass1",
|
143 |
-
"qq": "10000000"
|
144 |
-
},
|
145 |
-
"user2": {
|
146 |
-
"password": "pass2",
|
147 |
-
"qq": "10000001"
|
148 |
-
}
|
149 |
-
}
|
150 |
-
}
|
151 |
-
```
|
152 |
-
|
153 |
-
定义了 2 个用户,分别是
|
154 |
-
|
155 |
-
- 用户名 user1 密码 pass1 QQ号 10000000
|
156 |
-
- 用户名 user2 密码 pass2 QQ号 10000001
|
157 |
-
|
158 |
-
QQ号字段不要求和真实 QQ 号一致,只要不同用户的 QQ 字段互相不同即可。其中 `10000000` 是 magic number, 表示 `user1` 是管理员。因为 `10000001` 不是 `10000000`, 所以 `user2` 是普通用户。
|
159 |
-
|
160 |
-
然后挂载配置文件即可
|
161 |
-
|
162 |
-
```yaml
|
163 |
-
volumes:
|
164 |
-
- ./config/config.json:/workspace/Yunzai-Bot/config.json
|
165 |
-
```
|
166 |
-
|
167 |
-
目前采用了 Basic Auth 方案,建议在网关上配置 HTTPS 以保障安全性。
|
168 |
-
|
169 |
-
### 米游社验证
|
170 |
-
|
171 |
-
当使用 `#体力` 等米游社功能,出现米游社验证错误时,代表当前账号被米游社风控系统盯上了。可以下载胡桃工具箱,登录自己账号后,点击 实时便笺 - 验证当前用户与角色,就能解决米游社账号的风控问题了。
|
172 |
-
|
173 |
-
可以参考 [胡桃工具箱文档](https://hut.ao/zh/advanced/exceptions.html#%E7%8A%B6%E6%80%81-1034-%E9%AA%8C%E8%AF%81%E5%A4%B1%E8%B4%A5)
|
174 |
-
|
175 |
-
### 镜像更新
|
176 |
-
|
177 |
-
当 `Yunzai-Bot` 或 `yunzai-bot-web` 更新时,需要通过本节描述的方法进��镜像更新。其中 `Yunzai-Bot` 基本已经停更了;`yunzai-bot-web` 修 bug 或者增添新功能(比较少见) 时会更新。
|
178 |
-
|
179 |
-
```sh
|
180 |
-
docker compose pull
|
181 |
-
docker compose up -d
|
182 |
-
```
|
183 |
-
|
184 |
-
### 脚本开发
|
185 |
-
|
186 |
-
可以编写脚本,进行一些自动化操作。例如 [yunzai-web-downloader](./script/yunzai-web-downloader/) 下载指定角色的面板、圣遗物,就不需要手动在 Web 面板上一个个问过来了。
|
187 |
-
|
188 |
-
### 调试
|
189 |
-
|
190 |
-
当 `yunzai-web` 出现非预期的故障时,需要进行调试。具体方法参考 [调试方法](./doc/dev.md)。
|
191 |
-
|
192 |
-
## 致谢
|
193 |
-
|
194 |
-
[Yunzai-Bot](https://gitee.com/Le-niao/Yunzai-Bot.git) 提供机器人框架
|
195 |
-
|
196 |
-
[miao-plugin](https://github.com/yoimiya-kokomi/miao-plugin.git) 提供高质量的原神信息查询插件
|
197 |
-
|
198 |
-
[chatgpt-web](https://github.com/Chanzhaoyu/chatgpt-web) 提供前端的基础框架
|
199 |
-
|
200 |
-
[胡桃工具箱](https://hut.ao/zh/) 提供米游社验证解决方案
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|