发布应用 WeChatPadPro

Signed-off-by: Meng Sen <qyg2297248353@gmail.com>
This commit is contained in:
Meng Sen
2025-08-05 12:44:59 +08:00
parent 25f19ab757
commit 92951aa590
10 changed files with 402 additions and 0 deletions

View File

@@ -0,0 +1,144 @@
additionalProperties:
formFields:
- child:
default: ""
envKey: PANEL_DB_HOST
required: true
type: service
default: mysql
edit: true
envKey: PANEL_DB_TYPE
labelZh: MySQL 服务 (前置检查)
labelEn: Database Service (Pre-check)
required: true
type: apps
values:
- label: MySQL
value: mysql
- label: MariaDB
value: mariadb
- label: Percona
value: percona
- child:
default: ""
envKey: PANEL_REDIS_SERVICE
required: true
type: service
default: redis
envKey: PANEL_REDIS_TYPE
labelZh: Redis 服务 (前置检查)
labelEn: Redis Service (Pre-check)
required: true
type: apps
values:
- label: Redis
value: redis
- default: "/home/wechatpadpro"
edit: true
envKey: WECHATPADPRO_ROOT_PATH
labelZh: 数据持久化路径
labelEn: Data persistence path
required: true
type: text
- default: 1238
edit: true
envKey: PANEL_APP_PORT_HTTP
labelZh: WebUI 端口
labelEn: WebUI port
required: true
rule: paramPort
type: number
- default: 8080
edit: true
envKey: PANEL_APP_PORT_WECHAT
labelZh: 微信 API 端口
labelEn: WeChat API port
required: true
rule: paramPort
type: number
- default: "127.0.0.1"
edit: true
envKey: DB_HOST
labelZh: 数据库 主机
labelEn: Database Host
required: true
type: text
- default: 3306
edit: true
envKey: DB_PORT
labelZh: 数据库 端口
labelEn: Database Port
required: true
rule: paramPort
type: number
- default: "wechatpadpro"
edit: true
envKey: DB_DATABASE
labelZh: 数据库 名称
labelEn: Database Name
required: true
type: text
- default: "wechatpadpro"
edit: true
envKey: DB_USERNAME
labelZh: 数据库 用户名
labelEn: Database Username
required: true
type: text
- default: ""
edit: true
envKey: DB_PASSWORD
labelZh: 数据库 密码
labelEn: Database Password
required: true
type: password
- default: "127.0.0.1"
edit: true
envKey: REDIS_HOST
labelZh: Redis 主机
labelEn: Redis Host
required: true
type: text
- default: 6379
edit: true
envKey: REDIS_PORT
labelZh: Redis 端口
labelEn: Redis Port
required: true
rule: paramPort
type: number
- default: 0
edit: true
envKey: REDIS_DB
labelZh: Redis 索引 (0-20)
labelEn: Redis Index (0-20)
required: true
type: number
- default: ""
edit: true
envKey: REDIS_PASSWORD
labelZh: Redis 密码
labelEn: Redis Password
required: false
type: password
- default: ""
edit: true
envKey: ADMIN_KEY
labelZh: 管理员密钥
labelEn: Admin Key
required: true
type: text
- default: ""
edit: true
envKey: GH_WXID
labelZh: 推广公众号微信ID
labelEn: Promotion WeChat ID
required: false
type: text
- default: ""
edit: true
envKey: API_VERSION
labelZh: API 版本前缀
labelEn: API Version Prefix
required: false
type: text

View File

@@ -0,0 +1,43 @@
networks:
1panel-network:
external: true
services:
wechatpadpro:
image: wechatpadpro/wechatpadpro:v18.6
container_name: ${CONTAINER_NAME}
labels:
createdBy: "Apps"
restart: always
networks:
- 1panel-network
ports:
- ${PANEL_APP_PORT_HTTP}:${PANEL_APP_PORT_HTTP}
- ${PANEL_APP_PORT_WECHAT}:${PANEL_APP_PORT_WECHAT}
env_file:
- ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env}
- ${ENV_FILE:-/etc/1panel/envs/default.env}
volumes:
- ${WECHATPADPRO_ROOT_PATH}/.env:/app/.env
- ${WECHATPADPRO_ROOT_PATH}/config:/app/config
environment:
- TZ=Asia/Shanghai
- WECHAT_PORT=${PANEL_APP_PORT_WECHAT}
- PORT=${PANEL_APP_PORT_HTTP}
- DEBUG=false
- HOST=0.0.0.0
- MCP_PORT=8099
- REDIS_MAX_IDLE=30
- REDIS_MAX_ACTIVE=100
- REDIS_IDLE_TIMEOUT=5000
- REDIS_MAX_CONN_LIFETIME=3600
- REDIS_CONNECT_TIMEOUT=5000
- REDIS_READ_TIMEOUT=10000
- REDIS_WRITE_TIMEOUT=10000
- WORKER_POOL_SIZE=500
- MAX_WORKER_TASK_LEN=1000
- WEB_DOMAIN=localhost:1238
- WEB_TASK_NAME=
- WEB_TASK_APP_NUMBER=
- NEWS_SYN_WXID=true
- DT=true

View File

@@ -0,0 +1,2 @@
# copyright© 2024 XinJiang Ms Studio
ENV_FILE=.env

View File

@@ -0,0 +1,2 @@
# copyright© 2024 XinJiang Ms Studio
TZ=Asia/Shanghai

View File

@@ -0,0 +1,23 @@
#!/bin/bash
if [ -f .env ]; then
source .env
# setup-1 add default values
CURRENT_DIR=$(pwd)
sed -i '/^ENV_FILE=/d' .env
sed -i '/^GLOBAL_ENV_FILE=/d' .env
echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env
echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env
mkdir -p "$WECHATPADPRO_ROOT_PATH"
# WECHATPADPRO_ROOT_PATH/.env 创建空文件
touch "$WECHATPADPRO_ROOT_PATH/.env"
echo "Check Finish."
else
echo "Error: .env file not found."
fi

