From 21a65dabc02784c3ff9e688e004e771e0bc4f000 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=87=8C=E8=8E=9E=7E=28=3D=5E=E2=96=BD=5E=3D=29?= Date: Tue, 17 Oct 2023 05:43:23 -0500 Subject: [PATCH 1/3] =?UTF-8?q?=E5=8A=A0=E5=85=A5=20Nofated095/Q2TG=20?= =?UTF-8?q?=E7=9A=84=E9=93=BE=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index ac6c2b4f..35db1713 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,9 @@ QQ 群与 Telegram 群相互转发的 bot 请看 [Wiki](https://github.com/Clansty/Q2TG/wiki/%E5%AE%89%E8%A3%85%E9%83%A8%E7%BD%B2) -v2.x 版本同时需要机器人账号以及登录 Telegram 个人账号,需要自己注册 Telegram API ID,并且还需要配置一些辅助服务。如果没有条件,可以使用 [v1.x](https://github.com/Clansty/Q2TG/tree/main) 版本 +v2.x 版本同时需要机器人账号以及登录 Telegram 个人账号,需要自己注册 Telegram API ID,并且还需要配置一些辅助服务。 + +如果你主要使用群组模式并且不想使用个人账号登录 UserBot,可以使用去除 UserBot 的 [Nofated095/Q2TG]([https://github.com/Clansty/Q2TG/tree/main](https://github.com/Nofated095/Q2TG)) 版本。一些功能例如撤回检测将无法使用 ## 支持的消息类型 From 8c3edf67e1cd669174e5a81c9b011ab094ce0389 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=87=8C=E8=8E=9E=7E=28=3D=5E=E2=96=BD=5E=3D=29?= Date: Tue, 17 Oct 2023 05:43:46 -0500 Subject: [PATCH 2/3] fix --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 35db1713..ed4e0212 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ QQ 群与 Telegram 群相互转发的 bot v2.x 版本同时需要机器人账号以及登录 Telegram 个人账号,需要自己注册 Telegram API ID,并且还需要配置一些辅助服务。 -如果你主要使用群组模式并且不想使用个人账号登录 UserBot,可以使用去除 UserBot 的 [Nofated095/Q2TG]([https://github.com/Clansty/Q2TG/tree/main](https://github.com/Nofated095/Q2TG)) 版本。一些功能例如撤回检测将无法使用 +如果你主要使用群组模式并且不想使用个人账号登录 UserBot,可以使用去除 UserBot 的 [Nofated095/Q2TG](https://github.com/Nofated095/Q2TG) 版本。一些功能例如撤回检测将无法使用 ## 支持的消息类型 From 252b17cc085e78f3e0a200e439d0fd15ea1e1ab1 Mon Sep 17 00:00:00 2001 From: clansty Date: Tue, 17 Oct 2023 20:38:31 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E6=94=AF=E6=8C=81=E7=94=A8=E7=8E=AF?= =?UTF-8?q?=E5=A2=83=E5=8F=98=E9=87=8F=E5=AE=9A=E4=B9=89=E7=AD=BE=E5=90=8D?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E5=99=A8=E5=9C=B0=E5=9D=80=E5=B9=B6=E5=9C=A8?= =?UTF-8?q?=20docker=20compose=20=E4=B8=AD=E5=A2=9E=E5=8A=A0=E7=AD=BE?= =?UTF-8?q?=E5=90=8D=E6=9C=8D=E5=8A=A1=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose.yaml | 10 ++++++++++ src/controllers/SetupController.ts | 19 ++++++++++++------- src/models/Instance.ts | 4 ++-- 3 files changed, 24 insertions(+), 9 deletions(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index 15d33722..23d891ba 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -23,6 +23,13 @@ services: container_name: zincsearch image: 'public.ecr.aws/zinclabs/zinc:latest' restart: unless-stopped + sign: + image: xzhouqd/qsign:core-1.1.9 + restart: unless-stopped + environment: + # 需要与下方的 SIGN_VER 同步 + # 配置请参考 https://hub.docker.com/r/xzhouqd/qsign + - BASE_PATH=/srv/qsign/qsign/txlib/8.9.71 q2tg: image: ghcr.io/clansty/q2tg:rainbowcat container_name: main_q2tg @@ -30,6 +37,7 @@ services: depends_on: - postgres - zinclabs + - sign volumes: - ./data:/app/data environment: @@ -42,6 +50,8 @@ services: - ZINC_URL=http://zinclabs:4080 - ZINC_USERNAME=admin - ZINC_PASSWORD=password + - SIGN_API=http://sign:8080/sign?key=114514 + - SIGN_VER=8.9.71 # 与上方 sign 容器的配置同步 # 要支持转发时自动识别语音,请设置以下参数 - BAIDU_APP_ID= - BAIDU_API_KEY= diff --git a/src/controllers/SetupController.ts b/src/controllers/SetupController.ts index b6f02feb..683afdfe 100644 --- a/src/controllers/SetupController.ts +++ b/src/controllers/SetupController.ts @@ -85,13 +85,18 @@ export default class SetupController { ]); const platform = setupHelper.convertTextToPlatform(platformText); - let signApi = await this.setupService.waitForOwnerInput('请输入签名服务器地址', [ - [Button.text('不需要签名服务器', true, true)], - ]); - signApi = setupHelper.checkSignApiAddress(signApi); + let signApi: string; + + if (!process.env.SIGN_API) { + signApi = await this.setupService.waitForOwnerInput('请输入签名服务器地址', [ + [Button.text('不需要签名服务器', true, true)], + ]); + signApi = setupHelper.checkSignApiAddress(signApi); + } + + let signVer: string; - let signVer = "" - if (signApi !== "") { + if (signApi && !process.env.SIGN_VER) { signVer = await this.setupService.waitForOwnerInput('请输入签名服务器版本,当前支持安卓(8.9.63、8.9.68、8.9.70)、Tim(3.5.1、3.5.2)', [ [Button.text('8.9.63', true, true)], [Button.text('8.9.68', true, true)], @@ -99,7 +104,7 @@ export default class SetupController { [Button.text('3.5.1', true, true)], [Button.text('3.5.2', true, true)], ]); - }; + } let password = await this.setupService.waitForOwnerInput('请输入密码', undefined, true); password = md5Hex(password); diff --git a/src/models/Instance.ts b/src/models/Instance.ts index 4d38b9ea..f5e1bdf5 100644 --- a/src/models/Instance.ts +++ b/src/models/Instance.ts @@ -121,8 +121,8 @@ export default class Instance { uin: Number(this.qq.uin), password: this.qq.password, platform: this.qq.platform, - signApi: this.qq.signApi, - signVer: this._qq.signVer, + signApi: this.qq.signApi || process.env.SIGN_API, + signVer: this.qq.signVer || process.env.SIGN_VER, onQrCode: async (file) => { await this.ownerChat.sendMessage({ message: '请使用已登录这个账号的手机 QQ 扫描这个二维码授权',