如何在AWS lex中从意图A调用意图B? [复制]

2023-12-03

我正在使用 aws lex 我有一个意图-A。我给它起了个名字welcomeMsg。我想打电话给另一个人intent(B) from intent-A。欢迎msg(intent-A),它会说:

> `"Hi, I am a xxx-BOT. i can help you with following:`
       A
       B
       C

如果我说 B,它应该转到 Intent-B 。这就是我想做的,但我无法实现。任何有关 python 代码的帮助将不胜感激。


我找到了这 3 种从意图 A 调用意图 B 的方法。

第一种方法(使用ConfirmIntent):

def confirm_intent(session_attributes, intent_name, slots, message):
    return {
        'sessionAttributes': session_attributes,
        'dialogAction': {
            'type': 'ConfirmIntent',
            'intentName': intent_name,
            'slots': slots,
            'message': {
                'contentType': 'PlainText',
                'content': message
            }
        }
    }
msg = "Hi, I am a xxx-BOT. i can help you with following: A B C"

return confirm_intent(output_session_attributes, 'intent-B', new_slot, msg)

第二种方法(假装是 Lex 并调用 Lambda 方法):

client = boto3.client('lambda')
data = {'messageVersion': '1.0', 'invocationSource': 'FulfillmentCodeHook', 'userId': '###', 
        'sessionAttributes': {}, 'requestAttributes': None, 
        'bot': {'name': '###', 'alias': '$LATEST', 'version': '$LATEST'}, 
        'outputDialogMode': 'Text', 
        'currentIntent': {'name': '###', 'slots': {'###': '###'}, 
        'slotDetails': {'###': {'resolutions': [], 'originalValue': '###'}}, 
        'confirmationStatus': 'None'}, 
        'inputTranscript': '###'}
response = client.invoke(
    FunctionName='{intent-B_lambda_function}',
    InvocationType='RequestResponse',
    Payload=json.dumps(data)
)
output = json.loads(response['Payload'].read())['dialogAction']['message']['content']

第三种方法(使用 ElicitSlot):

def elicitSlot(sessionAttributes, intentName, slots, slotToElicit, message):   
    return {
        sessionAttributes,
        dialogAction: {
            type: 'ElicitSlot',
            intentName,
            slots,
            slotToElicit,
            message,
        }
    }

intentRequest['currentIntent']['name'] = 'intent-B'
param1 = {
    slot-B:null
    }
intentRequest['currentIntent']['slots'] = param1
return elicitSlot(outputSessionAttributes, 'intent-B', intentRequest['currentIntent']['slots'], 'slot-B', 'some_message')

请检查这些方法,使用它们并根据您的需要进行调整。我认为method 1将最适合您的需要,而且是最简单的。

如果您遇到一些问题,请发表评论。

