ARTICLE · 1117346
微客AI助手方案复盘:微信公众号自动回复接入AI的三道门槛——5秒、重试与48小时额度
公众号后台的关键词自动回复,规则固定、维护起来累,客户普遍想要"能理解人话"的应答。我们把公众号消息接进 AI 这件事做了一轮调研加原型,结论是:技术不难,难在三道平台侧的门槛,摸清之前写的代码都是白写。这篇把三道门槛和我们最终落地的合规接法讲清楚,适合正准备给公众号自动回复升级 AI 的团队少走弯路。
头一道门槛:5秒内必须给交代
公众号的被动回复模式,是平台把用户消息推给你的服务器,五秒内不回包,这次回复机会就作废。而 AI 生成要看运气:我们线上桥接服务的实测,端到端回复在一到三秒之间——这是均值,看着能过闸,但大模型偶发的慢响应叠加知识库检索的耗时,拿均值去赌五秒闸,赌输的那几次就是用户直接收不到回复。
更要命的是这个失败是双向的:回包慢了,用户收不到回复;更早的五秒里你什么都没来得及说,用户那边连"对方正在输入"都没有,体验上就是一拳打进棉花里。自动回复从关键词升级成 AI,用户的心理预期也跟着升级——他都以为在跟人聊天了,等不来回应的挫败感比关键词时代更重。
官方文档还写明了超时之后的处理方式:按失败计,并且平台会重新推送这条消息。这一条单独看是容错设计,落到接入方头上,就是第二道门槛的引线。
同一条消息答了三遍:重试与幂等
原型刚起步就踩了这坑:测试号发一句"怎么收费",AI 回了三遍一字不差的。原因就是上面那句——超时重推,官方口径是三次。我们没有做去重,三次推送各自触发一轮生成、各自补发一次,用户看到一台复读机。
回调类接口天然是至少一次投递,业务侧必须自己做幂等。我们的做法很朴素:消息 ID 落一张去重表,加防重复索引,推送进来先查后处理,查到重复直接回 200 了事;插入撞索引也当重复处理。这张表很小,实现只有一个下午,但没有它,AI 越聪明、回复越像样,复读的伤害就越大——用户会认定这是个机器人,然后头也不回地取关。
四十八小时与五条:主动发消息的额度
异步补发走的客服消息接口有明确额度。官方文档的额度表我们逐条核过:用户互动之后四十八小时内可以主动发消息,发消息类每个周期内条数有限制,只有五条;菜单点击、关注、扫二维码这类动作给的窗口更紧,只有一分钟。
这些数字对设计的影响是实打实的。AI 每补发一条都要计数,计数按用户维度做滑动窗口;临近上限要降级——把要说的几件事合并成一条,或者提示用户转人工,而不是把额度浪费在客套话上。更要命的是超窗之后的发送是静默失败的:接口不会大张旗鼓地报错,消息就是不达。监控必须盯住发送失败率,不然客服永远不知道机器人已经"哑"了,还以为用户不说话了。
合规接法:回空串加异步补发
三道门槛凑出来的最终形态:收到推送,立即回一个空串,等于告诉平台"收到了,本轮没有被动回复",把重试从源头掐死;AI 在后台慢慢生成,好了以后从客服消息接口主动补发给用户。这是官方文档明确允许的形态,也是把五秒闸和 AI 延迟解耦的干净办法。用户那边看到的体验是:消息发出去了,几秒后回复稳稳到达,全程没有超时也没有复读。
实现顺序上有讲究:先回包、后处理,回包动作里除了空串还要把消息 ID 写进去重表,这样平台重推的请求会在入口就被拦掉,不会进到生成环节;补发走异步队列,队列层统一做额度检查和失败重试,业务代码不碰额度细节。
它的代价写在资质上:客服消息接口要求已认证的服务号。个人订阅号没有这个接口,资质是比代码更前置的一道门,立项之前先看一眼自己账号的类型,免得代码写完了发现门都进不去。
别忘了:接了服务器,后台自动回复全失效
还有个容易漏的点:一旦在公众号后台填了服务器配置并启用,后台原本配置的关键词自动回复、关注回复全部停用,平台不再帮你回任何一条。很多团队是接完才发现关注后的欢迎语也没了。
顺带说一句启用本身:填 URL 和 Token 之后,平台会向你的服务器发一个带签名的验证请求,服务器要按规则校验签名并原样回传随机串才算通过。这个握手失败时后台只给一句"验证失败",不告诉你签名哪里算错了——时间戳、Token、nonce 三个参数拼接排序后哈希,顺序错一个字符就全盘皆输。建议头一回接入时把这三个入参原样打进日志,对照官方示例逐字符核。
所以接入 AI 的当天就得把兜底层建起来:常见关键词——价格、售后、联系方式——命中直接回固定话术,不过 AI;AI 故障、响应慢或者额度触顶时,回落到兜底文案,保证任何一条用户消息都有交代。会话上下文也要落服务端的表:网页、企微、公众号多个入口要共享同一份会话历史,用户在网页问过的问题,换到公众号不该从零再来一遍;会话存在任何一端,另外几端就是瞎的。
小结
公众号自动回复接 AI,三道门槛——5秒窗口、重试幂等、48小时额度——决定的不是细节而是架构。先把平台的行为逐条摸清再画架构图,比先写代码再撞墙省一周;而幂等去重表和兜底话术这两个"不起眼"的部件,恰恰是上线之后最保命的部分。我们自己也是撞完三道门槛才把顺序摆对:先幂等、再异步、后额度,每一层都独立可测,出了问题日志里一眼能看出卡在哪一层。
参考文章
• 企业微信自动回复设置:从接入到转人工的完整方案
• 微信客服自动回复怎么设置:入口与规则详解