Scene

La escena es la unidad básica de flujo de control cuando se diseña una conversación. Se pueden encadenar con otras escenas, generar solicitudes para el usuario final y definir ranuras. El nombre de la escena se especifica en el nombre del archivo.

Representación YAML
onEnter: 
  object (EventHandler)
intentEvents: 
  - object (IntentEvent)
conditionalEvents: 
  - object (ConditionalEvent)
slots: 
  - object (Slot)
onSlotUpdated: 
  object (EventHandler)
Campos
onEnter

object (EventHandler)

Controlador que se invocará durante la transición a esta escena.

intentEvents[]

object (IntentEvent)

Es la lista de eventos que se activan en función de los intents. Estos eventos se pueden activar en cualquier momento después de que se haya llamado al controlador on_load. Importante: Estos eventos definen el conjunto de intents específicos de esta escena y tendrán prioridad sobre cualquier evento definido globalmente que tenga los mismos intents o sus frases de activación. Los nombres de los intents deben ser únicos dentro de una escena.

conditionalEvents[]

object (ConditionalEvent)

La lista de eventos que se activarán en función de sentencias condicionales. Estas actividades se evalúan una vez que se completa el formulario o inmediatamente después de on_load si la escena no tiene uno (la evaluación solo se realiza una vez). Solo se activará el primer evento coincidente.

slots[]

object (Slot)

Lista ordenada de ranuras. Cada ranura define el tipo de datos que resolverá y la configuración para personalizar la experiencia de esta resolución (p.ej., instrucciones).

onSlotUpdated

object (EventHandler)

Se llama al controlador cuando se produce un cambio en el estado de un espacio que no se debe a actualizaciones dentro de otro controlador. De esta manera, se pueden invalidar los horarios disponibles, invalidar la escena o hacer otros cambios en el estado de la escena.

Ranura

Configuración de una ranura. Los espacios publicitarios son unidades de datos únicas que se pueden completar a través del lenguaje natural (es decir, parámetros de intents), parámetros de sesión y otras fuentes.

Representación YAML
name: string
type: 
  object (ClassReference)
required: boolean
promptSettings: 
  object (PromptSettings)
commitBehavior: 
  object (CommitBehavior)
config: value
defaultValue: 
  object (DefaultValue)
Campos
name

string

Obligatorio. Es el nombre de la ranura.

type

object (ClassReference)

Obligatorio. Declara el tipo de datos de esta ranura.

required

boolean

Opcional. Indica si es necesario completar el espacio antes de avanzar. Los espacios obligatorios que no estén completados activarán un mensaje personalizable para el usuario.

promptSettings

object (PromptSettings)

Opcional. Registra los mensajes para diferentes etapas del llenado de ranuras.

commitBehavior

object (CommitBehavior)

Opcional. Comportamiento de confirmación asociado con la ranura.

config

value (Value format)

Opcional. Configuración adicional asociada con el espacio que se utiliza para llenar el espacio. El formato de la configuración es específico del tipo de ranura. Las referencias de recursos al parámetro de usuario o sesión se pueden agregar a esta configuración. Esta configuración es necesaria para completar ranuras relacionadas con las transacciones y la participación de los usuarios.

Ejemplo: Para un espacio del tipo actions.type.CompletePurchaseValue, la siguiente configuración propone un pedido digital con una referencia a un parámetro de sesión userSelectedSkuId definido por el cliente:

{ "@type": "type.googleapis.com/ google.actions.transactions.v3.CompletePurchaseValueSpec", "skuId": { "skuType": "SKU_TYPE_IN_APP", "id": "$session.params.userSelectedSkuId", "packageName": "com.example.company" }.

defaultValue

object (DefaultValue)

Opcional. Configuración para propagar un valor predeterminado para este espacio.

PromptSettings

Un solo lugar donde se definen los mensajes de ranura.

Representación YAML
initialPrompt: 
  object (EventHandler)
noMatchPrompt1: 
  object (EventHandler)
noMatchPrompt2: 
  object (EventHandler)
noMatchFinalPrompt: 
  object (EventHandler)
noInputPrompt1: 
  object (EventHandler)
noInputPrompt2: 
  object (EventHandler)
noInputFinalPrompt: 
  object (EventHandler)
Campos
initialPrompt

object (EventHandler)

Solicita el valor del espacio. Ejemplo: "¿De qué tamaño querías?".

noMatchPrompt1

object (EventHandler)

Es el mensaje que se debe proporcionar cuando la entrada del usuario no coincide con el tipo de valor esperado para el espacio por primera vez. Ejemplo: "Lo siento, no entendí".

noMatchPrompt2

object (EventHandler)

Es el mensaje que se debe proporcionar cuando la entrada del usuario no coincide con el tipo de valor esperado para el espacio por segunda vez. Ejemplo: "Lo siento, no entendí".

noMatchFinalPrompt

object (EventHandler)

Es el mensaje que se debe proporcionar cuando la entrada del usuario no coincide con el tipo de valor esperado para el espacio por última vez. Ejemplo: "Lo siento, no entendí".

noInputPrompt1

object (EventHandler)

Es la instrucción que se debe dar cuando el usuario no proporciona una entrada por primera vez. Ejemplo: "Lo siento, no entendí".

noInputPrompt2

object (EventHandler)

Es la instrucción que se debe dar cuando el usuario no proporciona una entrada por segunda vez. Ejemplo: "Lo siento, no entendí".

noInputFinalPrompt

object (EventHandler)

Es la instrucción que se debe dar cuando el usuario no proporciona una entrada por última vez. Ejemplo: "Lo siento, no entendí".

CommitBehavior

Mensaje que describe el comportamiento de confirmación asociado con el espacio publicitario después de que se completó correctamente.

Representación YAML
writeSessionParam: string
Campos
writeSessionParam

string

El parámetro de sesión para escribir el valor del espacio después de que se completa. Ten en cuenta que, por el momento, las rutas anidadas no son compatibles. “$$” se usa para escribir el valor del espacio en un parámetro de sesión con el mismo nombre que el espacio. P. ej.: writeSessionParam = "fruit" corresponde a "$session.params.fruit". writeSessionParam = "ticket" corresponde a "$session.params.ticket".

DefaultValue

Configuración para propagar un valor predeterminado para este espacio.

Representación YAML
sessionParam: string
constant: value
Campos
sessionParam

string

Opcional. El parámetro de sesión que se utiliza para inicializar el valor de ranura, si tiene un valor que no está vacío. El tipo del valor debe coincidir con el tipo de ranura. Ten en cuenta que, por el momento, las rutas anidadas no son compatibles. P. ej., sessionParam = "fruit" corresponde a $session.params.fruit. sessionParam = "ticket" corresponde a $session.params.ticket.

constant

value (Value format)

Opcional. Valor predeterminado constante para la ranura. Solo se usará si no se propagó un valor para este espacio a través del sessionParam. El tipo de este valor debe coincidir con el tipo de ranura.