处理教师临时请假的对话式运维 bot —— 替补教师智能匹配、课程自动重排、家长通知自动发送,全流程无缝自动衔接,无需人工介入。
教师临时请假时,运维团队每次需要处理 30-60 分钟:跨时区匹配合适的替补、重排受影响的课程、通知家长与学生、同步更新名册。每一步都是机械工作,但漏掉一条消息就是一笔退款。
搭建了一个对话式入口:运维在 Telegram 向 bot 发送消息,bot 通过 Claude 解析意图,运行 5 步匹配引擎从名册中筛选人选,提出重新排课方案 —— 仅在收到「yes」确认后才执行。所有副作用(Slack 通知替补、Gmail 草稿发送给家长、写入表格)均封装在抽象接口之后,每一个都可单独模拟、空跑测试或更换平台,核心逻辑保持不变。
端到端 demo 覆盖三个真实场景(顺利路径、替补拒绝、未知教师),每一项副作用都有完整日志。17 项单元测试覆盖匹配逻辑、流程、NLU 解析与状态机。架构上,从测试环境切换到正式部署只需修改一个配置项。
引擎只与数据存储、通知器、对话界面这几个接口交互。具体平台实现(CSV、Sheets、Gmail、Slack、Telegram)在边缘装载。测试数据与生产数据走同一条代码路径,切换只需修改一项配置。
意图解析提供两套实现:测试用的规则版(正则、离线、可重现)与上线用的 Claude 版(Anthropic SDK)。同一接口、下游行为完全一致 —— 启动时选定即可。
多轮 orchestrator 的状态流转:IDLE → 提议中 → 执行中 → IDLE。状态不驻留内存而是落盘 —— bot 在对话中途崩溃重启后仍可接续。
在收到明确「yes」之前,bot 不写入数据、不发送消息、不通知任何人。提议阶段先把将要发生的事列清楚;执行阶段在用户确认后一次性触发。