Method: projects.sendInteraction

Spielt eine Runde der Unterhaltung ab.

HTTP-Anfrage

POST https://actions.googleapis.com/v2/{project=projects/*}:sendInteraction

Die URL verwendet die Syntax der gRPC-Transcodierung.

Pfadparameter

Parameter
project

string

Erforderlich. Das zu testende Projekt, angezeigt durch die Projekt-ID. Format: projects/{project}

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

JSON-Darstellung
{
  "input": {
    object (UserInput)
  },
  "deviceProperties": {
    object (DeviceProperties)
  },
  "conversationToken": string
}
Felder
input

object (UserInput)

Erforderlich. Eingabe des Nutzers.

deviceProperties

object (DeviceProperties)

Erforderlich. Eigenschaften des Geräts, das für die Interaktion mit der Aktion verwendet wird.

conversationToken

string

Intransparentes Token, das bei der vorherigen Interaktion als von SendInteractionResponse empfangenes Token übergeben werden muss. Diese Einstellung kann nicht konfiguriert werden, um eine neue Unterhaltung zu starten, entweder als erste Interaktion in einer Testsitzung oder um eine vorherige Unterhaltung zu beenden und eine neue zu starten.

Antworttext

Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:

Antwort auf eine Gesprächsrunde

JSON-Darstellung
{
  "output": {
    object (Output)
  },
  "diagnostics": {
    object (Diagnostics)
  },
  "conversationToken": string
}
Felder
output

object (Output)

Ausgabe für den Nutzer.

diagnostics

object (Diagnostics)

Diagnosedaten, aus denen hervorgeht, wie die Anfrage bearbeitet wurde.

conversationToken

string

Intransparentes Token, das für SendInteractionRequest beim nächsten RPC-Aufruf festgelegt wird, um dieselbe Konversation fortzusetzen.

UserInput

Nutzereingabe in einer Unterhaltungsrunde.

JSON-Darstellung
{
  "query": string,
  "type": enum (InputType)
}
Felder
query

string

Inhalt der vom Nutzer gesendeten Eingabe.

type

enum (InputType)

Typ der Eingabe.

InputType

Gibt die Eingabequelle, die eingegebene Anfrage oder die Spracheingabe an.

Enums
INPUT_TYPE_UNSPECIFIED Nicht angegebene Eingabequelle.
TOUCH Abfrage über eine GUI-Interaktion.
VOICE Sprachanfrage.
KEYBOARD Eingegebene Suchanfrage.
URL Die Aktion wurde durch einen URL-Link ausgelöst.

Geräteeigenschaften

Eigenschaften des Geräts, die für eine Gesprächsrunde relevant sind

JSON-Darstellung
{
  "surface": enum (Surface),
  "location": {
    object (Location)
  },
  "locale": string,
  "timeZone": string
}
Felder
surface

enum (Surface)

Oberfläche für die Interaktion mit der Aktion.

location

object (Location)

Gerätestandort, z. B. Breiten- und Längengrad sowie formatierte Adresse

locale

string

Sprache, die auf dem Gerät festgelegt ist. Das Format sollte BCP 47 entsprechen: https://tools.ietf.org/html/bcp47. Beispiele: en, en-US, es-419. Weitere Beispiele finden Sie unter https://tools.ietf.org/html/bcp47#appendix-A).

timeZone

string

Die auf dem Gerät festgelegte Zeitzone. Das Format sollte der Zeitzonendatenbank der IANA entsprechen, z.B. „America/New_York“: https://www.iana.org/time-zones

Plattform/Oberfläche

Mögliche Oberflächen, die für die Interaktion mit der Aktion verwendet werden. In Zukunft können weitere Werte hinzugefügt werden.

Enums
SURFACE_UNSPECIFIED Standardwert Dieser Wert wird nicht verwendet.
SPEAKER Lautsprecher (z. B. Google Home)
PHONE Smartphone.
ALLO Google Allo-Chat.
SMART_DISPLAY Smart Display.
KAI_OS KaiOS aus.

Standort

Container, der einen Standort darstellt.

JSON-Darstellung
{
  "coordinates": {
    object (LatLng)
  },
  "formattedAddress": string,
  "zipCode": string,
  "city": string
}
Felder
coordinates

object (LatLng)

Geografische Koordinaten. Erfordert [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION].

formattedAddress

string

Anzeigeadresse, z.B. „1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA“. Erfordert [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION].

zipCode

string

Postleitzahl. Erfordert [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] oder [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION].

city

string

Stadt. Erfordert [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] oder [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION].

LatLng

Ein Objekt, das ein Paar aus Breiten- und Längengrad darstellt. Es wird als Paar aus Werten vom Typ „Double“ (Breiten- und Längengrad) ausgedrückt. Sofern nicht anders angegeben, muss dieses Objekt dem WGS84-Standard entsprechen. Die Werte müssen innerhalb normalisierter Bereiche liegen.

