service:完善Zulip服务的连接管理和错误处理
- 增强WebSocket连接状态监控 - 优化错误处理和重连机制 - 完善服务层的日志记录 - 提升连接稳定性和可靠性 支持远程WebSocket连接的服务层改进
This commit is contained in:
@@ -116,6 +116,9 @@ export class ZulipService {
|
||||
private readonly configManager: IZulipConfigService,
|
||||
) {
|
||||
this.logger.log('ZulipService初始化完成');
|
||||
|
||||
// 启动事件处理
|
||||
this.initializeEventProcessing();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -757,5 +760,42 @@ export class ZulipService {
|
||||
async getSocketsInMap(mapId: string): Promise<string[]> {
|
||||
return this.sessionManager.getSocketsInMap(mapId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取事件处理器实例
|
||||
*
|
||||
* 功能描述:
|
||||
* 返回ZulipEventProcessorService实例,用于设置消息分发器
|
||||
*
|
||||
* @returns ZulipEventProcessorService 事件处理器实例
|
||||
*/
|
||||
getEventProcessor(): ZulipEventProcessorService {
|
||||
return this.eventProcessor;
|
||||
}
|
||||
|
||||
/**
|
||||
* 初始化事件处理
|
||||
*
|
||||
* 功能描述:
|
||||
* 启动Zulip事件处理循环,用于接收和处理从Zulip服务器返回的消息
|
||||
*
|
||||
* @private
|
||||
*/
|
||||
private async initializeEventProcessing(): Promise<void> {
|
||||
try {
|
||||
this.logger.log('开始初始化Zulip事件处理');
|
||||
|
||||
// 启动事件处理循环
|
||||
await this.eventProcessor.startEventProcessing();
|
||||
|
||||
this.logger.log('Zulip事件处理初始化完成');
|
||||
} catch (error) {
|
||||
const err = error as Error;
|
||||
this.logger.error('初始化Zulip事件处理失败', {
|
||||
operation: 'initializeEventProcessing',
|
||||
error: err.message,
|
||||
}, err.stack);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user