- Reprezentowanie kanału YAML
- Gniazdo
- PromptSettings (Ustawienia promptów)
- CommitBehavior
- DefaultValue
Scena jest podstawową jednostką sterowania podczas projektowania rozmowy. Sceny można łączyć z innymi scenami, generować prompty dla użytkownika i definiować przedziały. Nazwa sceny jest podana w nazwie pliku.
Reprezentacja YAML | |
---|---|
onEnter: object ( |
Pola | |
---|---|
onEnter |
Moduł obsługi do wywołania przy przechodzeniu do tej sceny. |
intentEvents[] |
Lista zdarzeń wywoływanych na podstawie intencji. Te zdarzenia mogą być wywoływane w dowolnym momencie po wywołaniu modułu on_load. Ważne – te zdarzenia definiują zestaw intencji ograniczonych do tej sceny i mają pierwszeństwo przed wszystkimi zdarzeniami zdefiniowanymi globalnie, które mają te same intencje lub swoje wyrażenia wyzwalające. Nazwy intencji muszą być niepowtarzalne w obrębie sceny. |
conditionalEvents[] |
Lista zdarzeń do wywołania na podstawie instrukcji warunkowych. Są one oceniane po wypełnieniu formularza lub bezpośrednio po on_load, jeśli scena nie ma formularza (ocena jest przeprowadzana tylko raz). Uruchomione zostanie tylko pierwsze pasujące zdarzenie. |
slots[] |
Uporządkowana lista przedziałów. Każdy przedział określa typ danych, które będzie rozpoznawany, oraz konfigurację w celu dostosowania sposobu obsługi tej rozdzielczości (np. prompty). |
onSlotUpdated |
Moduł obsługi jest wywoływany, gdy zmiana stanu przedziału nie jest spowodowana aktualizacjami w innym module obsługi. Umożliwia to unieważnienie przedziałów, unieważnienie sceny lub inne zmiany stanu sceny. |
Boks
Konfiguracja przedziału. Przedziały to pojedyncze jednostki danych, które mogą być wypełniane przy użyciu języka naturalnego (np. parametrów intencji), parametrów sesji i innych źródeł.
Reprezentacja YAML | |
---|---|
name: string type: object ( |
Pola | |
---|---|
name |
To pole jest wymagane. Nazwa boksu. |
type |
To pole jest wymagane. Deklaruje typ danych tego boksu. |
required |
Opcjonalnie. Wskazuje, czy boks musi zostać wypełniony przed przejściem dalej. W przypadku wymaganych przedziałów, które nie są wypełnione, użytkownik zobaczy komunikat, który można dostosować. |
promptSettings |
Opcjonalnie. Rejestruje komunikaty dotyczące różnych etapów wypełniania przedziałów. |
commitBehavior |
Opcjonalnie. Zachowanie zatwierdzenia związane z przedziałem. |
config |
Opcjonalnie. Dodatkowa konfiguracja powiązana z przedziałem, który jest używany do jego wypełnienia. Format konfiguracji zależy od typu przedziału. Do tej konfiguracji można dodać odniesienia do zasobów do użytkownika lub parametru sesji. Ta konfiguracja jest potrzebna do wypełniania przedziałów związanych z transakcjami i zaangażowaniem użytkowników. Przykład: w przypadku boksu typu actions.type.CompleteBuyValue przedstawiona poniżej konfiguracja przedstawia zamówienie towaru cyfrowego z odniesieniem do parametru sesji { "@type": "type.googleapis.com/ google.actions.transactions.v3.CompletePurchaseValueSpec", "skuId": { "skuType": "SKU_TYPE_IN_APP", "id": "$session.params.userSelectedSkuId", "packageName": "com.example.company" } } |
defaultValue |
Opcjonalnie. Konfiguracja wypełniania wartości domyślnej tego przedziału. |
PromptSettings
Pojedyncze miejsce, w którym definiuje się prompty dotyczące przedziałów.
Reprezentacja YAML | |
---|---|
initialPrompt: object ( |
Pola | |
---|---|
initialPrompt |
Pytaj o wartość boksu. Przykład: „Jaki rozmiar chcesz wybrać?”. |
noMatchPrompt1 |
Monit o przyznanie, gdy dane wejściowe użytkownika po raz pierwszy nie pasują do oczekiwanego typu wartości dla boksu. Przykład: „Nie rozumiem”. |
noMatchPrompt2 |
Monit o przyznanie, gdy dane wejściowe użytkownika nie pasują po raz drugi do oczekiwanego typu wartości w tym przedziale. Przykład: „Nie rozumiem”. |
noMatchFinalPrompt |
Monit o przyznanie, gdy dane wejściowe użytkownika nie pasują po raz ostatni do oczekiwanego typu wartości w tym przedziale. Przykład: „Nie rozumiem”. |
noInputPrompt1 |
Monit do podania, gdy użytkownik nie wprowadzi danych po raz pierwszy. Przykład: „Nie rozumiem”. |
noInputPrompt2 |
Monit o przyznanie, gdy użytkownik nie wprowadzi danych po raz drugi. Przykład: „Nie rozumiem”. |
noInputFinalPrompt |
Monit o przyznanie, gdy użytkownik po raz ostatni nie wpisał danych. Przykład: „Nie rozumiem”. |
CommitBehavior
Komunikat opisujący zachowanie zatwierdzenia związane z przedziałem po jego wypełnieniu.
Reprezentacja YAML | |
---|---|
writeSessionParam: string |
Pola | |
---|---|
writeSessionParam |
Parametr sesji do zapisywania wartości boksu po jej wypełnieniu. Pamiętaj, że zagnieżdżone ścieżki nie są obecnie obsługiwane. „$$” służy do zapisywania wartości boksu w parametrze sesji o tej samej nazwie co boks. Np.: writeSessionParam = "owoc" odpowiada parametrowi "$session.params.fruit". writeSessionParam = "ticket" odpowiada parametrowi "$session.params.ticket". |
DefaultValue
Konfiguracja wypełniania wartości domyślnej tego przedziału.
Reprezentacja YAML | |
---|---|
sessionParam: string constant: value |
Pola | |
---|---|
sessionParam |
Opcjonalnie. Parametr sesji używany do inicjowania wartości boksu, jeśli zawiera wartość, która nie jest pusta. Typ wartości musi być zgodny z typem boksu. Pamiętaj, że zagnieżdżone ścieżki nie są obecnie obsługiwane. Na przykład: |
constant |
Opcjonalnie. Stała wartość domyślna przedziału. Będzie ona używana tylko wtedy, gdy wartość tego boksu nie została wypełniona za pomocą |