拦截AWS Lambda对AWS Lex查询的响应

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

我是一个团队的一员,他们正在尝试将AWS Lex集成到我们的一个Web应用程序中。目前,我们要采用的方法是用户要求Lex运行SQL查询。然后,Lex将根据用户的问题决定适当的意图(IE如果用户想要使用值A进行搜索,Lex将选择意图A)并将此信息发送回我们的Web应用程序,然后该应用程序将运行适当的方法来执行SQL查询(其中方法名称与意图名称匹配)。

回顾一下,我们想要做的是如下: 1)用户告诉Lex他们想要使用值A搜索数据 2)Lex确定正确的意图(意图A) 3)Lex将此信息发送给Lambda,然后Lambda将意图名称返回给Web客户端 4)我们的Web应用程序拦截Lambda的响应并执行正确的方法 5)通过Lex向用户显示的结果。

我的问题是这是否可行,尤其是截获Lambda响应。如果是这样,有人可以请指出相关信息,我可以在哪里阅读如何实现这一点?我一直在寻找最近几天,并没有找到任何相关材料的特定用例。

非常感谢!

c# amazon-web-services aws-lambda amazon-lex
1个回答
1
投票
  1. 用户告诉Lex他们想要使用值A搜索数据
  2. Lex确定正确的意图(意图A)

我认为你应该使用单一意图和不同的插槽,这样会更有效率。

  1. Lex将此信息发送给Lambda,然后Lambda将意图名称返回给Web客户端
  2. 我们的Web应用程序拦截Lambda的这个响应并执行他正确的方法

您应该在Web服务器上编写一个Rest API,它将获取数据并返回输出。在您的Lambda函数中,您可以编写简单的HTTP请求/ post方法,请求api并获取响应。

  1. 结果通过Lex显示给用户

获得响应后,您只需使用Close将响应返回给bot。

希望能帮助到你。

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