在企业微信二次开发里,同一句客户消息,在不同状态下,可能代表完全不同的业务含义。
星云API在这类场景里,更建议先判断客户当前处于什么状态,再决定消息应该进入哪个处理流程。
一、先给客户维护业务状态
例如可以记录:
客户ID
当前业务
当前步骤
最近操作
更新时间
比如:
当前业务:订单查询
当前状态:等待订单号
具体消息字段和接口能力可以参考接口文档。
二、根据状态决定下一步
例如客户发送:
20261023001
如果当前状态是:
等待订单号
系统就可以直接把这条消息当成订单号处理。
但如果客户当前没有任何业务状态,这串数字就不能直接进入订单查询流程。
三、客户状态变化时要及时切换
例如原本正在处理订单查询,客户突然发送:
我要申请售后
这时候系统应该识别新的明确意图,并切换到售后流程。
可以理解成:
当前流程
↓
识别新消息
↓
判断是否需要切换
↓
更新客户状态
↓
进入新业务
四、业务完成后及时清空状态
如果订单查询已经完成,就不要继续保留“等待订单号”状态。
否则客户下一次发普通消息时,可能被误判成订单信息。
所以建议在:
业务完成
会话超时
客户主动切换业务
这些情况下及时更新或清空状态。
总结
根据客户当前状态动态切换流程,本质上就是:
读取客户状态
→ 判断当前消息
→ 继续原流程或切换新流程
→ 更新状态
这样可以让订单查询、售后处理、资料收集、转人工等多个业务流程同时存在时,消息处理依然保持清晰。
星云API可以负责企业微信消息与业务系统之间的连接,再结合客户状态管理,就能让不同业务流程之间切换得更自然。