执行另一个联系流程时,联系属性会发生什么? -亚马逊连接-联络流程

时间:2018-12-28 01:18:06

标签: amazon-web-services amazon-connect

因此,我试图基于我在上一个联系流程上设置的联系人属性的值(由“检查联系人属性”时钟检查)执行Lambda函数。我的问题是,联系人属性是联系人流的局部属性,还是可以从下一个联系人流中引用它们?现在,它对我不起作用,当我检查联系人属性值时,它永远与应该设置的值不匹配(我在上一个联系人流程中对其进行设置后,会对其进行检查)。

还要从正在检查值的Lambda函数中获取此值(existingCase是Contact Attribute的名称):

  
    

'existingCase':KeyError追溯(最近一次调用为最新):文件“ /var/task/lambda_function.py”,行11,在lambda_handler中打印(“是     现有案例“ +     event [“ Details”] [“ ContactData”] [“ Attributes”] [“ existingCase”]))     KeyError:“ existingCase”

  

谢谢!

2 个答案:

答案 0 :(得分:1)

联系人属性特定于呼叫/联系人。在另一个联系人流中无法访问在一个联系人关注中设置的属性。同样,在呼叫/联系人结束后,即使联系人是同一呼叫方,该属性也不再对联系流可用。

如果您需要属性可用于同一客户端点的后续联系人,则需要调用lambda函数,并使用客户的电话号码(或其他一些方法)将属性存储在外部数据存储区(例如DynamoDB)中客户/呼叫者专用的标识符)作为密钥。在联系流程的开始,您可以调用另一个lambda函数,该函数使用客户端点(客户的电话号码)搜索dynamo,并使用dynamo中的数据从先前的联系人中恢复属性。这样可以有效地将联系人属性的作用域分配给客户,而不是联系人。

注意:这仅仅是说明属性范围的一个示例,不应在生产环境中使用,因为许多呼叫者可能被视为具有相同的端点(电话号码)。

答案 1 :(得分:0)

可以使用用户定义的类型将联系人属性从一个联系人流转移到另一联系人流。使用以下两种方法设置联系人属性:

  1. 使用文本:设置键和值,在下一个联系流程中,使用用户定义类型的联系属性和上一个流程中定义的键。
  2. 使用属性:将键和值以及类型设置为“用户定义”。在下一个联系流中,使用用户定义类型的联系属性和上一个流中定义的键。