AWS Lex v2对接Amazon Connect意图履行后对话流冻结问题咨询
Amazon Connect + Lex V2 流无响应问题排查方案
1. Lex V2 响应格式校验
- 检查Lambda履行逻辑返回给Lex的响应结构,必须明确包含
dialogAction字段,指定类型为Close、状态为Fulfilled,参考合法结构:
{ "sessionState": { "dialogAction": { "type": "Close" }, "intent": { "name": "你的意图名", "state": "Fulfilled" } }, "messages": [ { "contentType": "PlainText", "content": "履行完成提示文本" }, { "contentType": "SSML", "content": "<speak>履行完成提示语音</speak>" } ] }
- 禁止仅返回
CustomPayload类型消息,Amazon Connect语音通道无法解析该类内容,会直接导致流卡住无响应。
2. 「获取用户输入」模块配置校验
- 确认调用Lex V2的模块中,意图匹配成功的跳转分支已明确配置,分支留空会导致流中断,哪怕不需要额外处理也要指向下一个提示/挂断模块。
- 检查模块中「会话结束行为」配置,不要选择「等待后续用户输入」,需设置为「继续执行流逻辑」。
- 确认Connect实例关联的IAM角色已添加
lex:RecognizeText、lex:RecognizeUtterance权限,权限拦截会导致静默无响应且无显性报错。
3. 日志排查
- 查看Amazon Connect对应的CloudWatch日志组
/aws/connect/[你的实例别名],筛选ContactFlowExecution类日志,检查Lex调用完成后的执行节点是否存在LexBotFailedResponse、NoMatchingBranch等错误码。 - 查看Lex V2的运行日志,确认返回给Connect的响应体和控制台测试时的返回结构完全一致,无字段缺失。
4. 会话属性校验
- 检查Lambda返回的会话属性是否存在特殊字符、单条属性值超过1024字符的情况,Connect解析异常会导致流卡住。
- 确认Lex意图配置中未开启「履行完成后保留会话」,必须明确结束当前会话触发Connect流跳转。
内容的提问来源于stack exchange,提问作者Spencer Letizia
相关产品推荐
相关产品推荐