View File

@@ -0,0 +1,10 @@
#!/bin/bash
if [ -f .env ]; then
source .env
echo "Check Finish."
else
echo "Error: .env file not found."
fi

View File

@@ -0,0 +1,17 @@
#!/bin/bash
if [ -f .env ]; then
source .env
# setup-1 add default values
CURRENT_DIR=$(pwd)
sed -i '/^ENV_FILE=/d' .env
sed -i '/^GLOBAL_ENV_FILE=/d' .env
echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env
echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env
echo "Check Finish."
else
echo "Error: .env file not found."
fi

147
apps/wechatpadpro/README.md Normal file
View File

@@ -0,0 +1,147 @@
# WeChatPadPro
基於 WeChat Pad 協議的高級管理工具v861
![WeChatPadPro](https://file.lifebus.top/imgs/wechatpadpro_cover.png)
![](https://img.shields.io/badge/%E6%96%B0%E7%96%86%E8%90%8C%E6%A3%AE%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%E5%B7%A5%E4%BD%9C%E5%AE%A4-%E6%8F%90%E4%BE%9B%E6%8A%80%E6%9C%AF%E6%94%AF%E6%8C%81-blue)
## 简介
### 🌟 主要特點
#### 🛡️ 安全可靠
採用最新的 WeChat Pad 協議,確保帳號安全
#### 🔄 自動化處理
支援訊息自動回覆、群管理等自動化操作
#### 🎯 精準控制
提供細粒度的功能控制和配置選項
#### 🔌 擴展性強
支援外掛系統,可自定義擴展功能
#### 📊 資料同步
支援多裝置資料同步,確保資訊統一
### 🎯 適用場景
#### 👥 個人用戶
訊息管理、自動回覆、防撤回等
#### 🏢 企業用戶
客戶管理、批量操作、資料分析等
#### 🤖 開發者
二次開發、功能擴展、自動化整合等
## 功能特性
WeChatPadPro 是基於 WeChat Pad 協議的高級 WeChat 管理工具,支援以下功能:
> 🔐 微信登录验证码API功能 ⭐ 重点功能
### 多种登录方式支持
✅ 二维码登录 - 支持获取登录二维码,绕过验证码流程
✅ 验证码登录 - 自动处理验证码提交无需手动获取ticket
✅ 短信登录 - 支持短信验证码登录方式
✅ 设备登录 - 支持A16数据登录和设备ID登录
### 自动验证码处理
✅ 自动获取ticket - 系统自动从Redis或状态缓存中获取ticket
✅ 自动生成data62 - 如果data62为空系统会自动根据设备信息生成
✅ 多重数据源 - 从Redis、状态缓存、用户信息、连接管理器等多个来源获取ticket
✅ 智能参数验证 - 自动检查必要参数,提供友好错误提示
### 实时状态检测
✅ 登录状态监控 - 实时检测扫码状态和登录进度
✅ 验证码状态跟踪 - 自动识别是否需要验证码
✅ 连接健康检查 - 实时监控连接状态,自动检测连接健康度
✅ 心跳监控 - 增加心跳时间记录超过10秒无心跳认为连接不健康
### RabbitMQ消息队列支持
✅ 智能重连机制 - 只在连接确实断开时才重连,避免频繁重连
✅ 连接健康检查 - 实时监控连接状态,自动检测连接健康度
✅ 并发安全 - 使用互斥锁确保重连过程的线程安全
✅ 消息持久化 - 确保消息在服务器重启后不丢失
### 多账号管理
✅ 多账号并行 - 支持同时管理多个微信账号
✅ 账号隔离 - 每个账号独立运行,互不影响
✅ 统一管理 - 通过统一接口管理所有账号状态
### 自动Token刷新
✅ 自动刷新 - 系统自动检测并刷新过期的Token
✅ 无缝切换 - Token刷新过程中不影响正常使用
✅ 状态同步 - 刷新后自动同步所有相关状态
### 🔄 API接口列表
#### 登录相关接口
> 获取微信登录二维码(绕过验证码)
>
> POST `/api/login/qr/newx`
> 自动处理验证码提交
>
> POST `/api/login/AutoVerificationcode`
> 检测扫码登录状态
>
> GET `/api/login/CheckLoginStatus`
> 自动处理验证码(推荐)
>
> POST `/api/login/verify/auto`
> 手动处理验证码
>
> POST `/api/login/verify/manual`
#### 状态检测接口
> 获取在线状态
>
> GET `/api/login/GetLoginStatus`
> 初始化状态
>
> GET `/api/login/GetInItStatus`
> 检测微信登录环境
>
> GET `/api/login/CheckCanSetAlias`
#### 设备管理接口
> 设备登录
>
> POST `/api/login/DeviceLogin`
> A16数据登录
>
> POST `/api/login/A16Login`
> 短信登录
>
> POST `/api/login/SmsLogin`
---
![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png)

View File

@@ -0,0 +1,14 @@
additionalProperties:
key: wechatpadpro
name: WeChatPadPro
tags:
- WebSite
- Local
shortDescZh: 基于 WeChat Pad 的高级微信管理工具
shortDescEn: A high-level WeChat management tool based on WeChat Pad
type: website
crossVersionUpdate: true
limit: 0
website: https://github.com/WeChatPadPro/WeChatPadPro/
github: https://github.com/WeChatPadPro/WeChatPadPro/
document: https://github.com/WeChatPadPro/WeChatPadPro/

BIN
apps/wechatpadpro/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 116 KiB