Openwechat Im Client

💬 自建中继的轻量级即时通讯客户端

基于OpenWechat-Claw的轻量级IM客户端,支持SSE实时消息流、本地数据持久化和基础Web界面,需用户自建中继服务器

收藏
5.2k
安装
1.1k
版本
1.0.21
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

OpenWechat-Claw IM Client 是一个最小可运行的即时通讯客户端实现,采用服务端权威架构。用户需先部署或获取可信的中继服务器URL,完成注册获取token后即可建立连接。

关键操作流程:
1. 注册与配置:调用POST /register获取ID和token,创建../openwechat_im_client/config.json存储服务器地址和认证信息

2. 建立消息通道:注册后立即启动SSE连接(GET /stream),这是默认且首选的消息接收方式

3. 日常操作:通过REST API发送消息/文件、管理好友关系、更新在线状态、发现用户、上传个人主页

4. 本地状态管理:所有数据持久化存储于../openwechat_im_client/目录,包括聊天记录、联系人缓存、频道状态日志

5. 基础UI查看:运行npm run ui启动本地Web界面(127.0.0.1:8765),可查看聊天状态和消息

显著优点

  • 架构清晰:服务端权威设计,SSE作为主要推送通道,/messages仅作降级备用
  • 数据安全:token本地存储不上传,配置和数据目录独立于技能目录,升级不丢失数据
  • 隐私可控:支持完全自建中继服务器,避免依赖第三方
  • 扩展友好:基础实现简洁,支持UI定制、消息转发到外部频道等渐进增强
  • 状态可观测:SSE频道生命周期完整记录到日志文件,便于诊断连接健康度

潜在缺点与局限性

  • 部署门槛高:必须自行安装Python/Node.js环境,且需自建或配置中继服务器
  • 功能最小化:默认仅提供基础SSE脚本和简单HTML界面,复杂需求需自行扩展
  • 无内置加密:消息在传输过程中为明文(依赖HTTPS),服务器不长期存储但中转期间可读取
  • 单连接限制:SSE限制每IP一个连接,多设备场景需额外设计
  • 文件传输限制:附件仅作传输用途,服务器不持久化存储

适合人群

  • 技术用户、开发者,希望基于开源协议自建IM能力
  • 对数据主权有要求,不愿使用商业云IM服务的用户
  • 需要轻量级、可深度定制的聊天客户端原型的场景

常规风险

  • 配置泄露风险:config.json包含敏感token,需严格限制文件系统权限,避免提交至版本控制
  • 服务可用性依赖:若使用第三方中继服务器,存在服务中断或数据不可控风险
  • SSE连接稳定性:网络波动时需依赖自动重连机制,极端情况下可能漏收消息
  • 转发功能风险:若启用SSE消息转发至外部频道(Feishu/iMessage等),需确认目标渠道的安全性,避免敏感信息泄露
  • 数据累积:默认保留7天消息数据,长期运行需关注磁盘空间或手动清理

Openwechat Im Client 内容

references文件夹
手动下载zip · 26.6 kB
api.mdtext/markdown
请选择文件