JSON-Darstellung
{
  "latitude": number,
  "longitude": number
}
Felder
latitude

number

Der Breitengrad in Grad. Er muss im Bereich [-90,0, +90,0] liegen.

longitude

number

Der Längengrad in Grad. Er muss im Bereich [-180,0, +180,0] liegen.

Ausgabe

Für den Nutzer sichtbare Ausgabe der Unterhaltungsrunde.

JSON-Darstellung
{
  "text": string,
  "speech": [
    string
  ],
  "canvas": {
    object (Canvas)
  },
  "actionsBuilderPrompt": {
    object (Prompt)
  }
}
Felder
text

string

Gesprochene Antwort, die als einfacher String an Nutzer gesendet wird.

speech[]

string

Von der Aktion produzierte Sprachinhalte. Dazu können auch Markup-Elemente wie SSML gehören.

canvas

object (Canvas)

Interaktiver Canvas-Inhalt.

actionsBuilderPrompt

object (Prompt)

Status der Aufforderung am Ende der Gesprächsrunde. Weitere Informationen zum Prompt: https://developers.google.com/assistant/conversational/prompts

Canvas

Stellt eine Interactive Canvas-Antwort dar, die an den Nutzer gesendet werden soll. Dies kann in Verbindung mit dem Tag "firstSimple" in der enthaltenden Aufforderung, mit dem Nutzer zu sprechen und zusätzlich eine interaktive Canvas-Antwort anzuzeigen. Die maximale Größe der Antwort beträgt 50.000 Byte.

JSON-Darstellung
{
  "url": string,
  "data": [
    value
  ],
  "suppressMic": boolean,
  "enableFullScreen": boolean
}
Felder
url

string

URL der interaktiven Canvas-Webanwendung, die geladen werden soll. Wenn die Richtlinie nicht konfiguriert ist, wird die URL des aktuell aktiven Canvas wiederverwendet.

data[]

value (Value format)

Optional. JSON-Daten, die als Ereignis an die Webseite des immersiven Erlebnisses übergeben werden. Wenn die „Überschreibung“ in der enthaltenen Aufforderung auf „false“ gesetzt ist Datenwerte, die in diesem Canvas-Prompt definiert wurden, werden nach den in vorherigen Canvas-Prompts definierten Datenwerten hinzugefügt.

suppressMic

boolean

Optional. Standardwert: false.

enableFullScreen

boolean

Wenn true aktiviert ist, füllt die Canvas-Anwendung den gesamten Bildschirm aus und hat oben keine Kopfzeile. Außerdem wird auf dem Ladebildschirm eine Toast-Nachricht mit dem Anzeigenamen der Aktion, dem Namen des Entwicklers und einer Anleitung zum Beenden der Aktion angezeigt. Standardwert: false.

Prompt

Eine Antwort an einen Nutzer darstellen.

JSON-Darstellung
{
  "append": boolean,
  "override": boolean,
  "firstSimple": {
    object (Simple)
  },
  "content": {
    object (Content)
  },
  "lastSimple": {
    object (Simple)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ],
  "link": {
    object (Link)
  },
  "canvas": {
    object (Canvas)
  }
}
Felder
append
(deprecated)

boolean

Optional. Modus zum Zusammenführen dieser Nachrichten mit zuvor definierten Nachrichten. „false“ löscht alle zuvor definierten Nachrichten (erste und letzte einfache, Inhalt, Link für Vorschläge und Canvas) und fügt in diesem Prompt definierte Nachrichten hinzu. „wahr“ fügt die in diesem Prompt definierten Nachrichten den in früheren Antworten definierten Nachrichten hinzu. Dieses Feld auf „true“ festlegen ermöglicht auch das Anfügen an einige Felder in einfachen Prompts, der Vorschlagsaufforderung und der Canvas-Aufforderung (Teil der Inhaltsaufforderung). Die Inhalts- und Linkmeldungen werden immer überschrieben, wenn sie im Prompt definiert werden. Der Standardwert ist „false“.

override

boolean

Optional. Modus zum Zusammenführen dieser Nachrichten mit zuvor definierten Nachrichten. „wahr“ löscht alle zuvor definierten Nachrichten (erste und letzte einfache Nachricht, Inhalt, Link für Vorschläge und Canvas) und fügt in diesem Prompt definierte Nachrichten hinzu. „false“ fügt die in diesem Prompt definierten Nachrichten zu den in früheren Antworten definierten Nachrichten hinzu. Belassen dieses Felds auf „false“ ermöglicht auch das Anfügen an einige Felder in einfachen Prompts, der Aufforderung „Vorschläge“ und der Canvas-Aufforderung (Teil der Inhaltsaufforderung). Die Inhalts- und Linkmeldungen werden immer überschrieben, wenn sie in der Aufforderung definiert sind. Der Standardwert ist „false“.

