- YAML 表示法
- 槽
- PromptSettings
- CommitBehavior
- DefaultValueDefaultValue
在设计对话时,场景是控制流的基本单位。它们可以与其他场景串联在一起、为最终用户生成提示,以及定义槽。场景名称在文件名称中指定。
YAML 表示法 | |
---|---|
onEnter: object ( |
字段 | |
---|---|
onEnter |
过渡到此场景时要调用的处理程序。 |
intentEvents[] |
根据 intent 触发的事件的列表。这些事件可在调用 on_load 处理程序后随时触发。重要提示 - 这些事件定义了一组限定于此场景的 intent,其优先级高于具有相同 intent 或其触发短语的任何全局定义的事件。intent 名称在场景中必须是唯一的。 |
conditionalEvents[] |
根据条件语句触发的事件列表。系统会在填充表单后对其进行评估;如果此场景没有表单,则会立即在 on_load 后立即执行评估(仅执行一次评估)。只会触发第一个匹配事件。 |
slots[] |
有序的槽列表。每个插槽都定义了将要解析和配置的数据类型,以便自定义此分辨率的体验(例如提示)。 |
onSlotUpdated |
当槽的状态发生变化不是由另一个处理程序中的更新引起的时,系统会调用处理程序。这样一来,槽位会失效、场景也会失效或场景状态发生其他变化。 |
槽位
槽的配置。槽是单个数据单元,可通过自然语言(即 intent 参数)、会话参数和其他来源填充。
YAML 表示法 | |
---|---|
name: string type: object ( |
字段 | |
---|---|
name |
必需。广告位的名称。 |
type |
必需。声明该插槽的数据类型。 |
required |
可选。指明是否必须填充广告位才能推进。未填充的必需槽位会触发可自定义的提示。 |
promptSettings |
可选。为槽位填充的不同阶段注册提示。 |
commitBehavior |
可选。与槽关联的提交行为。 |
config |
可选。与用于填充槽位的槽相关联的额外配置。配置的格式因槽类型而异。您可以将对用户或会话参数的资源引用添加到此配置中。填充与交易和用户互动相关的槽时需要使用此配置。 示例:对于 actions.type.CompletePurchaseValue 类型的广告位,以下配置引用了客户端定义的会话参数 { "@type": "type.googleapis.com/ google.actions.transactions.v3.CompletePurchaseValueSpec", "skuId": { "skuType": "SKU_TYPE_IN_APP", "id": "$session.params.userSelectedSkuId", "packageName": "com.example.company" } } |
defaultValue |
可选。用于为此槽填充默认值的配置。 |
PromptSettings
在一处定义了槽提示。
YAML 表示法 | |
---|---|
initialPrompt: object ( |
字段 | |
---|---|
initialPrompt |
提示槽值本身。例如:“您想要什么尺码?” |
noMatchPrompt1 |
当用户输入的内容首次与槽的预期值类型不匹配时发出提示。示例:“抱歉,我没听明白。” |
noMatchPrompt2 |
当用户第二次输入的内容与槽的预期值类型不匹配时发出提示。示例:“抱歉,我没听明白。” |
noMatchFinalPrompt |
当用户上次输入的内容与槽的预期值类型不匹配时发出提示。示例:“抱歉,我没听明白。” |
noInputPrompt1 |
在用户首次未提供输入时提示。示例:“抱歉,我没听明白。” |
noInputPrompt2 |
在用户第二次未提供输入时提示。示例:“抱歉,我没听明白。” |
noInputFinalPrompt |
在用户上次未输入内容时提示。示例:“抱歉,我没听明白。” |
CommitBehavior
说明在槽成功填充后与槽关联的提交行为的消息。
YAML 表示法 | |
---|---|
writeSessionParam: string |
字段 | |
---|---|
writeSessionParam |
要在广告位值填充后写入到的会话参数。请注意,目前不支持嵌套路径。“$$”用于将广告位值写入与广告位同名的会话参数。例如:writeSessionParam = "fruit" 对应于“$session.params.fruit”。writeSessionParam = "ticket" 对应于“$session.params.ticket”。 |
DefaultValue
用于为此槽填充默认值的配置。
YAML 表示法 | |
---|---|
sessionParam: string constant: value |
字段 | |
---|---|
sessionParam |
可选。用于初始化槽值的会话参数(如果该参数具有非空值)。值的类型必须与广告位的类型一致。请注意,目前不支持嵌套路径。例如: |
constant |
可选。广告位的常量默认值。仅当此槽的值未通过 |