From f5eda2ea342badd39c6d600d24a30e3c229b7488 Mon Sep 17 00:00:00 2001 From: moyin <244344649@qq.com> Date: Mon, 12 Jan 2026 19:43:14 +0800 Subject: [PATCH] =?UTF-8?q?docs(zulip):=20=E5=AE=8C=E5=96=84zulip=E4=B8=9A?= =?UTF-8?q?=E5=8A=A1=E6=A8=A1=E5=9D=97=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 范围:src/business/zulip/README.md - 添加完整的WebSocket事件接口文档 - 包含所有事件的输入输出格式说明 - 更新版本信息和修改记录 - 完善使用示例和注意事项 --- src/business/zulip/README.md | 46 ++++++++++++++++++++++++++++++++++-- 1 file changed, 44 insertions(+), 2 deletions(-) diff --git a/src/business/zulip/README.md b/src/business/zulip/README.md index e6f8061..b7def06 100644 --- a/src/business/zulip/README.md +++ b/src/business/zulip/README.md @@ -78,6 +78,43 @@ Zulip 是游戏与Zulip社群平台的集成业务模块,提供完整的实时 ### logViolation() 记录用户的违规行为,用于监控和分析。 +## WebSocket事件接口 + +### 'login' +客户端登录认证,建立游戏会话并获取Zulip访问权限。 +- 输入: `{ type: 'login', token: string }` +- 输出: `{ t: 'login_success', sessionId: string, userId: string, username: string, currentMap: string }` 或 `{ t: 'login_error', message: string }` + +### 'logout' +客户端主动登出,清理会话资源并断开连接。 +- 输入: `{ type: 'logout' }` +- 输出: `{ t: 'logout_success', message: string }` + +### 'chat' +发送聊天消息,支持本地和全局范围,自动同步到Zulip。 +- 输入: `{ type: 'chat', content: string, scope?: 'local'|'global' }` +- 输出: `{ t: 'chat_sent', messageId: string, message: string }` 或 `{ t: 'chat_error', message: string }` + +### 'position' +更新玩家位置信息,支持地图切换和位置广播。 +- 输入: `{ type: 'position', x: number, y: number, mapId: string }` +- 输出: 广播给同地图其他玩家 `{ t: 'position_update', userId: string, username: string, x: number, y: number, mapId: string }` + +### 'chat_render' +接收聊天消息渲染事件,用于显示其他玩家的聊天内容。 +- 输入: 无(服务器推送) +- 输出: `{ t: 'chat_render', userId: string, username: string, content: string, timestamp: number, mapId: string }` + +### 'connected' +连接建立确认事件,服务器主动发送连接状态。 +- 输入: 无(服务器推送) +- 输出: `{ type: 'connected', message: string, socketId: string }` + +### 'error' +错误事件通知,用于处理各种异常情况和错误信息。 +- 输入: 无(服务器推送) +- 输出: `{ type: 'error', message: string }` + ## REST API接口 ### sendMessage() @@ -270,7 +307,12 @@ export class GameChatService { ``` ## 版本信息 -- **版本**: 1.2.1 +- **版本**: 1.3.0 - **作者**: angjustinl - **创建时间**: 2025-12-20 -- **最后修改**: 2026-01-07 \ No newline at end of file +- **最后修改**: 2026-01-12 + +## 最近修改记录 +- 2026-01-12: 功能新增 - 添加完整的WebSocket事件接口文档,包含所有事件的输入输出格式说明 (修改者: moyin) +- 2026-01-07: 功能修改 - 更新业务逻辑和接口描述 (修改者: angjustinl) +- 2025-12-20: 功能新增 - 创建Zulip游戏集成业务模块文档 (修改者: angjustinl) \ No newline at end of file