firstSimple

object (Simple)

Optional. Die erste reine Sprach- und Textantwort.

content

object (Content)

Optional. Ein Inhalt wie eine Karte, eine Liste oder ein Medium, das bzw. der dem Nutzer angezeigt werden soll.

lastSimple

object (Simple)

Optional. Die letzte reine Sprach- und Textantwort.

suggestions[]

object (Suggestion)

Optional. Vorschläge, die dem Nutzer angezeigt werden und immer am Ende der Antwort angezeigt werden. Wenn die „Überschreibung“ im zugehörigen Prompt auf „false“ gesetzt ist, werden die in diesem Feld definierten Titel den Titeln hinzugefügt, die in zuvor definierten Prompts für Vorschläge definiert wurden. Doppelte Werte werden entfernt.

canvas

object (Canvas)

Optional. Stellt eine Interactive Canvas-Antwort dar, die an den Nutzer gesendet werden soll.

Einfach

Stellt eine einfache Aufforderung dar, die an einen Nutzer gesendet werden soll.

JSON-Darstellung
{
  "speech": string,
  "text": string
}
Felder
speech

string

Optional. Stellt die Sprache dar, die dem Nutzer vorgelesen werden soll. Kann SSML oder Sprachausgabe sein. Wenn die „Überschreibung“ im enthaltenen Prompt auf „true“ gesetzt ist, ersetzt die in diesem Feld definierte Sprache die vorherige einfache Prompt-Sprache.

text

string

Optionaler Text, der im Infofeld angezeigt wird. Wenn nicht angegeben, wird eine Anzeigedarstellung des obigen Sprachfelds verwendet. Auf 640 Zeichen begrenzt. Wenn die „Überschreibung“ im enthaltenen Prompt auf „true“ gesetzt ist, wird der in diesem Feld definierte Text durch den vorherigen einfachen Prompt-Text ersetzt.

Inhalt

Inhalt, der angezeigt werden soll.

JSON-Darstellung
{

  // Union field content can be only one of the following:
  "card": {
    object (Card)
  },
  "image": {
    object (Image)
  },
  "table": {
    object (Table)
  },
  "media": {
    object (Media)
  },
  "canvas": {
    object (Canvas)
  },
  "collection": {
    object (Collection)
  },
  "list": {
    object (List)
  }
  // End of list of possible types for union field content.
}
Felder
Union-Feld content. Inhalt. Für content ist nur einer der folgenden Werte zulässig:
card

object (Card)

Eine einfache Karte.

image

object (Image)

Ein Bild.

table

object (Table)

Tabellenkarte.

media

object (Media)

Antwort, die eine Gruppe von Medien angibt, die abgespielt werden sollen.

canvas
(deprecated)

object (Canvas)

Eine Antwort, die für das interaktive Canvas-Erlebnis verwendet werden soll.

collection

object (Collection)

Eine Karte mit einer Auswahl von Optionen.

list

object (List)

Eine Karte mit einer Liste von Optionen zur Auswahl.

Infokarte

Eine einfache Karte zur Anzeige einiger Informationen, z.B. einem Bild und/oder Text.

JSON-Darstellung
{
  "title": string,
  "subtitle": string,
  "text": string,
  "image": {
    object (Image)
  },
  "imageFill": enum (ImageFill),
  "button": {
    object (Link)
  }
}
Felder
title

string

Gesamttitel der Karte Optional.

subtitle

string

Optional.

text

string

Der Text der Karte. Unterstützt einen begrenzten Satz von Markdown-Syntax für die Formatierung. Erforderlich, sofern kein Bild vorhanden ist.

image

object (Image)

Ein Hero-Image für die Karte. Die Höhe ist auf 192 dp festgelegt. Optional.

imageFill

enum (ImageFill)

Legt fest, wie der Bildhintergrund ausgefüllt wird. Optional.

button

object (Link)

Schaltfläche. Optional.

Bild

Ein Bild, das auf der Karte angezeigt wird.

JSON-Darstellung
{
  "url": string,
  "alt": string,
  "height": integer,
  "width": integer
}
Felder
url

string

Die Quell-URL des Bildes. Bilder können das Format JPG, PNG und GIF haben (animiert und nicht animiert). Beispiel: https://www.agentx.com/logo.png. Erforderlich.

alt

string

Eine Textbeschreibung des Bildes, das für Barrierefreiheit verwendet werden soll, z.B. Screenreadern. Erforderlich.

height

integer

Die Höhe des Bilds in Pixeln Optional.

width

integer

Die Breite des Bilds in Pixeln Optional.

ImageFill

Mögliche Anzeigeoptionen für Bilder, um die Darstellung des Bildes zu beeinflussen Dieser Parameter sollte verwendet werden, wenn das Seitenverhältnis des Bilds nicht mit dem des Bildcontainers übereinstimmt.

