forked from xiangwang25/whale-town-end-v2
83 lines
2.7 KiB
TypeScript
83 lines
2.7 KiB
TypeScript
/**
|
||
* 聊天业务模块
|
||
*
|
||
* 功能描述:
|
||
* - 整合聊天相关的业务逻辑服务
|
||
* - 提供会话管理、消息过滤、清理等功能
|
||
* - 通过 SESSION_QUERY_SERVICE 接口向其他模块提供会话查询能力
|
||
*
|
||
* 架构层级:Business Layer(业务层)
|
||
*
|
||
* 依赖关系:
|
||
* - 依赖 ZulipCoreModule(核心层)提供Zulip技术服务
|
||
* - 依赖 RedisModule(核心层)提供缓存服务
|
||
* - 依赖 LoginCoreModule(核心层)提供Token验证
|
||
* - 依赖 ZulipAccountsModule(核心层)提供Zulip账号数据访问
|
||
*
|
||
* 导出接口:
|
||
* - SESSION_QUERY_SERVICE: 会话查询接口(供其他 Business 模块使用)
|
||
*
|
||
* 最近修改:
|
||
* - 2026-01-15: 功能完善 - 添加ZulipAccountsModule依赖,支持登录时初始化Zulip客户端 (修改者: AI)
|
||
* - 2026-01-14: 代码规范优化 - 完善文件头注释规范 (修改者: moyin)
|
||
*
|
||
* @author moyin
|
||
* @version 1.2.0
|
||
* @since 2026-01-14
|
||
* @lastModified 2026-01-15
|
||
*/
|
||
|
||
import { Module } from '@nestjs/common';
|
||
import { ChatService } from './chat.service';
|
||
import { ChatSessionService } from './services/chat_session.service';
|
||
import { ChatFilterService } from './services/chat_filter.service';
|
||
import { ChatCleanupService } from './services/chat_cleanup.service';
|
||
import { ZulipCoreModule } from '../../core/zulip_core/zulip_core.module';
|
||
import { RedisModule } from '../../core/redis/redis.module';
|
||
import { LoginCoreModule } from '../../core/login_core/login_core.module';
|
||
import { ZulipAccountsModule } from '../../core/db/zulip_accounts/zulip_accounts.module';
|
||
import { SESSION_QUERY_SERVICE } from '../../core/session_core/session_core.interfaces';
|
||
import { AuthModule } from '../auth/auth.module';
|
||
import { PlayerModule } from '../player/player.module';
|
||
|
||
@Module({
|
||
imports: [
|
||
// Zulip核心服务模块
|
||
ZulipCoreModule,
|
||
// Redis缓存模块
|
||
RedisModule,
|
||
// 登录核心模块
|
||
LoginCoreModule,
|
||
// Zulip账号数据库模块
|
||
ZulipAccountsModule.forRoot(),
|
||
// 账号资料服务:用于初始化在线 presence 外观
|
||
AuthModule,
|
||
// 世界公告使用服务端实时钱包扣费
|
||
PlayerModule,
|
||
],
|
||
providers: [
|
||
// 主聊天服务
|
||
ChatService,
|
||
// 会话管理服务
|
||
ChatSessionService,
|
||
// 消息过滤服务
|
||
ChatFilterService,
|
||
// 会话清理服务
|
||
ChatCleanupService,
|
||
// 会话查询接口(供其他模块依赖)
|
||
{
|
||
provide: SESSION_QUERY_SERVICE,
|
||
useExisting: ChatSessionService,
|
||
},
|
||
],
|
||
exports: [
|
||
ChatService,
|
||
ChatSessionService,
|
||
ChatFilterService,
|
||
ChatCleanupService,
|
||
// 导出会话查询接口
|
||
SESSION_QUERY_SERVICE,
|
||
],
|
||
})
|
||
export class ChatModule {}
|