aws-lambda - Amazon Lex 多条消息

标签 aws-lambda amazon-lex

我有一个从三个 API 获取信息的机器人。现在,我将所有这些信息汇总到消息中并一次性发送:

{
sessionAttributes,
dialogAction: {
   type: 'Close',
   'Fulfilled',
   message
}

有没有办法在我收到信息时发送出去? 最终结果将是一条接一条不同的消息,而无需用户进行任何输入。

最佳答案

这在 Lex 中是不可能的。 AWS Lex 遵循请求/响应模型,因此只会处理与用户请求直接相关的响应。 正如您在问题中所述,推荐的方法是聚合。

但是,根据您的集成策略,您可以通过绕过 Lex 并将结果从您的 API 直接发送给用户来发送多条消息。

例如

  1. 用户:“嘿 Lex。拿走我的东西”
  2. 莱克斯
    1. 异步调用每个 API
    2. 回复用户:“我现在会把它们发送给你”
  3. API 1 给用户:“这是结果 1”
  4. API 2 给用户:“这是结果 2”

此策略适用于 Slack 等集成,其中可以通过同一 channel 从多个来源接收消息。

关于aws-lambda - Amazon Lex 多条消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44316581/

相关文章:

amazon-web-services - 以超链接格式提供 AWS Lex 响应

python - Lex Bot 控制台上出现错误 - 在同一话语中第二次执行了履行 lambda

mysql - Lambda AWS 不调用 Node mysql 回调

node.js - 使用 Node.JS 调用 AWSglue 的 lambda 函数没有 console.log 的原因是什么?

python - 如何从 ZipFile 进行流式传输?如何压缩 "on the fly"?

javascript - 从 Node.JS/Javascript 页面的标签栏中删除图像

ios - AWSLexVoiceButton 提示和客户端履行响应

python-3.x - 在 Aws Lambda 中导入 Python 文件导致错误

MySQL Aurora 数据库实例在 AWS RDS 上自行开启只读

amazon-web-services - 无法为作为 AWS::CloudFormation::CustomResource 执行的 aws lambda 函数设置环境变量