Enums
UNSPECIFIED Nicht spezifizierte Bildfüllung.
GRAY Schließen Sie die Lücken zwischen dem Bild und dem Bildcontainer mit grauen Balken.
WHITE Schließen Sie die Lücken zwischen dem Bild und dem Bildcontainer mit weißen Balken.
CROPPED Das Bild wird so skaliert, dass die Bildbreite und -höhe den Containerabmessungen entsprechen oder diese überschreiten. Dadurch kann der obere und untere Bereich des Bilds zugeschnitten werden, wenn die skalierte Bildhöhe größer als die Containerhöhe ist, oder der linke und rechte Teil des Bilds, wenn die skalierte Bildbreite größer als die Containerbreite ist. Dies ähnelt dem „Zoom-Modus“ auf einem Breitbildfernseher.

OpenUrl

Aktion, die ausgeführt wird, wenn ein Nutzer einen Link öffnet.

JSON-Darstellung
{
  "url": string,
  "hint": enum (UrlHint)
}
Felder
url

string

Das URL-Feld, entweder http- oder https-URLs zum Öffnen einer mit Apps verknüpften App oder einer Webseite

hint

enum (UrlHint)

Gibt einen Hinweis für den URL-Typ an.

UrlHint

Verschiedene Arten von URL-Hinweisen

Enums
AMP Eine URL, die direkt auf AMP-Inhalte oder eine kanonische URL verweist, die über auf AMP-Inhalte verweist.

Tabelle

Eine Tabellenkarte zum Anzeigen einer Tabelle mit Text.

JSON-Darstellung
{
  "title": string,
  "subtitle": string,
  "image": {
    object (Image)
  },
  "columns": [
    {
      object (TableColumn)
    }
  ],
  "rows": [
    {
      object (TableRow)
    }
  ],
  "button": {
    object (Link)
  }
}
Felder
title

string

Gesamttitel der Tabelle Optional, muss aber festgelegt werden, wenn eine Untertitel festgelegt wurde.

subtitle

string

Untertitel für die Tabelle. Optional.

image

object (Image)

Mit der Tabelle verknüpftes Bild. Optional.

columns[]

object (TableColumn)

Überschriften und Ausrichtung von Spalten.

rows[]

object (TableRow)

Zeilendaten der Tabelle. Die ersten 3 Zeilen werden garantiert angezeigt, aber die anderen werden möglicherweise an bestimmten Oberflächen abgeschnitten. Führen Sie einen Test mit dem Simulator durch, um zu sehen, welche Zeilen für eine bestimmte Oberfläche angezeigt werden. Auf Oberflächen, die die WEB_BROWSER-Funktion unterstützen, kannst du den Nutzer auf eine Webseite mit weiteren Daten verweisen.

button

object (Link)

Schaltfläche.

TableColumn

Beschreibt eine Spalte in einer Tabelle.

JSON-Darstellung
{
  "header": string,
  "align": enum (HorizontalAlignment)
}
Felder
header

string

Überschrift für die Spalte.

align

enum (HorizontalAlignment)

Horizontale Ausrichtung des Inhalts mit der Spalte. Wenn kein Wert angegeben ist, wird der Inhalt an der Spitze ausgerichtet.

HorizontalAlignment

Die Ausrichtung des Inhalts innerhalb der Zelle.

Enums
UNSPECIFIED Horizontale Ausrichtung nicht angegeben.
LEADING Oberste Kante der Zelle. Das ist die Standardeinstellung.
CENTER Der Inhalt ist in der Mitte der Spalte ausgerichtet.
TRAILING Der Inhalt ist am Ende der Spalte ausgerichtet.

TableRow

Beschreibt eine Zeile in der Tabelle.

JSON-Darstellung
{
  "cells": [
    {
      object (TableCell)
    }
  ],
  "divider": boolean
}
Felder
cells[]

object (TableCell)

Zellen in dieser Zeile. Die ersten 3 Zellen werden garantiert angezeigt, aber andere werden möglicherweise an bestimmten Oberflächen ausgeschnitten. Führen Sie einen Test mit dem Simulator durch, um zu sehen, welche Zellen für eine bestimmte Oberfläche angezeigt werden.

divider

boolean

Gibt an, ob nach jeder Zeile eine Trennlinie vorhanden sein soll.

TableCell

Beschreibt eine Zelle in einer Zeile.

JSON-Darstellung
{
  "text": string
}
Felder
text

string

Textinhalt der Zelle.

Medien

Stellt ein Medienobjekt dar. Enthält Informationen zum Medium, z. B. Name, Beschreibung und URL.

