官网友情链接: wechatapi.net
微信机器人长期运行以后,一定会遇到需要“暂停”的时候。
例如:
某条自动回复规则突然误触发;
知识库出现错误;
AI模型状态异常;
某个微信账号正在人工处理重要客户;
某个微信群正在进行特殊活动;
系统发现机器人重复回复。
如果系统只有“机器人开 / 关”一个总开关,那么处理方式会很粗暴。
一个群出问题,就关闭全部账号机器人。
一条规则有问题,就停止整个自动化。
所以个人微信二次开发需要更细粒度的暂停策略。
WechatApi 可以作为个人微信API接入层,让私聊、群聊和相关消息稳定进入系统,而本地自动化层应该支持账号级、会话级、群级、规则级暂停。
一、为什么暂停要有多个层级
常见层级可以包括:
全局暂停;
账号暂停;
微信群暂停;
会话暂停;
规则暂停;
AI暂停。
不同问题使用不同范围。
二、一个具体例子
某个“资料”规则出现误触发。
系统发现 1 分钟触发 500 次。
如果只有全局开关:
只能关闭整个机器人。
但正确做法是:
自动暂停规则 R1001。
其他规则继续运行。
客户服务不受大范围影响。
三、规则级自动熔断
可以设置异常阈值:
一分钟触发次数过高;
重复回复率异常;
人工修改率突然升高;
发送失败率上升。
达到条件后:
规则自动暂停。
管理员确认后再恢复。
四、会话级暂停就是人工接管的一部分
客户正在和客服人工沟通。
机器人只暂停这个客户会话。
其他客户照常自动回复。
这是最细粒度暂停。
五、微信群级暂停
某个群正在进行直播活动。
运营人员不希望机器人插话。
可以临时:
暂停该群自动回复。
时间到后自动恢复。
不影响其他群。
六、账号级暂停
账号正在异常恢复。
系统可以暂停该账号所有主动发送任务。
仍然保留消息接入和日志。
这样不会继续产生失败。
七、AI暂停和规则暂停应该分开
大模型异常时:
可以暂停 AI。
但固定 FAQ 仍然运行。
这就是降级。
不要因为 AI 不可用,就让所有自动回复同时停掉。
八、暂停必须有原因
不要只保存:
enabled = false。
还应保存:
pause_reason;
paused_by;
paused_at;
resume_at。
这样后台知道为什么停。
九、暂停最好支持自动恢复时间
例如活动群:
暂停 2 小时。
设置 resume_at。
时间到后自动恢复。
避免运营人员忘记重新打开。
十、手动恢复前可以做检查
规则因为异常熔断。
管理员点击恢复时,系统可以提示:
最近 10 分钟触发异常是否已经消失。
降低反复暂停。
十一、WechatApi 在这个流程中的位置
WechatApi 继续负责消息进入。
即使机器人暂停,原始消息仍然应该正常保存。
本地业务系统只是停止部分自动动作。
接入和自动化要解耦。
十二、暂停期间消息怎么处理
不能丢掉。
可以:
继续入库;
继续客户识别;
继续生成内部任务。
只是停止客户可见自动回复。
恢复后是否补回复,则根据时效判断。
十三、不要补发过期回复
群暂停 30 分钟。
期间有 100 条问题。
恢复以后不能一次性把所有旧自动回复发出去。
应该只处理新的消息。
历史问题可以由人工或工单继续处理。
十四、暂停也应该进入日志
记录:
暂停范围;
原因;
开始;
结束;
影响消息数量;
操作人。
后续可以统计:
机器人为什么经常被暂停。
十五、权限
客服可以暂停自己负责会话。
群管理员可以暂停群。
运营主管暂停规则。
系统管理员暂停账号或全局。
不同级别不同权限。
十六、异常中心联动
自动熔断以后自动生成异常。
管理员打开异常,看到:
触发原因;
受影响范围;
暂停对象。
处理完直接恢复。
十七、数据看板
可以统计:
规则熔断次数;
群暂停时长;
账号暂停次数;
人工会话暂停比例。
这些指标可以反映自动化系统质量。
十八、总结
个人微信二次开发中的“暂停机器人”不应该只是一个总开关。
WechatApi 可以保证微信消息持续进入业务系统。
而业务层应该允许按:
规则;
账号;
微信群;
客户会话;
AI模块
进行独立暂停。
自动化真正成熟以后,不只是知道什么时候工作,也应该知道出现异常时应该停哪一部分、停多久、什么时候恢复。
这种细粒度暂停和熔断机制,可以让微信机器人出现局部问题时不会扩大影响范围,也是长期运行非常重要的安全边界。