希望能帮助到你。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在AWS lex中从意图A调用意图B? [复制] 的相关文章

  • 我可以从 amazon Kinesis 中删除数据记录或分片而不删除流吗?

    我知道 Kinesis Stream 中的数据记录将在 24 小时内自动删除 但是在我的应用程序中 每当我将一些数据写入流中时 如果我想第二次写入其他数据 则应删除首先插入的数据 请任何人帮助我 因为我是使用 AWS Kinesis Str
  • AWS SES模板html部分是多行

    我正在使用 AWS SES 按照文档发送电子邮件https docs aws amazon com ses latest DeveloperGuide send personalized email api html https docs
  • 同一区域内但属于不同账户的AWS数据传输费用如何?

    如果 S3 gt EC2 或 EC2 gt EC2 位于同一 AWS 区域 则数据传输费用似乎是免费的 S3价格注意事项 您需要为进出 Amazon S3 的所有带宽付费 except对于以下情况 当Amazon Elastic Compu
  • 使用 AWS CDK 为 lambda 指定自定义角色

    我意识到它很新 但我没有看到任何语言的任何示例 说明如何为使用 AWS CDK 创建的 lambda 指定角色 我正在尝试这样做 const cdk require aws cdk cdk const lambda require aws
  • 为什么 CloudFront 根据 Accept-Encoding 改变 CORS 标头响应?

    我正在尝试让 CORS 与 Amazon S3 CloudFront 一起正常工作 设置我的 CORS 配置后 它似乎可以正常工作 curl H Origin https app close io I https d4389n07pf8cq
  • 为美国东部以外地区的 Cloudwatch 警报发送短信?

    AWS 似乎没有为美国东部以外的 SNS 主题订阅者提供 SMS 作为协议 我想连接我的 CloudWatch 警报并在发生故障时接收短信 但无法将其发送到 SMS YES 经过一番挖掘后 我能够让它发挥作用 它比仅仅选择一个主题或输入闹钟
  • AWS-PHP-SDK / SNS 直接寻址返回错误

    您好 我正在使用 Laravel 4 设置来利用 AWS SNS 向我的 iOS 设备发送推送消息 从 AWS 控制台向我的设备发布命令效果很好 然后我尝试从 PHP sns AWS get sns sns gt publish array
  • AWS Lambda。延迟调用

    我需要使用亚马逊工具构建 任务调度程序 主要问题是我需要执行一次任务 延迟很大 可能是几个小时或几周 我尝试研究如何使用 CloudWatch 和 Lambda 函数构建它 据我了解 我需要使用单独的规则来执行一次超时 但 AWS 只允许我
  • 我可以更改 CloudWatch 上的公制单位吗?

    我正在将指标数据发送到 CloudWatch 它们被发送到 AWSStandardUnit Count单位 但后来我把它们改为StandardUnit Milliseconds 在 AWS 的仪表板上 我仍然看到以下数据Count unit
  • CNAME 速度慢吗?

    我将 CNAME 与 S3 CloudFront 一起使用来提供一些静态文件 例如 js css 图像等 我这样做是为了使存储桶的 URL 更漂亮 因为我认为最好将所有内容都定位到我的网站 以防万一将来我想移动这些文件 更改应该是透明的 今
  • 未找到命令:Amazon Linux 2018.03 上的 systemctl

    我正在关注此 Amazon AWS 安装 SSL 证书指南 https docs aws amazon com AWSEC2 latest UserGuide SSL on an instance html 我使用 Amazon Linux
  • PHP Amazon SDK,S3 存储桶访问被拒绝

    我第一次尝试使用 PHP AWS SDK aws aws sdk php 3 19 来使用 S3 我创建了一个存储桶 myfirstbucket jeremyc 我制定了一项政策 Version 2012 10 17 Statement E
  • AWS ELB 和 GoDaddy 域正在运行

    我已在 goDaddy com 中注册了一个域 并希望将流量发送到 AWS Route53 我创建了一个 ELB 我执行了以下步骤 在 Route 53 中 为我的 godaddy 域名创建一个托管区域 这反过来又为我提供了一条包含 4 个
  • Amazon SNS 仪表板中创建平台应用程序的选项在哪里?

    我在这个页面向 AWS 注册您的移动应用程序 https docs aws amazon com sns latest dg mobile push send register html第一个子主题的第 1 项 标题为 向 AWS 注册您的
  • 如何使用 boto3 让 ec2 实例访问 s3

    By googling I found this tutorial on accessing S3 from EC2 instance without credential file http parthicloud com how to
  • AWS 将 MQTT 消息存储到 DynamoDB

    我构建了一个定期发送 MQTT 消息的 python 脚本 这是发送到后端的 JSON 字符串 Id 1234 Ut 1488395951 Temp 22 86 Rh 48 24 在后端 我想将 MQTT 消息存储到 DynamoDB 表中
  • 每次我执行 docker compose up 时,Docker 都会创建一个新卷

    我有一个 docker compose 文件 可以启动多个服务 我刚刚收到一条错误消息 指出我的磁盘空间不足 因此我输入 docker system df 并看到我有 21 个卷 如果我有 3 个 docker 容器 每个容器都附加一个卷
  • 将庞大数据库从亚马逊RDS导出到本地mysql

    我在 Amazon RDS 上有一个 mysql 数据库 大约 600GB 数据 我需要将其移回本地专用服务器 但我不知道从哪里开始 每次我尝试初始化 sqldump 时它都会冻结 有没有办法将其移至 S3 甚至可能在开始下载之前将其分成更
  • 如何在没有 SDK 的情况下在 Objective C 中为 S3 创建预签名 URL?

    我正在构建一个 mac 应用程序not使用 AWS iOS 开发工具包 我尝试构建的 GET 请求应遵循以下通用格式 Authorization AWS AWSAccessKeyId base64 hmac sha1 VERB n CONT
  • AWS Lambda 似乎在完成之前退出

    我有一个非常简单的 lambda 函数 nodeJS 它将接收到的事件放入 kinesis 流中 这是源代码 use strict const AWS require aws sdk const kinesis new AWS Kinesi