JSON-Darstellung
{
  "mediaType": enum (MediaType),
  "startOffset": string,
  "optionalMediaControls": [
    enum (OptionalMediaControls)
  ],
  "mediaObjects": [
    {
      object (MediaObject)
    }
  ]
}
Felder
mediaType

enum (MediaType)

Medientyp.

startOffset

string (Duration format)

Startversatz des ersten Medienobjekts.

Dauer in Sekunden mit bis zu neun Nachkommastellen und einem 's' an letzter Stelle. Beispiel: "3.5s".

optionalMediaControls[]

enum (OptionalMediaControls)

Optionale Mediensteuerungstypen, die diese Medienantwortsitzung unterstützen kann. Wenn festgelegt, wird die Anfrage an 3p gesendet, wenn ein bestimmtes Medienereignis eintritt. Wenn die Richtlinie nicht konfiguriert ist, muss 3p dennoch die beiden Standardsteuerungstypen FINISHED und FAILED verarbeiten.

mediaObjects[]

object (MediaObject)

Liste der Medienobjekte

MediaType

Medientyp dieser Antwort.

Enums
MEDIA_TYPE_UNSPECIFIED Nicht angegebener Medientyp.
AUDIO Audiodatei.
MEDIA_STATUS_ACK Antwort, um einen Medienstatusbericht zu bestätigen.

OptionalMediaControls

Optionale Mediensteuerungstypen, die die Medienantwort unterstützen kann

Enums
OPTIONAL_MEDIA_CONTROLS_UNSPECIFIED Nicht angegebener Wert
PAUSED Ereignis pausiert. Wird ausgelöst, wenn der Nutzer die Medien pausiert.
STOPPED Ereignis wurde beendet. Wird ausgelöst, wenn der Nutzer die Drittanbietersitzung während der Medienwiedergabe beendet.

MediaObject

Stellt ein einzelnes Medienobjekt dar

JSON-Darstellung
{
  "name": string,
  "description": string,
  "url": string,
  "image": {
    object (MediaImage)
  }
}
Felder
name

string

Name dieses Medienobjekts.

description

string

Beschreibung dieses Medienobjekts.

url

string

Die URL, die auf den Medieninhalt verweist

image

object (MediaImage)

Bild, das mit der Medienkarte angezeigt werden soll.

MediaImage

Bild, das mit der Medienkarte angezeigt werden soll.

JSON-Darstellung
{

  // Union field image can be only one of the following:
  "large": {
    object (Image)
  },
  "icon": {
    object (Image)
  }
  // End of list of possible types for union field image.
}
Felder
Union-Feld image. Bild. Für image ist nur einer der folgenden Werte zulässig:
large

object (Image)

Ein großes Bild, z. B. das Cover des Albums

icon

object (Image)

Ein kleines Bildsymbol rechts neben dem Titel. Die Größe wird auf 36 x 36 dp reduziert.

Sammlung

Eine Karte, auf der eine Sammlung von Optionen präsentiert wird.

JSON-Darstellung
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (CollectionItem)
    }
  ],
  "imageFill": enum (ImageFill)
}
Felder
title

string

Titel der Sammlung. Optional.

subtitle

string

Untertitel der Sammlung. Optional.

items[]

object (CollectionItem)

Min.: 2, max.: 10

imageFill

enum (ImageFill)

Legt fest, wie die Bildhintergründe von Sammlungselementen ausgefüllt werden. Optional.

CollectionItem

Ein Element in der Sammlung

JSON-Darstellung
{
  "key": string
}
Felder
key

string

Erforderlich. Der NLU-Schlüssel, der mit dem Namen des Eingabeschlüssels im verknüpften Typ übereinstimmt.

Liste

Eine Karte, auf der eine Liste mit Optionen präsentiert wird.

JSON-Darstellung
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (ListItem)
    }
  ]
}
Felder
title

string

Titel der Liste. Optional.

subtitle

string

Untertitel der Liste. Optional.

items[]

object (ListItem)

Min.: 2, max.: 30

ListItem

Ein Element in der Liste

JSON-Darstellung
{
  "key": string
}
Felder
key

string

Erforderlich. Der NLU-Schlüssel, der mit dem Namen des Eingabeschlüssels im verknüpften Typ übereinstimmt.

Vorschlag

Eingabevorschlag, der dem Nutzer angezeigt werden soll.

JSON-Darstellung
{
  "title": string
}
Felder
title

string

Erforderlich. Der Text, der im Vorschlags-Chip angezeigt wird. Wenn dieser Text angetippt wird, wird er wörtlich in der Unterhaltung gepostet, als ob der Nutzer ihn eingegeben hätte. Jeder Titel muss unter den Vorschlags-Chips eindeutig sein. Maximal 25 Zeichen

Diagnose

Diagnoseinformationen zur Gesprächsrunde.

JSON-Darstellung
{
  "actionsBuilderEvents": [
    {
      object (ExecutionEvent)
    }
  ]
}
Felder
actionsBuilderEvents[]

