Import JC Web IM

This commit is contained in:
annali168290-ux
2026-10-09 22:49:53 +07:00
commit 3377b6072a
74 changed files with 62902 additions and 0 deletions
+58
View File
@@ -0,0 +1,58 @@
# 绿地信通 Web IM
这是从零重写的 Web IM 前端,UI 和状态管理独立于原 `vue-chat`,底层通过授权的 WildFire Web SDK 连接既有 IM 服务。
## 当前工作范围
- 当前工作是在 `jc-web-im` 目录新写 Web 版 IM 客户端。
- 不要默认回到仓库根目录老 `src/` 客户端里继续改,除非明确需要兼容或参考旧实现。
- 中断恢复时优先阅读 `/var/www/im-web/SESSION_HANDOFF.md`。
## 服务地址
- App Server: `http://52.76.146.193:8888`
- IM route: `http://52.76.146.193:80/route`
- WebSocket: `ws://52.76.146.193:8083/ws`
- HTTPS/WSS 当前未启用为默认连接方式。
远端部署路径:
- App Server: `/opt/app-server`
- IM Server: `/opt/im-server`
## 运行
```bash
cd /var/www/im-web/jc-web-im
npm run serve
```
开发访问地址:
```text
http://localhost:8023
http://10.0.0.120:8023
```
## 构建
```bash
npm run build
```
## 部署
生产部署请看 [WEB_DEPLOYMENT.md](./WEB_DEPLOYMENT.md)。当前 Web 版需要 Nginx 托管静态文件,并通过 PHP-FPM 运行 `dist/api/*.php` 代理接口。
## 连接方式
`src/services/imClient.js` 是唯一的 IM 适配层。上层 UI 只调用这里的方法:
- `loginWithPassword`
- `loginWithCode`
- `connect`
- `getConversationList`
- `getMessages`
- `sendTextMessage`
后续如果替换 SDK 或自研协议,只改这个适配层,不需要改 UI 组件。