问题标签 [aws-lex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
261 浏览

amazon-web-services - aws lambda 返回响应卡在 Amazon Lex 中引发 null 履行状态错误?

我编写了这个函数,当它只是作为字符串返回时,它返回正常。我非常严格地遵循响应卡的语法,它通过了我在 lambda 中的测试用例。然而,当它通过 Lex 调用时,它会抛出一个错误,我将在下面发布。它说fulfillmentState 不能为null,但在它抛出的错误中表明它不为null。

我试过切换对话状态和响应卡的顺序,我试过切换“type”和“fulfillmentState”的顺序。功能:

在 lambda 中传递的测试用例的屏幕截图:https ://ibb.co/sgjC2WK Lex 中的错误抛出屏幕截图:https ://ibb.co/yqwN42m

Lex 中的错误文本:

“发生错误:无效的 Lambda 响应:收到来自 Lambda 的无效响应:无法构造 CloseDialogAction 的实例,问题:在 [Source: {"dialogAction": {"fulfilmentState": "Fulfilled ", "type": "Close", "contentType": "Plain Text", "content": "Here you go"}, "responseCard": {"contentType": "application/vnd.amazonaws.card.generic" , "version": 1, "genericAttachments": [{"title": "请选择其中一个选项", "subTitle": "如何将 Iphone 备份到 windows", "buttons": [{"text": ” https://www.easeus。com/iphone-data-transfer/how-to-backup-your-iphone-with-windows-10.html ", "value": "test"}]}]}}; line: 1, column: 121]"

0 投票
1 回答
188 浏览

amazon-web-services - 适用于 lambda 函数、单个 lambda 或每个意图一个的 AWS Lex 最佳实践

我正在 AWS Lex 中设置聊天机器人。Lex 的输入由 Lambda 函数 (Main) 处理。根据意图,可能需要调用 API。

我想知道将意图和槽从 Lex 简单地返回到 Main,并让 Main 处理 API 调用是否是最佳实践。或者,Lex 可以为每个意图最终确定并运行一个 lambda 函数。但是,我担心的是可维护性,因为管理许多功能可能很困难,而且这些不同的功能可能很少使用,需要冷启动;增加延迟。

另一个问题是我需要 lambda 使 API 调用位于与 Main 和 Lex 不同的区域,因为 Lex 在该区域(悉尼)不可用。因此,我不喜欢菊花链 Lambda 函数,因为它会转到 Main -> Lex -> Lambda (Fulfilment) -> Lambda (Sydney API call)。

不胜感激任何建议,谢谢

0 投票
1 回答
48 浏览

aws-lambda - 从 Lex 对 Lambda 的调用被终止

我们遇到了从 Lex 到 Lambda 脚本的调用在 3000 毫秒后被终止的问题。我们在 Lex 中没有看到任何设置来改变这种行为,所以我们想知道是否有办法增加超时。我们知道在 Lex 中获得响应可能需要 3000 毫秒,但我们仍然有可能需要它的情况。

0 投票
1 回答
39 浏览

aws-lex - 如何知道机器人是否在 Lex 中使用语音或文本

在从 Lex 调用的 Lambda 函数中,我们需要知道请求是来自 Connect 还是来自控制台或其他聊天工具等文本源。

我们主要需要知道这一点来决定是否需要使用纯文本或 SSML 进行响应。

0 投票
2 回答
396 浏览

aws-lex - 使用 Node.js 对 Lex 机器人进行自动化测试

我们正在使用 Amazon Lex 构建一个机器人。随着机器人的功能不断增长,我们需要一种方法来确保机器人在我们引入新更改时继续工作,但是手动执行此操作变得非常昂贵。我们无法在 Amazon Lex SDK 工具中找到为 Lex 机器人创建自动化测试的工具。是否有一些框架或工具可以帮助解决这个问题并与 Node.js 一起使用?

0 投票
1 回答
417 浏览

aws-lex - 使用 Connect/Lex 在机器人中录制对话

我在 Amazon Lex 中有一个机器人,我正在使用 Connect 允许通过电话与它交谈。我们希望能够生成带有录音的通话记录。

我们遇到的问题是我们Enable call recording在 Amazon Connect 中启用了该选项,但在拨打电话后从未在 S3 上看到录音。

除了该选项之外,是否需要启用其他功能?

0 投票
1 回答
100 浏览

amazon-lex - 通过 Amazon Connect/Lex 接收电子邮件地址?

我目前正在尝试设置一个机器人来通过 Connect/Lex 使用语音收集电子邮件地址。我知道如果不逐个字符地拼写出来,这几乎是不可能的。我试过设置自定义插槽,使用 AMAZON.EmailAddress 等,但所有选项似乎都听错了很多字符。有没有人有任何运气来实施这个?谢谢!

0 投票
0 回答
178 浏览

node.js - NodeJS/Lambda/Lex/Axios - 如何对插槽进行同步调用

我已经对synchronous拨打电话进行了研究,但不建议这样做,因为它会阻塞线程。但就我而言,情况有所不同。

我正在制作一个简单的天气检查amazon lex机器人。我有两个插槽,{city}并且{date}. 当客户询问机器人"Check the weather"时,机器人会询问客户他们想查看哪个城市。当用户发回 时{city},我axios的 from向apilambda发送 get 请求。openWeatherMap

问题是,在客户给出{city}他/她想要查看天气的位置之后,下一个插槽是{date}立即触发,而无需等待 axios 调用完成。

我为什么要等待?因为axios调用可能会返回错误,我想捕获它并立即显示给客户端,以便结束该过程。

重要提示:不要与{date}插槽混淆,我真的不想得到日期。我只是将其作为示例,但需要注意的是在触发下一个插槽之前等待来自第一个插槽的 axios 响应。

0 投票
0 回答
15 浏览

aws-lambda - 来自网络浏览器的 Alexa 技能(内在功能)

无法从 Web 应用程序(机器人)获取 Alexa 的内在功能

已经使用 aws lex 实现了语音机器人,并使用 lambda 函数添​​加了一些自定义意图,希望集成 alexa 的现有内在功能

例如:1)我附近的运动商店 2)我附近的电影院 3)洛杉矶的电影院

以上 cmd 在 alexa 设备上工作正常,但没有从浏览器得到类似的响应

0 投票
0 回答
78 浏览

aws-lambda - 想要将 amazon lex 的用户重定向到新页面(使用 lambda)

我正在用 amazon lex 编写一个聊天机器人,我想将用户重定向到一个新页面。(我正在使用带有 lambda 函数的 python)我已经尝试过使用 webbrowser,当我在本地尝试时它可以工作,但是当我将函数放入 aws lambda 时它不再工作了。