object (ExecutionEvent)

Liste der Ereignisse mit Details zur Verarbeitung der Gesprächsrunde in den Phasen des Actions Builder-Interaktionsmodells. Eingefügt für Actions Builder und Nur Actions SDK-Apps.

ExecutionEvent

Enthält Informationen zum Ausführungsereignis, das während der Verarbeitung der Actions Builder-Unterhaltungsanfrage aufgetreten ist. Eine Übersicht über die Phasen einer Unterhaltungsanfrage finden Sie unter https://developers.google.com/assistant/conversational/actions.

JSON-Darstellung
{
  "eventTime": string,
  "executionState": {
    object (ExecutionState)
  },
  "status": {
    object (Status)
  },
  "warningMessages": [
    string
  ],

  // Union field EventData can be only one of the following:
  "userInput": {
    object (UserConversationInput)
  },
  "intentMatch": {
    object (IntentMatch)
  },
  "conditionsEvaluated": {
    object (ConditionsEvaluated)
  },
  "onSceneEnter": {
    object (OnSceneEnter)
  },
  "webhookRequest": {
    object (WebhookRequest)
  },
  "webhookResponse": {
    object (WebhookResponse)
  },
  "webhookInitiatedTransition": {
    object (WebhookInitiatedTransition)
  },
  "slotMatch": {
    object (SlotMatch)
  },
  "slotRequested": {
    object (SlotRequested)
  },
  "slotValidated": {
    object (SlotValidated)
  },
  "formFilled": {
    object (FormFilled)
  },
  "waitingUserInput": {
    object (WaitingForUserInput)
  },
  "endConversation": {
    object (EndConversation)
  }
  // End of list of possible types for union field EventData.
}
Felder
eventTime

string (Timestamp format)

Zeitstempel des Ereignisses.

Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: "2014-10-02T15:01:23Z" und "2014-10-02T15:01:23.045123456Z".

executionState

object (ExecutionState)

Ausführungsstatus während dieses Ereignisses.

status

object (Status)

Ergebnisstatus eines bestimmten Ausführungsschritts.

warningMessages[]

string

Liste der Warnungen, die während der Ausführung dieses Ereignisses generiert wurden. Warnungen sind Tipps für den Entwickler, die bei der Unterhaltungsanfrage entdeckt wurden. Diese sind normalerweise nicht kritisch und stoppen die Ausführung der Anfrage nicht. Eine Warnung kann beispielsweise ausgegeben werden, wenn der Webhook versucht, einen nicht vorhandenen benutzerdefinierten Typ zu überschreiben. Fehler werden als fehlgeschlagener Statuscode gemeldet, es können jedoch auch Warnungen vorhanden sein, wenn der Status in Ordnung ist.

Union-Feld EventData. Detaillierte Informationen zu verschiedenen Ereignissen, die an der Verarbeitung einer Gesprächsrunde beteiligt sein können Das hier festgelegte Feld definiert den Typ dieses Ereignisses. Für EventData ist nur einer der folgenden Werte zulässig:
userInput

object (UserConversationInput)

Ereignis zur Verarbeitung von Nutzereingaben.

intentMatch

object (IntentMatch)

Intent-Zuordnungsereignis.

conditionsEvaluated

object (ConditionsEvaluated)

Ereignis zur Bedingungsauswertung.

onSceneEnter

object (OnSceneEnter)

OnSceneEnter-Ausführungsereignis.

webhookRequest

object (WebhookRequest)

Weiterleitungsereignis für Webhook-Anfrage.

webhookResponse

object (WebhookResponse)

Eingangsereignis für die Webhook-Antwort.

webhookInitiatedTransition

object (WebhookInitiatedTransition)

Durch Webhook initiiertes Übergangsereignis.

slotMatch

object (SlotMatch)

Slot-Übereinstimmungsereignis.

slotRequested

object (SlotRequested)

Ereignis zum Anfordern einer Anzeigenfläche.

slotValidated

object (SlotValidated)

Slot-Validierungsereignis.

formFilled

object (FormFilled)

Ereignis, das ein Formular ausfüllt.

waitingUserInput

object (WaitingForUserInput)

Warten auf Nutzereingabe.

endConversation

object (EndConversation)

Ereignis zum Ende der Unterhaltung.

ExecutionState

Aktueller Status der Ausführung.

JSON-Darstellung
{
  "currentSceneId": string,
  "sessionStorage": {
    object
  },
  "slots": {
    object (Slots)
  },
  "promptQueue": [
    {
      object (Prompt)
    }
  ],
  "userStorage": {
    object
  },
  "householdStorage": {
    object
  }
}
Felder
currentSceneId

string

ID der derzeit aktiven Szene.

sessionStorage

object (Struct format)

