docs(zulip): 完善Zulip业务模块功能文档

范围: src/business/zulip/README.md
- 补充对外提供的接口章节(14个公共方法)
- 添加使用的项目内部依赖说明(7个依赖)
- 完善核心特性描述(5个特性)
- 添加潜在风险评估(4个风险及缓解措施)
- 优化文档结构和内容完整性
This commit is contained in:
moyin
2026-01-15 10:53:04 +08:00
parent 30a4a2813d
commit ed04b8c92d
32 changed files with 622 additions and 8886 deletions

View File

@@ -7,6 +7,12 @@
* - 实现空间过滤和消息分发
* - 支持区域广播功能
*
* 职责分离:
* - 事件轮询管理Zulip事件队列的轮询和处理
* - 消息转换将Zulip消息转换为游戏协议格式
* - 空间过滤:根据地图确定消息接收者
* - 消息分发通过WebSocket向目标玩家发送消息
*
* 主要方法:
* - startEventProcessing(): 启动事件处理循环
* - processMessageEvent(): 处理Zulip消息事件
@@ -20,18 +26,27 @@
* - 向游戏客户端分发消息
*
* 依赖模块:
* - SessionManagerService: 会话管理服务
* - ISessionQueryService: 会话查询接口(通过 Core 层接口解耦)
* - ConfigManagerService: 配置管理服务
* - ZulipClientPoolService: Zulip客户端池服务
* - AppLoggerService: 日志记录服务
*
* 最近修改:
* - 2026-01-14: 代码质量优化 - 移除未使用的IGameSession导入 (修改者: moyin)
* - 2026-01-14: 代码规范优化 - 完善文件头注释和职责分离描述 (修改者: moyin)
* - 2025-12-25: 功能新增 - 初始创建Zulip事件处理服务 (修改者: angjustinl)
*
* @author angjustinl
* @version 1.0.0
* @version 1.1.2
* @since 2025-12-25
* @lastModified 2026-01-14
*/
import { Injectable, OnModuleDestroy, Inject, forwardRef, Logger } from '@nestjs/common';
import { SessionManagerService } from './session_manager.service';
import { Injectable, OnModuleDestroy, Inject, Logger } from '@nestjs/common';
import {
ISessionQueryService,
SESSION_QUERY_SERVICE,
} from '../../../core/session_core/session_core.interfaces';
import { IZulipConfigService, IZulipClientPoolService } from '../../../core/zulip_core/zulip_core.interfaces';
/**
@@ -129,7 +144,8 @@ export class ZulipEventProcessorService implements OnModuleDestroy {
private readonly MAX_EVENTS_PER_POLL = 100;
constructor(
private readonly sessionManager: SessionManagerService,
@Inject(SESSION_QUERY_SERVICE)
private readonly sessionManager: ISessionQueryService,
@Inject('ZULIP_CONFIG_SERVICE')
private readonly configManager: IZulipConfigService,
@Inject('ZULIP_CLIENT_POOL_SERVICE')