为了账号安全,请及时绑定邮箱和手机立即绑定

如何验证亚马逊开发者门户中的内置槽值?

如何验证亚马逊开发者门户中的内置槽值?

慕森王 2021-10-19 15:24:35
我正在使用 AMAZON.US_CITY 插槽类型并使用对话框管理。尝试验证内置插槽的插槽值,所以知道如何完成吗?我提到了:https : //developer.amazon.com/docs/custom-skills/validate-slot-values.html#configure 我知道验证规则,但对于内置插槽类型,他们只提供两个选项 1。只接受一组值。2. 只拒绝一组值。因此,在第一种情况下,它接受与您指定的一组固定值匹配的值。在第二种情况下,它拒绝与您指定的一组固定值匹配的值。那么对于这种情况可以做些什么呢?如何创建满足我的条件的验证规则?
查看完整描述

2 回答

?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

Skill你可以添加validationSlot

从 Intent 中选择槽

意图 > yourslot > 验证

Beloe Image 帮助您:

//img1.sycdn.imooc.com//616e72d10001347c22080523.jpg

查看完整回答
反对 回复 2021-10-19
?
精慕HU

TA贡献1845条经验 获得超8个赞

Alexa 在 Alexa 开发人员控制台中提供的验证更简单,因为它完全由 Alexa 管理。


但实际上您也可以在 lambda 函数上管理所有内容。例如,如果您使用的是 pythonask-sdk-core库,您可以捕获槽值,使用您决定的自定义规则对其进行验证,ElicitSlotDirective如果不满足则返回一个。


示例代码:


 if slot_value is not in ['accepted', 'values']:

      prompt = "The slot value is invalid, say something else"

      return handler_input.response_builder.ask(prompt).add_directive(

                ElicitSlotDirective(

                    slot_to_elicit=slot_name

                )).response

这将导致 alexa 向用户询问插槽的另一个值,同时保留有关意图的所有其他信息,例如其他插槽、实际意图、会话 ID...


查看完整回答
反对 回复 2021-10-19
  • 2 回答
  • 0 关注
  • 167 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信