Status des Sitzungsspeichers: https://developers.google.com/assistant/conversational/storage-session

slots

object (Slots)

Status der Slot-Füllung (falls zutreffend): https://developers.google.com/assistant/conversational/scenes#slot_filling

promptQueue[]

object (Prompt)

Aufforderungswarteschlange: https://developers.google.com/assistant/conversational/prompts

userStorage

object (Struct format)

Status des Nutzerspeichers: https://developers.google.com/assistant/conversational/storage-user

householdStorage

object (Struct format)

Status des Speicherplatzes zu Hause: https://developers.google.com/assistant/conversational/storage-home

Slots

Stellt den aktuellen Status der Slots einer Szene dar.

JSON-Darstellung
{
  "status": enum (SlotFillingStatus),
  "slots": {
    string: {
      object (Slot)
    },
    ...
  }
}
Felder
status

enum (SlotFillingStatus)

Der aktuelle Status der Slot-Füllung.

slots

map (key: string, value: object (Slot))

Die mit der aktuellen Szene verknüpften Zeitblöcke.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

SlotFillingStatus

Der aktuelle Status der Slot-Füllung.

Enums
UNSPECIFIED Fallbackwert, wenn das Feld „Nutzung“ nicht ausgefüllt ist.
INITIALIZED Die Slots wurden initialisiert, aber die Slot-Füllung wurde nicht gestartet.
COLLECTING Die Slotwerte werden erfasst.
FINAL Alle Anzeigenflächenwerte sind endgültig und können nicht geändert werden.

Anzeigenfläche

Stellt eine Anzeigenfläche dar.

JSON-Darstellung
{
  "mode": enum (SlotMode),
  "status": enum (SlotStatus),
  "value": value,
  "updated": boolean,
  "prompt": {
    object (Prompt)
  }
}
Felder
mode

enum (SlotMode)

Der Modus des Slots (erforderlich oder optional). Kann vom Entwickler festgelegt werden.

status

enum (SlotStatus)

Der Status des Slots.

value

value (Value format)

Der Wert des Slots. Wenn Sie diesen Wert in der Antwort ändern, wird der Wert in der Slot-Füllung geändert.

updated

boolean

Gibt an, ob der Slotwert in der letzten Runde erfasst wurde. Dieses Feld ist schreibgeschützt.

prompt

object (Prompt)

Optional. Diese Aufforderung wird an den Nutzer gesendet, wenn er einen erforderlichen Slot füllen muss. Dieser Prompt überschreibt den vorhandenen Prompt, der in der Konsole definiert ist. Dieses Feld ist nicht in der Webhook-Anfrage enthalten.

SlotMode

Der Modus einer Anzeigenfläche, d. h., ob er erforderlich ist oder nicht.

Enums
MODE_UNSPECIFIED Fallbackwert, wenn das Feld „Nutzung“ nicht ausgefüllt ist.
OPTIONAL Gibt an, dass der Slot nicht erforderlich ist, um die Slot-Füllung abzuschließen.
REQUIRED Gibt an, dass der Slot erforderlich ist, um die Slot-Füllung abzuschließen.

SlotStatus

Der Status eines Slots.

Enums
SLOT_UNSPECIFIED Fallbackwert, wenn das Feld „Nutzung“ nicht ausgefüllt ist.
EMPTY Gibt an, dass die Anzeigenfläche keine Werte hat. Dieser Status kann nicht über die Antwort geändert werden.
INVALID Gibt an, dass der Slotwert ungültig ist. Dieser Status kann über die Antwort festgelegt werden.
FILLED Gibt an, dass der Slot einen Wert hat. Dieser Status kann nicht über die Antwort geändert werden.

Status

Mit dem Typ Status wird ein logisches Fehlermodell definiert, das für verschiedene Programmierumgebungen wie REST APIs und RPC APIs geeignet ist. Dieses Modell wird von gRPC verwendet. Jede Status-Meldung enthält die folgenden drei Datenelemente: Fehlercode, Fehlermeldung und Fehlerdetails.

Weitere Informationen zu diesem Fehlermodell und zur Arbeit damit finden Sie in der API-Designanleitung.

JSON-Darstellung
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Felder
code

integer

Der Statuscode, der idealerweise ein ENUM-Wert von google.rpc.Code ist.

message

string

Eine an Entwickler gerichtete Fehlermeldung, die englischsprachig sein sollte. Jede Fehlermeldung an den Nutzer sollte lokalisiert und im Feld google.rpc.Status.details gesendet werden. Sie kann auch clientseitig lokalisiert werden.

details[]

object

Eine Auflistung aller Meldungen, die die Fehlerdetails enthalten. Es gibt einen gemeinsamen Satz von Nachrichtentypen, die APIs verwenden können.

