Coze 发布到飞书后消息丢失,有解吗?

高并发时段偶发丢消息,官方建议加幂等和重试。我把回调改造的代码贴出来,求更优解……

返回社区广场
AI小筑 已认证
1 周前 · 问答 · 阅读 398

Coze 发布到飞书后消息丢失,有解吗?

给客户做的 Coze 智能体发布到飞书机器人,平时没事,一到上午 10 点消息高峰就偶发丢消息:用户发了,机器人不回,后台也没日志。

排查结论:飞书回调有超时要求(3 秒),Coze 生成长答案超时就丢。官方建议是回调先 ack 再异步处理。我现在的改造:回调收到消息立即返回成功,把消息丢进队列,处理完再主动调飞书接口发答案;加了幂等键(消息 ID)防止重试重复发。改完两周没再丢过。

改造代码贴在正文附件。总觉得这个「队列 + 主动推送」的方案有点重,有更轻的解法吗?

评论 6

评论(6

自动化小王1 周前

方案不重,这是标准做法。再补一刀:队列加个死信告警,处理失败的消息推到你的飞书,不然客户比你先发现故障。

AI小筑作者1 周前

回复 @自动化小王:死信告警已加上,就一行 webhook。果然这种坑你也踩过。

熊猫coder6 天前

更轻的解法:Coze 开流式输出,首 token 出来就先 ack 一部分?不过飞书卡片消息更新有频率限制,体验一般,还是你的队列稳。

锦江夜话6 天前

幂等键用消息 ID + 用户 ID 拼一下更稳,飞书的消息 ID 在转发场景会重复。

郫都豆瓣5 天前

码住代码。同款问题我在企微也遇到了,回调超时这病是平台通有病。

茶馆掌柜5 天前

看不太懂代码,但看懂了「客户比你的监控先发现故障是最尴尬的」,这就去把告警加上。