如何通过WatsonX Assistant实现用户20分钟无响应后发送消息?
WatsonX Assistant(WhatsApp渠道)设置20分钟无消息提醒的实现方案
由于WatsonX Assistant的可视化UI没有直接配置定时触发会话提醒的选项,你可以通过上下文变量+表达式条件判断+节点循环调度的方式实现需求,具体步骤如下:
初始化并更新用户消息时间戳
在对话流的起始节点,进入「上下文」面板添加变量last_user_message_time,用表达式now()赋值,记录初始交互时间。同时,在所有接收用户输入的节点(如意图识别节点、用户消息触发节点)中,都要将last_user_message_time重新赋值为now(),确保每次用户发消息都刷新时间戳。创建定时检查逻辑
- 在对话流中新增一个条件判断节点,设置为用户无输入时的分支触发逻辑
- 在条件中使用表达式计算时间差:
minutes_between(now(), $last_user_message_time) >= 20 - 若条件成立,直接发送消息
are you there?;若不成立,添加一个1分钟的延迟节点后,跳转回该条件判断节点继续轮询检查
兼容系统会话超时机制
为避免在会话即将超时(系统默认1小时)时发送无效提醒,可在条件判断中追加逻辑:session_expires_in() > 1200(session_expires_in()返回剩余秒数,1200秒即20分钟,确保提醒发送后仍有足够会话时长)
内容的提问来源于stack exchange,提问作者Lucas MiraB
相关产品推荐
相关产品推荐

