AWS Connect:根据属性选择要使用的AWS Lex机器人

问题描述 投票:0回答:1

我有一个AWS Connect实例,该实例具有一个Contact Flow,其中有一个“获取用户输入”部分,该部分使用AWS Lex进行语音转文本和其他聊天功能。

我目前有N个“事物”,并且为每个“事物”创建了一个对应的Lex机器人;因此,我有N个Lex机器人。我正在使用这些机器人在AWS Connect Contact Flow中进行对话;因此,我有N个配置了Lex的“获取用户输入”部分。最好只有一个“获取用户输入”部分和一个指定的属性,例如Lex机器人的ARN。

是否可以根据联系人属性选择要使用的AWS Lex机器人?我对分支或类似的东西不感兴趣,因为它们需要N个“获取用户输入”部分。 N数可能为100甚至1000甚至10000。

编辑

当我导出Contact Flow并调查JSON时,我可以看到此Lex部分:

{
     ...
     "type":"GetUserInput",
     "branches":[...],
     "parameters":[
        ...
        {
           "name":"BotName",
           "value":"FinTechLexBot" //// MAYBE $.Attributes.Key WOULD WORK?
        }
        ...
        ],
     "metadata":{
        ...
        "conditionMetadata":[
           {
              ...
              "value":"GetBalanceCheck" //// THESE ARE INTENTS
           }
        ],
        "useDynamic":false,
        "dynamicMetadata":{} //// THIS SEEMS INTERESTING, ANYONE KNOWS HOW THIS PART WORKS?
     },
     "target":"Lex"
}
amazon-web-services amazon-lex aws-lex amazon-connect
1个回答
0
投票

我已经找到答案!

是。实际上,您可以根据所需的任何属性指定要使用哪个Lex Bot。

我不确定是否可以在用户界面中执行此操作,但是可以导出联系人流并进行以下更改:

{
    "name":"BotName",
    "value":"MyLexBot"
}

为此:

{
    "name":"BotName",
    "value":"$.Attributes.BotToUse" //// OR ANY OTHER ATTRIBUTE / KEY
}

之后,保存JSON并将其导入回您的联系流程。

© www.soinside.com 2019 - 2024. All rights reserved.