- Zapis JSON
- ExpectedInput
- InputPrompt
- SpeechResponse
- RichResponse
- Element
- SimpleResponse
- BasicCard
- Przycisk
- StructuredResponse
- OrderUpdate
- Działanie
- Rachunek
- RejectionInfo
- CancellationInfo
- InTransitInfo
- FulfillmentInfo
- ReturnInfo
- UserNotification
- MediaResponse
- MediaObject
- CarouselBrowse
- Element
- TableCard
- ColumnProperties (Właściwości kolumny)
- Wiersz
- Komórka
- HtmlResponse
- Sugestia
- LinkOutSuggestion
- ExpectedIntent,
- FinalResponse
- CustomPushMessage
- UserNotification
- Cel
AppResponse to odpowiedź wysłana przez realizację do Asystenta Google. Przykłady wykorzystania tych danych w Actions on Google znajdziesz na stronie https://developers.google.com/assistant/df-asdk/reference/conversation-webhook-json#conversation-response-body.
Zapis JSON | |
---|---|
{ "conversationToken": string, "userStorage": string, "resetUserStorage": boolean, "expectUserResponse": boolean, "expectedInputs": [ { object ( |
Pola | |
---|---|
conversationToken |
Nieprzejrzysty token recyrkulowany do akcji w każdym wątku. |
userStorage |
Nieprzejrzysty token kontrolowany przez akcję, który jest trwały w rozmowach konkretnego użytkownika. Jeśli pole jest puste lub nieokreślone, istniejący token pozostaje niezmieniony. Maksymalny rozmiar ciągu to 10 tys. bajtów. Jeśli z tym samym użytkownikiem jest wyświetlanych wiele okien jednocześnie, aktualizacje tego tokena mogą nieoczekiwanie zastępować się nawzajem. |
resetUserStorage |
Określa, czy wyczyścić trwałą pamięć userStorage. Jeśli zasada ma wartość Prawda, podczas następnej interakcji z użytkownikiem pole userStorage będzie puste. |
expectUserResponse |
Wskazuje, czy akcja oczekuje odpowiedzi użytkownika. Ta wartość ma wartość prawda, gdy wątek trwa, a wartość false (fałsz) po zakończeniu rozmowy. |
expectedInputs[] |
Lista danych wejściowych, jakich oczekuje akcja. Każda z nich może być typowym działaniem w intencji Google (zaczynając się od słowa „actions”) lub zawierać listę możliwych intencji. Obecnie obsługiwane jest tylko 1 działanie wejściowe. |
finalResponse |
Odpowiedź końcowa, gdy akcja nie oczekuje odpowiedzi użytkownika. |
customPushMessage |
Niestandardowa wiadomość push, która umożliwia deweloperom wysyłanie uporządkowanych danych do działań w Google. |
isInSandbox |
Wskazuje, czy odpowiedź ma być obsługiwana w trybie piaskownicy. Jest on potrzebny do przekazania uporządkowanych danych do Google w trybie piaskownicy. |
ExpectedInput
Zapis JSON | |
---|---|
{ "inputPrompt": { object ( |
Pola | |
---|---|
inputPrompt |
Spersonalizowany prompt używany do pytania użytkownika o wprowadzenie. |
possibleIntents[] |
Lista intencji, które mogą zostać wykorzystane do realizacji tych danych wejściowych. Aby działania w Google zwracały tylko nieprzetworzone dane wejściowe użytkownika, aplikacja powinna prosić o intencję |
speechBiasingHints[] |
Lista wyrażeń, których akcja ma używać na potrzeby promowania mowy. Dozwolonych jest maksymalnie 1000 wyrażeń. |
InputPrompt
Komunikat używany przez Asystenta, aby nakłonić użytkownika do wpisania pytania do aplikacji.
Zapis JSON | |
---|---|
{ "initialPrompts": [ { object ( |
Pola | |
---|---|
initialPrompts[] |
Początkowa prośba o podanie danych wejściowych użytkownika. Obsługiwany jest tylko jeden komunikat initial_prompt. |
richInitialPrompt |
Ładunek promptu. |
noInputPrompts[] |
Prompt używany do pytania użytkownika, gdy nie ma żadnych danych wejściowych. |
SpeechResponse
Odpowiedź zawierająca tylko mowę. WYCOFANE.
Zapis JSON | |
---|---|
{ // Union field |
Pola | ||
---|---|---|
Pole sumy type . Rodzaje generowania mowy: zamiana tekstu na mowę lub SSML. type może mieć tylko jedną z tych wartości: |
||
textToSpeech |
Zwykły tekst mowy, np. "dokąd chcesz się wybrać?"/ |
|
ssml |
Uporządkowana odpowiedź głosowa w formacie SSML, np. „ |
RichResponse
Odpowiedź rozszerzona, która może zawierać dźwięk, tekst, karty, sugestie i uporządkowane dane.
Zapis JSON | |
---|---|
{ "items": [ { object ( |
Pola | |
---|---|
items[] |
Lista elementów interfejsu, które składają się na odpowiedź. Elementy muszą spełniać te wymagania: 1. Pierwszym elementem musi być |
suggestions[] |
Lista sugerowanych odpowiedzi. Będą one zawsze wyświetlane na końcu odpowiedzi. Jeśli użyjesz w zasadzie |
linkOutSuggestion |
Dodatkowy element sugestii, który może prowadzić do powiązanej aplikacji lub strony. |
Element
Elementy odpowiedzi.
Zapis JSON | |
---|---|
{ "name": string, // Union field |
Pola | ||
---|---|---|
name |
Opcjonalny nazwany identyfikator tego produktu. |
|
Pole sumy item . Typ produktu. item może mieć tylko jedną z tych wartości: |
||
simpleResponse |
Odpowiedź tylko głosowa i tekstowa. |
|
basicCard |
Kartę podstawową. |
|
structuredResponse |
Ładunek uporządkowany do przetworzenia przez Google. |
|
mediaResponse |
Odpowiedź wskazująca zestaw multimediów do odtworzenia. |
|
carouselBrowse |
Karuzela przeglądania, użyj zamiast tego karty przeglądania kolekcji |
|
tableCard |
Karta z tabelą. |
|
htmlResponse |
Odpowiedź HTML używana do renderowania w Canvas. |
SimpleResponse
Prosta odpowiedź zawierająca mowę lub tekst, która zostanie wyświetlona użytkownikowi.
Zapis JSON | |
---|---|
{ "textToSpeech": string, "ssml": string, "displayText": string } |
Pola | |
---|---|
textToSpeech |
Zwykły tekst mowy, np. „dokąd chcesz się wybrać?” Wzajemnie wykluczane z ssml. |
ssml |
Uporządkowana odpowiedź głosowa wyświetlana użytkownikowi w formacie SSML, np. |
displayText |
Opcjonalny tekst do wyświetlenia w dymku czatu. Jeśli nie zostanie podany, zostanie użyte renderowanie interfejsu textToSpeech lub ssml powyżej. Limit wynosi 640 znaków. |
BasicCard
Podstawowa karta, na której można wyświetlać określone informacje, np. obraz lub tekst.
Zapis JSON | |
---|---|
{ "title": string, "subtitle": string, "formattedText": string, "image": { object ( |
Pola | |
---|---|
title |
Ogólny tytuł karty. Opcjonalnie. |
subtitle |
Opcjonalnie. |
formattedText |
Tekst główny karty. Obsługuje ograniczony zestaw składni znaków Markdown na potrzeby formatowania. Wymagany, chyba że dodano obraz. |
image |
Baner powitalny karty. Wysokość jest stała i wynosi 192 dp. Opcjonalnie. |
buttons[] |
Przyciski. Obecnie obsługiwany jest maksymalnie 1 przycisk. Opcjonalnie. |
imageDisplayOptions |
typ opcji wyświetlania obrazu. Opcjonalnie. |
Przycisk
Obiekt przycisku, który zwykle wyświetla się u dołu karty.
Zapis JSON | |
---|---|
{
"title": string,
"openUrlAction": {
object ( |
Pola | |
---|---|
title |
tytułu przycisku. To pole jest wymagane. |
openUrlAction |
Działanie, które ma zostać wykonane, gdy użytkownik kliknie przycisk. To pole jest wymagane. |
StructuredResponse
Zdefiniowana odpowiedź aplikacji za pomocą uporządkowanych danych.
Zapis JSON | |
---|---|
{ // Union field |
Pola | ||
---|---|---|
Pole sumy data . Kontener odpowiedzi ładunku z agentów innych firm. data może mieć tylko jedną z tych wartości: |
||
orderUpdate |
Po otrzymaniu zamówienia aplikacja udostępnia jego aktualizację (np. |
|
orderUpdateV3 |
Po otrzymaniu zamówienia aplikacja udostępnia aktualizację zamówienia w formacie API v3. |
OrderUpdate
Wycofane: użyj wersji 3 Proto. Zaktualizuj zamówienie.
Zapis JSON | |
---|---|
{ "googleOrderId": string, "actionOrderId": string, "orderState": { object ( |
Pola | ||
---|---|---|
googleOrderId |
Identyfikator zamówienia to identyfikator wydany przez Google. |
|
actionOrderId |
To pole jest wymagane. Kanoniczny identyfikator zamówienia odwołujący się do tego zamówienia. Jeśli integrator nie wygeneruje kanonicznego identyfikatora zamówienia w swoim systemie, może po prostu skopiować identyfikator googleOrderId zawarty w tej kolejności. |
|
orderState |
Nowy stan zamówienia. |
|
orderManagementActions[] |
Zaktualizowano działania związane z zarządzaniem zamówieniem, np. zarządzanie, modyfikowanie, kontakt z zespołem pomocy. |
|
receipt |
Pokwitowanie zamówienia. |
|
updateTime |
Kiedy zamówienie zostało zaktualizowane z perspektywy aplikacji. Znacznik czasu w formacie RFC3339 UTC „Zulu”, z dokładnością do nanosekund. Przykład: |
|
totalPrice |
Nowa łączna cena zamówienia |
|
lineItemUpdates |
Mapa zmian na poziomie elementu zamówienia posortowanych według identyfikatora elementu. Opcjonalnie. Obiekt zawierający listę par |
|
userNotification |
Jeśli została określona, wyświetla użytkownikowi powiadomienie z podanym tytułem i tekstem. Określenie powiadomienia to tylko sugestia powiadomienia, ale nie ma gwarancji, że spowoduje ono wyświetlenie powiadomienia. |
|
infoExtension |
Dodatkowe dane oparte na niestandardowym stanie zamówienia lub jako dodatek do informacji o stanie standardowym. Obiekt zawierający pola dowolnego typu. Dodatkowe pole |
|
Pole sumy info . Dodatkowe informacje powiązane ze stanem zamówienia. info może mieć tylko jedną z tych wartości: |
||
rejectionInfo |
Informacje o stanie odrzucenia. |
|
cancellationInfo |
Informacje o stanie anulowania. |
|
inTransitInfo |
Informacje o stanie transportu publicznego. |
|
fulfillmentInfo |
Informacje o stanie realizacji. |
|
returnInfo |
Informacje o zwróconym stanie. |
Działanie
Dalsze działanie związane z aktualizacją zamówienia.
Zapis JSON | |
---|---|
{ "type": enum ( |
Pola | |
---|---|
type |
typ działania. |
button |
Etykieta przycisku i link. |
Rachunek
Wycofane: użyj wersji 3 Proto. Odbiór, gdy stan jest POTWIERDZONY lub inny (np. IN_TRANSIT, FULFILLED) ze stanem POTWIERDZONO.
Zapis JSON | |
---|---|
{ "confirmedActionOrderId": string, "userVisibleOrderId": string } |
Pola | |
---|---|
confirmedActionOrderId |
Potwierdzono identyfikator zamówienia po odebraniu zamówienia przez integratora. Jest to kanoniczny identyfikator zamówienia używany w systemie integratora, który odwołuje się do zamówienia, a później może być używany do identyfikacji zamówienia jako To pole zostało wycofane. Zamiast tego przekaż to pole za pomocą parametru OrderUpdate.action_order_id. |
userVisibleOrderId |
Opcjonalnie. Identyfikator widoczny dla użytkownika odnoszący się do bieżącego zamówienia, który zostanie wyświetlony na karcie potwierdzenia (jeśli jest dostępna). Powinien to być identyfikator, który zwykle znajduje się na wydrukowanym rachunku lub rachunku wysyłanym na adres e-mail użytkownika. Użytkownik powinien mieć możliwość użycia tego identyfikatora do swojego zamówienia na obsługę klienta świadczoną przez integratorów. Pamiętaj, że to pole musi być wypełnione, jeśli integrator generuje dla użytkownika identyfikator zamówienia z wydrukowanym potwierdzeniem lub potwierdzeniem e-mail. |
RejectionInfo
Informacje o odrzuceniu, gdy stan jest ODRZUCONY. Ten komunikat może zostać wypełniony podczas pierwszej aktualizacji zamówienia w wątku lub w wyniku późniejszej aktualizacji zamówień asynchronicznych.
Zapis JSON | |
---|---|
{
"type": enum ( |
Pola | |
---|---|
type |
Typ odrzucenia. |
reason |
Przyczyna błędu. |
CancellationInfo
Wycofane: użyj wersji 3 Proto. Informacje o anulowaniu, gdy stan to ANULOWANO.
Zapis JSON | |
---|---|
{ "reason": string } |
Pola | |
---|---|
reason |
Przyczyna anulowania. |
InTransitInfo
Wycofane: użyj wersji 3 Proto. Informacje podczas transportu, gdy stan to IN_TRANSIT.
Zapis JSON | |
---|---|
{ "updatedTime": string } |
Pola | |
---|---|
updatedTime |
Czas ostatniej aktualizacji w trakcie przesyłania. Znacznik czasu w formacie RFC3339 UTC „Zulu”, z dokładnością do nanosekund. Przykład: |
FulfillmentInfo
Wycofane: użyj wersji 3 Proto. Informacje o realizacji, gdy stan to FULFILLED.
Zapis JSON | |
---|---|
{ "deliveryTime": string } |
Pola | |
---|---|
deliveryTime |
Kiedy zamówienie zostanie zrealizowane. Znacznik czasu w formacie RFC3339 UTC „Zulu”, z dokładnością do nanosekund. Przykład: |
ReturnInfo
Wycofane: użyj wersji 3 Proto. Informacje zwrotne, gdy stan to REJECTED.
Zapis JSON | |
---|---|
{ "reason": string } |
Pola | |
---|---|
reason |
Przyczyna zwrotu. |
UserNotification
Opcjonalne powiadomienie użytkownika wyświetlane w ramach aktualizacji zamówienia.
Zapis JSON | |
---|---|
{ "title": string, "text": string } |
Pola | |
---|---|
title |
Tytuł powiadomienia użytkownika. |
text |
Treść powiadomienia. |
MediaResponse
Odpowiedź wskazująca zestaw multimediów do odtworzenia w rozmowie.
Zapis JSON | |
---|---|
{ "mediaType": enum ( |
Pola | |
---|---|
mediaType |
typ multimediów w tej odpowiedzi. |
mediaObjects[] |
Lista obiektów multimedialnych. |
MediaObject
Reprezentuje 1 obiekt multimediów, który jest zwracany za pomocą MediaResponse. Zawiera informacje o multimediach, takie jak nazwa, opis, adres URL itp.
Zapis JSON | |
---|---|
{ "name": string, "description": string, "contentUrl": string, // Union field |
Pola | ||
---|---|---|
name |
nazwy tego obiektu multimedialnego. |
|
description |
opis tego obiektu multimedialnego. |
|
contentUrl |
Adres URL wskazujący treści multimedialne. |
|
Pole sumy image . Obraz wyświetlany na karcie multimediów. image może mieć tylko jedną z tych wartości: |
||
largeImage |
Duży obraz, np. okładka albumu itp. |
|
icon |
Mała ikona obrazu wyświetlana po prawej stronie tytułu. Rozmiar zostanie zmieniony na 36 x 36 dp. |
CarouselBrowse
Prezentuje zestaw dokumentów AMP jako karuzelę dużych elementów. Elementy można wybrać, aby uruchomić powiązany dokument AMP w przeglądarce AMP.
Zapis JSON | |
---|---|
{ "items": [ { object ( |
Pola | |
---|---|
items[] |
Min.: 2. Maks.: 10. |
imageDisplayOptions |
typ opcji wyświetlania obrazu. Opcjonalnie. |
Element
Element w karuzeli.
Zapis JSON | |
---|---|
{ "title": string, "description": string, "footer": string, "image": { object ( |
Pola | |
---|---|
title |
tytuł elementu karuzeli. To pole jest wymagane. |
description |
opis elementu karuzeli. Opcjonalnie. |
footer |
Tekst stopki elementu karuzeli wyświetlany pod opisem. Pojedynczy wiersz tekstu obcięty za pomocą wielokropka. Opcjonalnie. |
image |
Baner powitalny elementu karuzeli. Opcjonalnie. |
openUrlAction |
Adres URL dokumentu powiązanego z elementem karuzeli. Dokument może zawierać treść HTML lub, jeśli parametr „urlTypeHint” ma wartość AMP_CONTENT, treść AMP. To pole jest wymagane. |
TableCard
Karta, która służy do wyświetlania tabeli tekstowej.
Zapis JSON | |
---|---|
{ "title": string, "subtitle": string, "image": { object ( |
Pola | |
---|---|
title |
Ogólny tytuł tabeli. Opcjonalny, ale musi być ustawiony, jeśli jest ustawiony podtytuł. |
subtitle |
Podtytuł tabeli. Opcjonalnie. |
image |
Obraz powiązany z tabelą. Opcjonalnie. |
columnProperties[] |
Nagłówki i wyrównanie kolumn. |
rows[] |
Dane w wierszach tabeli. Pierwsze 3 wiersze na pewno zostaną wyświetlone, ale inne mogą zostać wycięte na niektórych platformach. Przeprowadź test za pomocą symulatora, aby zobaczyć, które wiersze będą wyświetlane na danej powierzchni. Na platformach, które obsługują funkcję WEB_BROWSER, możesz wskazać użytkownikowi stronę internetową z większą ilością danych. |
buttons[] |
Przyciski. Obecnie obsługiwany jest maksymalnie 1 przycisk. Opcjonalnie. |
ColumnProperties
Zachowuje właściwości kolumn (w tym nagłówki).
Zapis JSON | |
---|---|
{
"header": string,
"horizontalAlignment": enum ( |
Pola | |
---|---|
header |
Tekst nagłówka kolumny. |
horizontalAlignment |
Wyrównanie w poziomie kolumny z treściami. Jeśli wartość nie zostanie określona, treść zostanie wyrównana do krawędzi wiodącej. |
Wiersz
Opisuje wiersz w tabeli.
Zapis JSON | |
---|---|
{
"cells": [
{
object ( |
Pola | |
---|---|
cells[] |
Komórki w tym wierszu. Pierwsze 3 komórki na pewno zostaną wyświetlone, ale inne mogą zostać wycięte na niektórych powierzchniach. Użyj symulatora, aby sprawdzić, które komórki są wyświetlane na danej powierzchni. |
dividerAfter |
Wskazuje, czy po każdym wierszu powinien znajdować się separator. |
Telefon komórkowy
Opisuje komórkę w wierszu.
Zapis JSON | |
---|---|
{ "text": string } |
Pola | |
---|---|
text |
Zawartość komórki. |
HtmlResponse
Odpowiedź wyświetlająca kod HTML przy użyciu funkcji interaktywnego obszaru roboczego. Maksymalny rozmiar odpowiedzi to 50 tys. bajtów.
Zapis JSON | |
---|---|
{ "updatedState": value, "suppressMic": boolean, "url": string } |
Pola | |
---|---|
updatedState |
Przekaż poniższy obiekt JSON do aplikacji. |
suppressMic |
Dodaj opcję, dzięki której mikrofon nie będzie się włączał po uzyskaniu tej odpowiedzi imersyjnej. |
url |
Adres URL aplikacji. |
Sugestia
Element z sugestią, który użytkownik może kliknąć, aby szybko opublikować odpowiedź w rozmowie.
Zapis JSON | |
---|---|
{ "title": string } |
Pola | |
---|---|
title |
Tekst wyświetlany w elemencie sugestii. Po kliknięciu ten tekst jest dosłowny w rozmowie, tak jakby użytkownik wpisał go w zapytaniu. Każdy tytuł musi być unikalny w zestawie elementów sugestii. Wymagane maksymalnie 25 znaków |
LinkOutSuggestion
Tworzy element sugestii, który pozwala użytkownikowi przejść do aplikacji lub witryny powiązanej z tym agentem.
Zapis JSON | |
---|---|
{
"destinationName": string,
"url": string,
"openUrlAction": {
object ( |
Pola | |
---|---|
destinationName |
Nazwa aplikacji lub strony, do której prowadzi ten element. Element zostanie wyrenderowany z tytułem „Otwórz |
url |
Rola wycofana. Zamiast tego użyj OpenUrlAction. |
openUrlAction |
Adres URL aplikacji lub strony, która ma się otwierać, gdy użytkownik kliknie element z sugestią. Własność tej aplikacji lub tego adresu URL musi zostać sprawdzona w ramach działań w konsoli programisty Google. W przeciwnym razie sugestia nie będzie widoczna dla użytkownika. Akcja Open URL obsługuje adresy URL intencji http, https oraz intencji. Adresy URL intencji znajdziesz tutaj: https://developer.chrome.com/multidevice/android/intents |
ExpectedIntent
Oczekiwana intencja, o którą aplikacja prosi Asystenta.
Zapis JSON | |
---|---|
{ "intent": string, "inputValueData": { "@type": string, field1: ..., ... }, "parameterName": string } |
Pola | |
---|---|
intent |
Nazwa intencji wbudowanej, np. |
inputValueData |
Dodatkowe dane konfiguracji wymagane przez intencję wbudowaną. Możliwe wartości intencji wbudowanych: Obiekt zawierający pola dowolnego typu. Dodatkowe pole |
parameterName |
Opcjonalnie parametr intencji, która jest żądana. Ta opcja jest prawidłowa tylko w przypadku żądanych intencji. Służy do promowania mowy. |
FinalResponse
Ostateczna odpowiedź, gdy dane wejściowe użytkownika nie są oczekiwane.
Zapis JSON | |
---|---|
{ // Union field |
Pola | ||
---|---|---|
Pole sumy response . Możliwe typy odpowiedzi. response może mieć tylko jedną z tych wartości: |
||
speechResponse |
Odpowiedź głosowa, gdy użytkownik nie musi wprowadzać danych wejściowych. |
|
richResponse |
Odpowiedź rozszerzona, gdy użytkownik nie musi wprowadzać danych wejściowych. |
CustomPushMessage
Niestandardowy komunikat push zawierający uporządkowane dane służące do przekazywania działań do interfejsu Fulfillment API.
Zapis JSON | |
---|---|
{ "target": { object ( |
Pola | ||
---|---|---|
target |
Określona wartość docelowa żądania push. |
|
Pole sumy content . Różne typy ładunków. content może mieć tylko jedną z tych wartości: |
||
orderUpdate |
Aktualizacja zamówień służąca do aktualizacji zamówień złożonych przy użyciu interfejsów API transakcji. |
|
userNotification |
Jeśli nazwa zostanie określona, wyświetli się użytkownikowi powiadomienie z podanym tytułem i tekstem. |
UserNotification
Powiadomienie dla użytkownika wyświetlane wraz z prośbą.
Zapis JSON | |
---|---|
{ "title": string, "text": string } |
Pola | |
---|---|
title |
Tytuł powiadomienia. |
text |
Treść powiadomienia. |
Cel
Określona wartość docelowa żądania push.
Zapis JSON | |
---|---|
{
"userId": string,
"intent": string,
"argument": {
object ( |
Pola | |
---|---|
userId |
Użytkownik, na który są kierowane reklamy. |
intent |
Zamiar kierowania. |
argument |
Argument docelowy intencji. W przypadku wersji 1 obsługiwany jest tylko 1 argument. |
locale |
Region, na który mają być kierowane reklamy. Stosuje się do kodu języka IETF BCP-47. Może być używane przez aplikację wielojęzycznych odbiorców do kierowania reklam na użytkownika określonej zlokalizowanej aplikacji. Jeśli nie określono inaczej, domyślnie zostanie wybrane ustawienie en-US. |