# WeChatFerry-Java-Bot **Repository Path**: xiaoyudi_xyz/WeChatFerry-JavaBot ## Basic Information - **Project Name**: WeChatFerry-Java-Bot - **Description**: 基于WeChatFerry-Java-Client的插件化Java微信机器人 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 1 - **Created**: 2024-11-01 - **Last Updated**: 2025-08-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # WeChatFerry Java 客户端 maven - plugin版——若小智 本项目基于 [WeChatFerry](https://github.com/lich0821/WeChatFerry) 项目,感谢原作者及所有贡献者。
免责声明【必读】 本工具仅供学习和技术研究使用,不得用于任何商业或非法行为,否则后果自负。 本工具的作者不对本工具的安全性、完整性、可靠性、有效性、正确性或适用性做任何明示或暗示的保证,也不对本工具的使用或滥用造成的任何直接或间接的损失、责任、索赔、要求或诉讼承担任何责任。 本工具的作者保留随时修改、更新、删除或终止本工具的权利,无需事先通知或承担任何义务。 本工具的使用者应遵守相关法律法规,尊重微信的版权和隐私,不得侵犯微信或其他第三方的合法权益,不得从事任何违法或不道德的行为。 本工具的使用者在下载、安装、运行或使用本工具时,即表示已阅读并同意本免责声明。如有异议,请立即停止使用本工具,并删除所有相关文件。
⚠️ **只支持 Windows** ⚠️ `声明:` 本项目是基于 WeChatFerry clients/java/wcferry 项目改造,支持插件化实现自己想要的功能。 ## 快速使用 ### 环境准备 | 名称 | 版本 | 备注 | |-------|-----------|----| | JDK/JRE | 1.8+ | √ | | 微信 | 3.9.12.17 | √ | ### 版本命名规则 ```xml ChatFerry-Java-Bot jar wxbot-plugin 0.3.0_39.3.3 WeChatFerry客户端Java-Maven-plugin版 ``` 版本命名规则:`该客户端版本_WeChatFerry版本` ### 对应微信版本一览 | 客户端版本 | 微信版本 | |-------|-------| | 0.3.x | [3.9.11.25](https://www.123865.com/s/QqyDVv-9XV0h) | gui界面也设置对应微信版本下载链接 #### 下载文件 下载框架包 请在release中下载wx-bot-client.zip。 ### 运行 下载后解压压缩包,运行根目录下的.jar文件 根据gui界面修改配置文件【dll文件位置、插件路径、[若智云Token](https://www.ruojy.top)】 点击“继续” 即可启动 ### 配置 在框架运行的情况下,访问 http://localhost:9201/swagger-ui/index.html 进入swagger,微信消息处理-接口->找到并点击获取联系人 依次点击: try it out ——> Execute 在返回结果中找到你要开启的微信组群的roomId复制 打开框架config/application.yaml文件 将如下所示 open-msg-groups 更换为你要开启的群聊 ```yaml # 本服务参数 wechat: ferry: # DLL文件位置 dll-path: xxxx\sdk.dll # socket端口 socket-port: 10086 # 需要开启消息处理的群 open-msg-groups: - 52155225442@chatroom - 45411596543@chatroom ``` ## 插件 所有的插件我将会放在 插件中心[暂无地址](#),大家需自行下载,后续将引入插件中心,允许开发者自行上传 没有插件也可以直接启动,就是没功能罢了 ### 写给插件开发者 插件开发文档请见:[插件开发接口工具包](https://gitee.com/xiaoyudi_xyz/wx-bot-dev-plugin) ## 参与开发 🚫 非开发用户不需要往下看。 开发用户:可以根据文档和错误提示,自行解决编译错误的人员。 ### 核心依赖 | 依赖 | 版本 | 说明 | |---------------|--------|----------| | Spring Boot | 2.7.18 | 基础框架 | | protobuf-java | 3.22.2 | rpc | | jna | 5.6.0 | 态访问系统本地库 | | nng-java | 1.4.0 | 本地包 | | fastjson2 | 2.0.52 | 序列化 | | dom4j | 2.1.3 | XML解析包 | | httpclient | 4.5.13 | 客户端请求 | ### clone本仓库 git clone https://gitee.com/xiaoyudi_xyz/WeChatFerry-JavaBot.git 以/clients/java/wechat-ferry-mvn为根目录打开 ### 模块结构 ``` wechat-ferry-mvn ├─config 配置文件及插件 │ ├─plugins 插件目录 │ └─application.yaml 本程序主配置文件 ├─dll 核心dll │ └─sdk.dll sdk文件 │ ├─src 源 │ └─main 重启命令 │ ├─java(com.wechat.ferry) java代码目录 │ │ ├─config 配置 │ │ ├─entity 聚合模型 │ │ │ ├─po 数据库实体(与表结构一一对应,否则请使用DTO) │ │ │ └─proto PB实体 │ │ ├─enums 枚举 │ │ ├─handle 处理层 │ │ ├─plugin 插件管理 │ │ ├─service 业务接口 │ │ │ └─impl 业务实现类 │ │ ├─swing swing/gui界面类 │ │ ├─utils 工具类 │ │ └─WeChatFerryApplication.java 启动类 │ │ │ └─resources 资源目录 │ ├─img swing图片 │ ├─libs 本程序内置依赖包 │ ├─proto proto文件(此目录打包将被排除) │ ├─win32-x86-64 依赖程序 │ └─logback-spring.xml 日志配置文件 │ ├─pom.xml POM文件 └─README.MD 说明文件 ``` ### 配置说明 本程序主配置文件为 application.yaml #### 配置参数 本程序内置参数统一前缀:wechat.ferry 所有自定义本服务的参数请都放置在此前缀下,如: ```ymal wechat: ferry: # DLL文件位置 dll-path: /dll/sdk.dll ``` ## 客户端功能清单 - 插件化扩展功能 - 获取登录二维码 - 查询登录状态 - 获取登录账号信息 - 获取消息类型 - 获取联系人 - 获取可查询数据库 - 获取数据库所有表 - 获取语音消息 - 发送文本消息(可 @) - 发送图片消息 - 发送文件消息 - 发送卡片消息 - 发送 XML 消息 - 发送 GIF 消息 - 拍一拍群友 - 转发消息 - 开启接收消息 - 关闭接收消息 - 查询数据库 - 获取朋友圈消息 - 下载图片、视频、文件 - 解密图片 - 添加群成员 - 删除群成员 - 邀请群成员 ## 待做 - [ ] 插件中心 # 交流群 微信: 添加小宇微信,发送:“WeChatFerry-JavaBot” 即可获得邀请链接加入群聊 ![img.png](img.png) QQ ![交流群](group.png)