Scene

La scena è l'unità di base del flusso di controllo durante la progettazione di una conversazione. Possono essere concatenati ad altre scene, generare prompt per l'utente finale e definire slot. Il nome della scena è specificato nel nome del file.

Rappresentazione YAML
onEnter: 
  object (EventHandler)
intentEvents: 
  - object (IntentEvent)
conditionalEvents: 
  - object (ConditionalEvent)
slots: 
  - object (Slot)
onSlotUpdated: 
  object (EventHandler)
Campi
onEnter

object (EventHandler)

Gestore da richiamare durante il passaggio a questa scena.

intentEvents[]

object (IntentEvent)

L'elenco di eventi che si attivano in base agli intent. Questi eventi possono essere attivati in qualsiasi momento dopo la chiamata del gestore on_load. Importante: questi eventi definiscono l'insieme di intent che hanno come ambito questa scena e avranno la precedenza su qualsiasi evento definito a livello globale che abbia gli stessi intent o frasi di attivazione. I nomi degli intent devono essere univoci all'interno di una scena.

conditionalEvents[]

object (ConditionalEvent)

L'elenco di eventi da attivare in base alle istruzioni condizionali. Questi vengono valutati dopo che il modulo è stato compilato o immediatamente dopo on_load se la scena non ha un modulo (la valutazione viene eseguita una sola volta). Verrà attivato solo il primo evento corrispondente.

slots[]

object (Slot)

Elenco ordinato di slot. Ogni slot definisce il tipo di dati che verranno risolti e la configurazione per personalizzare l'esperienza di questa risoluzione (ad es. prompt).

onSlotUpdated

object (EventHandler)

Il gestore viene chiamato quando si verifica un cambiamento di stato di uno slot non causato da aggiornamenti all'interno di un altro gestore. Ciò consente l'annullamento della validità degli slot, dell'annullamento della validità della scena o di altre modifiche allo stato della scena.

Slot

Configurazione per uno slot. Le slot sono singole unità di dati che possono essere riempite tramite linguaggio naturale (ovvero parametri di intent), parametri di sessione e altre origini.

Rappresentazione YAML
name: string
type: 
  object (ClassReference)
required: boolean
promptSettings: 
  object (PromptSettings)
commitBehavior: 
  object (CommitBehavior)
config: value
defaultValue: 
  object (DefaultValue)
Campi
name

string

Obbligatorio. Nome dell'area.

type

object (ClassReference)

Obbligatorio. Dichiara il tipo di dati di questo slot.

required

boolean

(Facoltativo) Indica se lo spazio deve essere riempito prima di avanzare. Gli slot obbligatori non riempiti attiveranno un prompt personalizzabile per l'utente.

promptSettings

object (PromptSettings)

(Facoltativo) Registra i prompt per le diverse fasi di riempimento degli slot.

commitBehavior

object (CommitBehavior)

(Facoltativo) Comportamento del commit associato all'area.

config

value (Value format)

(Facoltativo) Configurazione aggiuntiva associata allo slot utilizzata per riempire lo slot. Il formato della configurazione è specifico per il tipo di area annuncio. A questa configurazione puoi aggiungere riferimenti delle risorse al parametro utente o di sessione. Questa configurazione è necessaria per riempire gli slot relativi alle transazioni e al coinvolgimento degli utenti.

Esempio: per un'area di tipo actions.type.CompletePurchaseValue, la seguente configurazione propone un ordine per prodotti digitali con un riferimento a un parametro di sessione definito dal cliente userSelectedSkuId:

{ "@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)

(Facoltativo) Configurazione per compilare un valore predefinito per questa area annuncio.

PromptSettings

Un unico posto in cui vengono definiti i prompt di slot.

Rappresentazione YAML
initialPrompt: 
  object (EventHandler)
noMatchPrompt1: 
  object (EventHandler)
noMatchPrompt2: 
  object (EventHandler)
noMatchFinalPrompt: 
  object (EventHandler)
noInputPrompt1: 
  object (EventHandler)
noInputPrompt2: 
  object (EventHandler)
noInputFinalPrompt: 
  object (EventHandler)
Campi
initialPrompt

object (EventHandler)

Richiede il valore dello slot stesso. Esempio: "Quale taglia volevi?"

noMatchPrompt1

object (EventHandler)

Prompt da fornire quando l'input dell'utente non corrisponde per la prima volta al tipo di valore previsto per lo slot. Esempio: "Non ho capito".

noMatchPrompt2

object (EventHandler)

Richiesta da fornire quando l'input dell'utente non corrisponde per la seconda volta al tipo di valore previsto per lo slot. Esempio: "Non ho capito".

noMatchFinalPrompt

object (EventHandler)

Prompt da fornire quando l'input dell'utente non corrisponde al tipo di valore previsto per lo slot per l'ultima volta. Esempio: "Non ho capito".

noInputPrompt1

object (EventHandler)

Richiesta da fornire quando l'utente non fornisce un input per la prima volta. Esempio: "Non ho capito".

noInputPrompt2

object (EventHandler)

Richiesta da fornire quando l'utente non fornisce un input per la seconda volta. Esempio: "Non ho capito".

noInputFinalPrompt

object (EventHandler)

Prompt da mostrare quando l'utente non fornisce un input per l'ultima volta. Esempio: "Non ho capito".

CommitBehavior

Messaggio che descrive il comportamento di commit associato allo slot dopo che è stato riempito correttamente.

Rappresentazione YAML
writeSessionParam: string
Campi
writeSessionParam

string

Il parametro di sessione per scrivere il valore dello slot dopo averlo riempito. Tieni presente che i percorsi nidificati non sono attualmente supportati. "$$" viene utilizzato per scrivere il valore slot in un parametro di sessione con lo stesso nome dello slot. Ad esempio: writeSessionParam = "fruit" corrisponde a "$session.params.fruit". writeSessionParam = "ticket" corrisponde a "$session.params.ticket".

DefaultValue

Configurazione per compilare un valore predefinito per questa area annuncio.

Rappresentazione YAML
sessionParam: string
constant: value
Campi
sessionParam

string

(Facoltativo) Il parametro di sessione da utilizzare per inizializzare il valore slot, se ha un valore non vuoto. Il tipo del valore deve corrispondere al tipo di area. Tieni presente che i percorsi nidificati non sono attualmente supportati. Ad esempio: sessionParam = "fruit" corrisponde a $session.params.fruit. sessionParam = "ticket" corrisponde a $session.params.ticket.

constant

value (Value format)

(Facoltativo) Valore predefinito costante per l'area. Verrà utilizzato solo se un valore per questa area non è stato compilato tramite sessionParam. Il tipo di questo valore deve corrispondere al tipo di area.