Ein Objekt, das Felder eines beliebigen Typs enthält. Ein zusätzliches Feld "@type" enthält einen URI zur Identifizierung des Typs. Beispiel: { "id": 1234, "@type": "types.example.com/standard/id" }.

UserConversationInput

Informationen im Zusammenhang mit Nutzereingaben.

JSON-Darstellung
{
  "type": string,
  "originalQuery": string
}
Felder
type

string

Art der Nutzereingabe. Beispiel: Tastatur, Stimme, Touchbedienung usw.

originalQuery

string

Ursprüngliche Texteingabe vom Nutzer.

IntentMatch

Informationen zum ausgelösten Intent-Abgleich (global oder innerhalb einer Szene): https://developers.google.com/assistant/conversational/intents

JSON-Darstellung
{
  "intentId": string,
  "intentParameters": {
    string: {
      object (IntentParameterValue)
    },
    ...
  },
  "handler": string,
  "nextSceneId": string
}
Felder
intentId

string

Intent-ID, die diese Interaktion ausgelöst hat.

intentParameters

map (key: string, value: object (IntentParameterValue))

Parameter des Intents, der diese Interaktion ausgelöst hat.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

handler

string

Name des Handlers, der dieser Interaktion zugeordnet ist.

nextSceneId

string

Szene, zu der diese Interaktion führt.

ConditionsEvaluated

Ergebnisse der Bedingungsauswertung: https://developers.google.com/assistant/conversational/scenes#conditions

JSON-Darstellung
{
  "failedConditions": [
    {
      object (Condition)
    }
  ],
  "successCondition": {
    object (Condition)
  }
}
Felder
failedConditions[]

object (Condition)

Liste der Bedingungen, die als „false“ ausgewertet wurden.

successCondition

object (Condition)

Die erste Bedingung, die als „true“ ausgewertet wurde, falls vorhanden.

Bedingung

Ausgewertete Bedingung.

JSON-Darstellung
{
  "expression": string,
  "handler": string,
  "nextSceneId": string
}
Felder
expression

string

Ausdruck, der in dieser Bedingung angegeben ist.

handler

string

Handlername, der in der ausgewerteten Bedingung angegeben ist.

nextSceneId

string

In der ausgewerteten Bedingung angegebene Zielszene.

OnSceneEnter

Informationen zur Ausführung der onSceneEnter-Phase: https://developers.google.com/assistant/conversational/scenes#onEnter

JSON-Darstellung
{
  "handler": string
}
Felder
handler

string

Im onSceneEnter-Ereignis angegebener Handlername.

WebhookRequest

Informationen zu einer Anfrage, die an den Aktions-Webhook gesendet wird: https://developers.google.com/assistant/conversational/webhooks#payloads

JSON-Darstellung
{
  "requestJson": string
}
Felder
requestJson

string

Nutzlast der Webhook-Anfrage.

WebhookResponse

Informationen zu einer vom Aktions-Webhook erhaltenen Antwort: https://developers.google.com/assistant/conversational/webhooks#payloads

JSON-Darstellung
{
  "responseJson": string
}
Felder
responseJson

string

Nutzlast der Webhook-Antwort.

WebhookInitiatedTransition

Ereignis, das durch eine vom Webhook zurückgegebene Zielszene ausgelöst wurde: https://developers.google.com/assistant/conversational/webhooks#transition_scenes

JSON-Darstellung
{
  "nextSceneId": string
}
Felder
nextSceneId

string

ID der Szene, zu der der Übergang führt.

SlotMatch

Informationen zu übereinstimmenden Slot(s): https://developers.google.com/assistant/conversational/scenes#slot_filling

JSON-Darstellung
{
  "nluParameters": {
    string: {
      object (IntentParameterValue)
    },
    ...
  }
}
Felder
nluParameters

map (key: string, value: object (IntentParameterValue))

Parameter, die durch NLU aus Nutzereingaben extrahiert werden.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

SlotRequested

Informationen zum aktuell angefragten Slot: https://developers.google.com/assistant/conversational/scenes#slot_filling

JSON-Darstellung
{
  "slot": string,
  "prompt": {
    object (Prompt)
  }
}
Felder
slot

string

Name des angeforderten Slots.

prompt

object (Prompt)

Slot-Prompt.

SlotValidated

Ereignis, das eintritt, nachdem die Webhook-Validierung für Slot(s) abgeschlossen wurde: https://developers.google.com/assistant/conversational/scenes#slot_filling

FormFilled

Ereignis, das eintritt, wenn das Formular vollständig ausgefüllt ist: https://developers.google.com/assistant/conversational/scenes#slot_filling

WaitingForUserInput

Ereignis, das eintritt, wenn das System eine Nutzereingabe benötigt: https://developers.google.com/assistant/conversational/scenes#input

EndConversation

Ereignis, das darüber informiert, dass die Unterhaltung mit dem Kundenservicemitarbeiter beendet wurde.