Gewechat 是基于Gewechat项目实现的微信个人号通道,使用ipad协议登录,该协议能获取到wxid,能发送语音条消息,相比itchat协议更稳定。
api文档地址为:gewechat api
首先可以简单了解 ai-wechat-bot、gewechat服务的调用关系,如下图所示
gewechat 服务需要自行部署,ai-wechat-bot 项目只负责对接gewechat服务,请参考下方教程部署gewechat服务。
感谢gewechat交流群中的大佬 @1H
重构了镜像,让gewe镜像不依赖cgroup和docker --privilege,可以在更高版本的ubuntu、debian以及macos系统上运行。
# 从阿里云镜像仓库拉取(国内)
docker pull registry.cn-chengdu.aliyuncs.com/tu1h/wechotd:alpine
docker tag registry.cn-chengdu.aliyuncs.com/tu1h/wechotd:alpine gewe
# 或从GitHub镜像仓库拉取
docker pull ghcr.io/tu1h/wechotd/wechotd:alpine
docker tag ghcr.io/tu1h/wechotd/wechotd:alpine gewe
mkdir -p gewechat/data
docker run -itd -v gewechat/data:/root/temp -p 2531:2531 -p 2532:2532 --restart=always --name=gewe gewe
首先创建必要的数据目录:
mkdir -p gewechat/data
创建 docker-compose.yml
文件:
version: '3'
services:
gewechat:
image: gewe
container_name: gewe
volumes:
- ./gewechat/data:/root/temp
ports:
- "2531:2531"
- "2532:2532"
restart: always
运行:
docker compose up -d
看到如下日志,表示gewechat服务启动成功
在config.json中需要配置以下gewechat相关的参数:
{
"token": "", # gewechat服务的token,用于接口认证
"appId": "", # gewechat服务的应用ID
"baseUrl": "http://本机ip:2531/v2/api", # gewechat服务的API基础URL
"callbackUrl": "http://本机ip:9919/v2/api/callback/collect", # 回调URL,用于接收消息
"downloadUrl": "http://本机ip:2532/download", # 文件下载URL
}
参数说明:
token
: gewechat服务的认证token,首次登录时,可以留空,启动ai-wechat-bot服务时,会自动获取token并自动保存到config.json中appId
: gewechat服务分配的设备ID,首次登录时,可以留空,启动ai-wechat-bot服务时,会自动获取appid并自动保存到config.json中baseUrl
: gewechat服务的API基础地址,请根据实际情况配置,如果gewechat服务与ai-wechat-bot服务部署在同一台机器上,可以配置为http://本机ip:2531/v2/api
callbackUrl
: 接收gewechat消息的回调地址,请根据实际情况配置,如果gewechat服务与ai-wechat-bot服务部署在同一台机器上,可以配置为http://本机ip:9919/v2/api/callback/collect
,如无特殊需要,请使用9919端口号downloadUrl
: 文件下载地址,用于下载语音、图片等文件,请根据实际部署情况配置,如果gewechat服务与ai-wechat-bot服务部署在同一台机器上,可以配置为http://本机ip:2532/download
注意:请确保您的回调地址(callback_url),即ai-wechat-bot启动的回调服务可以被gewechat服务正常访问到。如果您使用Docker部署,需要注意网络配置,确保容器之间可以正常通信。
在config.json中需要配置以下
{
"model": "ali", # 模型名称设置为ali
"singleChatPrefix": [""], # 私聊触发前缀
"singleChatReplyPrefix": "", # 私聊回复前缀
"groupChatPrefix": ["@bot"], # 群聊触发前缀
"groupNameWhiteList": ["ALL_GROUP"], # 允许响应的群组
}
完成上述配置后,你需要确保gewechat服务已正常启动
mvn run ai-wechat-bot.jar
启动成功后,可以看到如下日志信息,注意token和appid会自动保存到config.json,无需手动保存
- gewechat 要求必须搭建服务到同省服务器或者电脑里方可正常使用,即登录微信的手机与gewechat服务必须在同一省
- gewechat 开源框架只支持下载接收到的图片,不支持下载文件
- gewechat_channel 目前暂时只支持接收文字消息,只支持发送文字消息与图片消息,后续支持的消息类型会逐步完善
- 此项目仅用于个人娱乐场景,请勿用于任何商业场景