随机推荐

  • 使用 OpenCV 组合两个图像

    我正在尝试使用 OpenCV 2 1 将两个图像合并为一个 并将两个图像彼此相邻放置 在Python中 我正在做 import numpy as np cv img1 cv LoadImage fn1 0 img2 cv LoadImage
  • 保存为 GIF 后图像质量下降

    我正在开发一款 iOS 应用程序 它允许用户拍摄一系列照片 然后将照片放入动画中并导出为 MP4 和 GIF 虽然 MP4 呈现源质量 但 GIF 颜色等级是可见的 这是视觉比较 GIF MP4 我用于导出为 GIF 的代码 var dic
  • Android Firebase 消息传递 SDK 如何防范 Intent 欺骗?

    我使用 Firebase Messaging 创建了一个简单的项目 并使用以下依赖项 implementation com google firebase firebase messaging 20 0 0 我已经构建了该应用程序并检查了它
  • SwiftUI 登录页面布局

    我正在探索 SwiftUI 因为我正在尝试构建登录视图 现在我面临一个问题 这就是我想要实现的目标 正如你所看到的 我已经达到了这一点 但我不喜欢我的实现 struct ContentView View State var username
  • Twilio Studio:将短信对话日志转发到电子邮件

    我正在使用 SMS studio 与入站 SMS 消息进行快速聊天机器人对话 并希望在完成后将对话日志转发到电子邮件 我编写了一个使用 SendGrid API 的函数将短信转发至电子邮件 它独立工作 即 如果我将电话号码配置为在文本输入时
  • _泛型与可变参数函数相结合?

    在 C11 中 我可以创建一个函数 其原型如下所示 void myVaFunc const char const conv 我可以这样运行它 myVaFunc ici 1 test 2 该函数会知道 解析第一个参数后 还有 3 个附加参数
  • QImage 能够打开并渲染纯 16 位图像吗?

    我想标题已经解释了我想知道的事情 有没有可能用 Qt 打开和保存 16 位图像 我并不是指 3 8 24 位或 4 8 32 位 这与纯 8 位图像完全相同 我指的是 R G 和 B 的纯 16 位 与 Patrice 所说的相反 每个组件
  • 詹金斯奴隶中的“mvn:未找到”

    我有 Jenkins Slave 安装了 Java 和 Maven 环境是 Debian 我可以在控制台中运行 java version 和 mvn version 命令 但是当我尝试在 Jenkins 作业中执行 shell 命令时 我收
  • 如何将图像和文本垂直居中对齐?

    我在顶部有一个 DIV 和一些锚点 第一个是徽标样式 其余的是文本 我设置的样式如下 div nav top height 120px vertical align middle a nav logo background no repea
  • QMediaPlayer。如何播放带有多个音频的视频?

    有一个带有两个音轨的视频文件 Duration 01 05 09 12 start 0 000000 bitrate 2781 kb s Stream 0 0 Video mpeg4 Advanced Simple Profile XVID
  • 如果我睡10毫秒。我需要增加什么才能获得第二个?

    即我正在使用std this thread sleep for std chrono milliseconds 10 在程序循环中 如果我有一个变量在此循环中递增以显示经过的秒数 我需要递增什么 i e float x 0 对于每个步骤 x
  • 使用shiny将server.R中读取的数据传递到ui.R中

    In ui R 我首先读取了固定的样本数据 datT2 lt fread paste0 data 30062019KRB csv header TRUE sep stringsAsFactors FALSE encoding UTF 8 提
  • ggplot2 为平淡的 altman 图中的每个面添加几何线

    我有以下数据框 structure list Lightbox c 84L 67L 80L 63L 76L 66L 79L 81L 77L 82L 84L 67L 80L 63L 76L 66L 79L 81L 77L 82L 84L 67
  • jQuery UI 对话框定位

    我正在尝试使用jQuery 对话框 UI库 以便在将鼠标悬停在某些文本上时将对话框放置在其旁边 jQuery 对话框采用一个位置参数 该参数是从当前视口的左上角开始测量的 换句话说 0 0 将始终将其放在浏览器窗口的左上角 无论您当前滚动到
  • 获取连接表列的不同总和

    我在这里遇到问题 我希望有一个简单的解决方案 我会尝试使这尽可能简单 门票属于与会者 Example 得到结果没有子查询 你必须求助于高级窗口函数技巧 SELECT sum count OVER AS tickets count sum m
  • 合并重叠区间的算法

    我一直在寻找一种有效的算法来合并动态间隔数组上的重叠间隔 例如 开始时间 结束时间 明智的 1 2 4 8 3 10 becomes 1 2 3 10 合并后 因为 4 8 和 3 10 重叠 重叠意味着两个间隔的任何部分共享相同的时刻 我
  • 将sourcesJar任务添加到自定义Gradle插件

    我的公司最近为普通配置 存储库 跨项目的常见依赖项等 编写了 gradle 插件 总的来说 这极大地简化了我们的构建过程 并发现了项目之间的一些不一致之处 我们最近尝试添加一个sourcesJar任务到插件 但它不起作用 这是损坏的插件 p
  • 同一内存地址有两个不同的值

    Code include
  • ts:“Props”可以用任意类型实例化,该类型可能与其他类型无关

    const withFirebase
  • 如何在AWS lex中从意图A调用意图B? [复制]

    这个问题在这里已经有答案了 我正在使用 aws lex 我有一个意图 A 我给它起了个名字welcomeMsg 我想打电话给另一个人intent B from intent A 欢迎msg intent A 它会说 gt Hi I am a