diff --git a/src/main/java/com/wecom/robot/service/MessageRouterService.java b/src/main/java/com/wecom/robot/service/MessageRouterService.java new file mode 100644 index 0000000..902dea9 --- /dev/null +++ b/src/main/java/com/wecom/robot/service/MessageRouterService.java @@ -0,0 +1,81 @@ +package com.wecom.robot.service; + +import com.wecom.robot.dto.InboundMessage; +import com.wecom.robot.entity.Session; + +/** + * 消息路由服务接口 - 渠道无关的消息路由核心服务 + * + *
职责: + *
关联 AC: [AC-MCA-08] 统一消息路由 + * + * @see InboundMessage + * @see Session + */ +public interface MessageRouterService { + + /** + * 处理入站消息 - 主入口方法 + * + *
执行流程: + *
路由规则: + *
调用 AI 服务生成回复,并根据返回结果判断是否需要转人工 + * + * @param session 当前会话 + * @param message 入站消息 + */ + void dispatchToAiService(Session session, InboundMessage message); + + /** + * 分发到人工客服处理 + * + *
将消息推送给在线的人工客服(通过 WebSocket) + * + * @param session 当前会话 + * @param message 入站消息 + */ + void dispatchToManualCs(Session session, InboundMessage message); + + /** + * 分发到待接入池 + * + *
将消息暂存,等待人工客服接入 + * + * @param session 当前会话 + * @param message 入站消息 + */ + void dispatchToPendingPool(Session session, InboundMessage message); +}