【问题标题】:AWS Connect: select which AWS Lex bot to use based on attributesAWS Connect:根据属性选择要使用的 AWS Lex 机器人
【发布时间】:2020-09-05 02:34:42
【问题描述】:

我有一个 AWS Connect 实例,它有一个联系流,其中​​有一个“获取用户输入”部分,它使用 AWS Lex 实现语音到文本和其他聊天功能。

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

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

编辑

当我导出联系流并调查 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】:

    我找到了答案!

    是的。事实上,您可以根据您想要的任何属性指定要使用的 Lex 机器人。

    我不确定您是否可以在 UI 中执行此操作,但您可以导出联系流,然后更改此设置:

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

    到这里:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-26
      • 1970-01-01
      • 1970-01-01
      • 2018-02-18
      • 1970-01-01
      • 1970-01-01
      • 2019-04-29
      • 2018-10-31
      相关资源
      最近更新 更多