Amazon Connect基于意图路由时设置工作队列报错,且设置属性模块传值异常
嘿,我看你在Amazon Connect的products Inbound联络流里遇到了基于Lex意图路由到工作队列的异常问题,结合你贴的联络流日志片段,我来分享几个排查这类问题的实用方向:
先盯紧SetAttributes模块的配置细节
从日志看你已经通过SetAttributes把LexInputIntent设为了Storage,首先要确认两件关键事:一是你在SetQueue模块里引用这个属性时,变量名是不是完全一致(敲黑板!Amazon Connect的变量严格区分大小写,lexinputintent和LexInputIntent会被当成两个完全不同的属性);二是SetAttributes的执行顺序必须在SetQueue之前,如果顺序搞反了,SetQueue执行时还没拿到这个属性值,肯定会出问题。核对SetQueue模块的路由规则
你应该是用「基于属性路由」的方式匹配队列的对吧?要确认SetQueue里的规则是不是精准关联了LexInputIntent:比如是不是设置了「当LexInputIntent等于Storage时,路由到目标工作队列」?另外还要检查目标队列本身的状态:有没有被禁用?有没有给当前联络流的IAM执行角色配置访问该队列的权限?队列的ARN是不是在联络流里配置正确了?验证属性是否真的被正确传递
光看SetAttributes的日志还不够,建议你在SetAttributes和SetQueue之间加一个Log模块,把${LexInputIntent}的值打印到CloudWatch日志里,确认这个属性确实被正确赋值并传递到了SetQueue环节。有时候看起来配置对了,但实际执行时可能因为其他隐性问题导致属性丢失,日志是排查这类问题的最好帮手。排查是否有其他模块干扰属性值
检查一下在SetAttributes之后、SetQueue之前的联络流逻辑,有没有其他SetAttributes模块修改了LexInputIntent这个Key的值?或者有没有分支逻辑跳过了SetAttributes模块?这些都可能导致SetQueue拿不到正确的意图值。
另外提个小细节:你SetAttributes里的AddAttributeToRelatedContact设为了false,如果这是一个关联联系人的会话,理论上不影响新inbound联络的属性传递,但如果排查到最后还是找不到原因,可以临时改成true试试排除这个变量的影响。
备注:内容来源于stack exchange,提问作者pravin gupta

