Method: projects.sendInteraction

Lit une partie de la conversation.

Requête HTTP

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

L'URL utilise la syntaxe de transcodage gRPC.

Paramètres de chemin d'accès

Paramètres
project

string

Obligatoire. Projet testé, indiqué par l'ID du projet Format: projects/{project}

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation JSON
{
  "input": {
    object (UserInput)
  },
  "deviceProperties": {
    object (DeviceProperties)
  },
  "conversationToken": string
}
Champs
input

object (UserInput)

Obligatoire. Entrée fournie par l'utilisateur.

deviceProperties

object (DeviceProperties)

Obligatoire. Propriétés de l'appareil utilisé pour interagir avec l'action.

conversationToken

string

Jeton opaque qui doit être transmis comme reçu de SendInteractionResponse lors de l'interaction précédente. Vous pouvez choisir de ne pas configurer cette option pour démarrer une nouvelle conversation, soit lors de la première interaction d'une session de test, soit pour abandonner une conversation précédente pour en démarrer une nouvelle.

Corps de la réponse

Si la requête aboutit, le corps de la réponse contient des données qui ont la structure suivante :

Réponse à une série de conversations.

Représentation JSON
{
  "output": {
    object (Output)
  },
  "diagnostics": {
    object (Diagnostics)
  },
  "conversationToken": string
}
Champs
output

object (Output)

Résultat fourni à l'utilisateur.

diagnostics

object (Diagnostics)

Informations de diagnostic expliquant comment la requête a été traitée.

conversationToken

string

Jeton opaque à définir sur SendInteractionRequest lors du prochain appel RPC afin de poursuivre la même conversation.

UserInput

Entrée utilisateur fournie lors d'une conversation.

Représentation JSON
{
  "query": string,
  "type": enum (InputType)
}
Champs
query

string

Contenu de l'entrée envoyée par l'utilisateur.

type

enum (InputType)

Type de l'entrée.

InputType

Indique la source d'entrée, la requête saisie ou la requête vocale.

Enums
INPUT_TYPE_UNSPECIFIED Source d'entrée non spécifiée.
TOUCH Requête provenant d'une interaction IUG.
VOICE Requête vocale.
KEYBOARD Requête saisie.
URL L'action a été déclenchée par un lien URL.

DeviceProperties

Propriétés de l'appareil pertinentes pour une conversation.

Représentation JSON
{
  "surface": enum (Surface),
  "location": {
    object (Location)
  },
  "locale": string,
  "timeZone": string
}
Champs
surface

enum (Surface)

Surface utilisée pour interagir avec l'action.

location

object (Location)

Localisation de l'appareil (latitude, longitude et adresse formatée, par exemple).

locale

string

Paramètres régionaux définis sur l'appareil. Ce format doit être conforme à la norme BCP 47: https://tools.ietf.org/html/bcp47. Exemples: en, en-US, es-419 (d'autres exemples sont disponibles sur la page https://tools.ietf.org/html/bcp47#appendix-A).

timeZone

string

Fuseau horaire défini sur l'appareil. Ce format doit respecter la base de données des fuseaux horaires de l'IANA, par exemple "America/New_York": https://www.iana.org/time-zones.

Surface

Surfaces possibles utilisées pour interagir avec l'action. D'autres valeurs pourront être ajoutées ultérieurement.

Enums
SURFACE_UNSPECIFIED Valeur par défaut. Cette valeur n'est pas utilisée.
SPEAKER Enceinte (par exemple, Google Home).
PHONE Téléphone.
ALLO Chat dans Allo.
SMART_DISPLAY Écran connecté.
KAI_OS KaiOS.

Emplacement

Conteneur représentant un emplacement.

Représentation JSON
{
  "coordinates": {
    object (LatLng)
  },
  "formattedAddress": string,
  "zipCode": string,
  "city": string
}
Champs
coordinates

object (LatLng)

Coordonnées géographiques. Nécessite l'autorisation [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION].

formattedAddress

string

Adresse à afficher, par exemple "1600 Amphitheatre Pkwy, Mountain View, CA 94043". Nécessite l'autorisation [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION].

zipCode

string

Code postal. Nécessite l'autorisation [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] ou [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION].

city

string

Ville. Nécessite l'autorisation [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] ou [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION].

LatLng

Objet représentant une paire latitude/longitude. Cette valeur est exprimée par deux valeurs doubles représentant les degrés de latitude et de longitude. Sauf indication contraire, cet objet doit être conforme à la norme WGS84. Les valeurs doivent se situer dans les limites normalisées.

Représentation JSON
{
  "latitude": number,
  "longitude": number
}
Champs
latitude

number

Latitude en degrés. Elle doit être comprise dans la plage [-90.0, +90.0].

longitude

number

Longitude en degrés. Elle doit être comprise dans la plage [-180.0, +180.0].

Sortie

Résultat visible par l'utilisateur dans la conversation.

Représentation JSON
{
  "text": string,
  "speech": [
    string
  ],
  "canvas": {
    object (Canvas)
  },
  "actionsBuilderPrompt": {
    object (Prompt)
  }
}
Champs
text

string

Réponse vocale envoyée à l'utilisateur sous forme de chaîne simple.

speech[]

string

Contenu vocal produit par l'action. Cela peut inclure des éléments de balisage tels que SSML.

canvas

object (Canvas)

Contenu d'Interactive Canvas.

actionsBuilderPrompt

object (Prompt)

État de l'invite à la fin de la conversation En savoir plus sur l'invite: https://developers.google.com/assistant/conversational/prompts

Canevas

Représente une réponse Interactive Canvas à envoyer à l'utilisateur. Vous pouvez l'utiliser avec le champ "firstSimple" de l'invite associée pour communiquer avec l'utilisateur en plus d'afficher une réponse de canevas interactive. La taille maximale de la réponse est de 50 000 octets.

Représentation JSON
{
  "url": string,
  "data": [
    value
  ],
  "suppressMic": boolean,
  "enableFullScreen": boolean
}
Champs
url

string

URL de l'application Web de canevas interactif à charger. Si cette règle n'est pas configurée, l'URL du canevas actif actuel sera réutilisée.

data[]

value (Value format)

Facultatif. Données JSON à transmettre à la page Web de l'expérience immersive en tant qu'événement. Si le champ "remplacer" dans l'invite associée est défini sur "false", les valeurs de données définies dans cette invite Canvas seront ajoutées après les valeurs de données définies dans les invites Canvas précédentes.

suppressMic

boolean

Facultatif. Valeur par défaut : "false".

enableFullScreen

boolean

Si la valeur est true, l'application de canevas occupe la totalité de l'écran et n'a pas d'en-tête en haut. Un toast s'affiche également sur l'écran de chargement. Il comprend le nom à afficher de l'action, le nom du développeur et des instructions pour quitter l'action. Valeur par défaut : false.

Requête

Représente une réponse à un utilisateur.

Représentation JSON
{
  "append": boolean,
  "override": boolean,
  "firstSimple": {
    object (Simple)
  },
  "content": {
    object (Content)
  },
  "lastSimple": {
    object (Simple)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ],
  "link": {
    object (Link)
  },
  "canvas": {
    object (Canvas)
  }
}
Champs
append
(deprecated)

boolean

Facultatif. Mode de fusion de ces messages avec les messages précédemment définis. "false" efface tous les messages définis précédemment (premier et dernier élément simple, contenu, lien et canevas de suggestions) et ajoute les messages définis dans cette invite. "true" ajoutera les messages définis dans cette requête à ceux définis dans les réponses précédentes. Définir ce champ sur "true" active également l'ajout à certains champs dans les invites simples, l'invite de suggestion et l'invite Canvas (qui fait partie de l'invite de contenu). Les messages de contenu et de lien seront toujours remplacés s'ils sont définis dans l'invite. La valeur par défaut est "false".

override

boolean

Facultatif. Mode de fusion de ces messages avec les messages précédemment définis. "true" efface tous les messages précédemment définis (premier et dernier élément simple, contenu, lien et canevas de suggestions) et ajoute les messages définis dans cette invite. "false" ajoute les messages définis dans cette invite à ceux définis dans les réponses précédentes. Si vous laissez ce champ sur "false", vous pouvez également ajouter certains champs dans les invites simples, les invites de suggestions et l'invite Canvas (qui fait partie de l'invite de contenu). Les messages de contenu et de lien sont toujours remplacés s'ils sont définis dans l'invite. La valeur par défaut est "false".

firstSimple

object (Simple)

Facultatif. Première réponse vocale et textuelle.

content

object (Content)

Facultatif. Contenus (par exemple, une carte, une liste ou un contenu multimédia) à présenter à l'utilisateur.

lastSimple

object (Simple)

Facultatif. Dernière réponse vocale et textuelle.

suggestions[]

object (Suggestion)

Facultatif. Suggestions à présenter à l'utilisateur, qui apparaîtront toujours à la fin de la réponse. Si le champ "remplacer" est défini sur "false" dans la requête associée, les titres définis dans ce champ seront ajoutés à ceux définis dans les requêtes de suggestion précédemment définies, et les valeurs en double seront supprimées.

canvas

object (Canvas)

Facultatif. Représente une réponse Interactive Canvas à envoyer à l'utilisateur.

Simple

Représente une invite simple à envoyer à un utilisateur.

Représentation JSON
{
  "speech": string,
  "text": string
}
Champs
speech

string

Facultatif. Représente la voix à énoncer. Il peut s'agir d'un balisage SSML ou d'une synthèse vocale. Si le champ "remplacer" est défini sur "true" dans la requête associée, les voix définies dans ce champ remplacent celles de la requête simple précédente.

text

string

Texte facultatif à afficher dans la bulle de chat. Si ce champ n'est pas spécifié, le rendu du champ de saisie vocale ci-dessus sera utilisé à l'écran. Limité à 640 caractères. Si le champ "remplacer" de la requête associée est défini sur "true", le texte défini dans ce champ remplace le texte de l'invite simple précédente.

Contenu

Contenu à afficher.

Représentation JSON
{

  // 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.
}
Champs
Champ d'union content. Contenu. content ne peut être qu'un des éléments suivants :
card

object (Card)

Une carte basique

image

object (Image)

Image.

table

object (Table)

Fiche tableau.

media

object (Media)

Réponse indiquant un ensemble de contenus multimédias à lire.

canvas
(deprecated)

object (Canvas)

Réponse à utiliser pour l'expérience de canevas interactif.

collection

object (Collection)

Fiche présentant un ensemble d'options à sélectionner.

list

object (List)

Fiche présentant une liste d'options à sélectionner.

Fiche

Fiche de base permettant d'afficher certaines informations, par exemple une image et/ou du texte.

Représentation JSON
{
  "title": string,
  "subtitle": string,
  "text": string,
  "image": {
    object (Image)
  },
  "imageFill": enum (ImageFill),
  "button": {
    object (Link)
  }
}
Champs
title

string

Titre général de la fiche. Facultatif.

subtitle

string

Facultatif.

text

string

Corps du texte de la fiche. Accepte un ensemble limité de syntaxes Markdown pour la mise en forme. Obligatoire, sauf si une image est présente.

image

object (Image)

Une hero image pour la fiche. La hauteur est fixée à 192 dp. Facultatif.

imageFill

enum (ImageFill)

Façon dont l'arrière-plan de l'image sera rempli. Facultatif.

button

object (Link)

Bouton. Facultatif.

Image

Image affichée dans la fiche.

Représentation JSON
{
  "url": string,
  "alt": string,
  "height": integer,
  "width": integer
}
Champs
url

string

URL source de l'image. Les images peuvent être au format JPG, PNG et GIF (avec ou sans animation). Exemple : https://www.agentx.com/logo.png. Obligatoire.

alt

string

Description textuelle de l'image à utiliser pour l'accessibilité, par exemple les lecteurs d'écran. Obligatoire.

height

integer

Hauteur de l'image en pixels. Facultatif.

width

integer

Largeur de l'image en pixels. Facultatif.

ImageFill

Options d'affichage des images permettant d'affecter la présentation de l'image. Utilisez cette option lorsque le format de l'image ne correspond pas à celui du conteneur de l'image.

Enums
UNSPECIFIED Remplissage de l'image non spécifié.
GRAY Complétez les intervalles entre l'image et son conteneur à l'aide de barres grises.
WHITE Remplissez les intervalles entre l'image et son conteneur à l'aide de barres blanches.
CROPPED L'image est mise à l'échelle de sorte que sa largeur et sa hauteur correspondent ou dépassent les dimensions du conteneur. Cette opération peut recadrer le haut et le bas de l'image si la hauteur de l'image mise à l'échelle est supérieure à la hauteur du conteneur, ou recadrer l'image à gauche et à droite si la largeur de l'image mise à l'échelle est supérieure à la largeur du conteneur. Ce mode est semblable au mode zoom sur un téléviseur grand écran lors de la lecture d'une vidéo 4:3.

OpenUrl

Action effectuée lorsqu'un utilisateur ouvre un lien.

Représentation JSON
{
  "url": string,
  "hint": enum (UrlHint)
}
Champs
url

string

Champ d'URL, qui peut correspondre à: - URL http/https pour ouvrir une page Web ou une application associée à une application

hint

enum (UrlHint)

Indique une indication concernant le type d'URL.

UrlHint

Différents types de indications d'URL

Enums
AMP URL qui redirige directement vers le contenu AMP, ou vers une URL canonique qui renvoie à du contenu AMP via .

Table

Fiche de tableau permettant d'afficher un tableau de texte.

Représentation JSON
{
  "title": string,
  "subtitle": string,
  "image": {
    object (Image)
  },
  "columns": [
    {
      object (TableColumn)
    }
  ],
  "rows": [
    {
      object (TableRow)
    }
  ],
  "button": {
    object (Link)
  }
}
Champs
title

string

Titre général du tableau. Facultatif, mais doit être défini si "sous-titre" est défini.

subtitle

string

Sous-titre de la table. Facultatif.

image

object (Image)

Image associée au tableau. Facultatif.

columns[]

object (TableColumn)

En-têtes et alignement des colonnes.

rows[]

object (TableRow)

Données de ligne de la table. L'affichage des trois premières lignes est garanti, mais d'autres peuvent être coupées sur certaines surfaces. Effectuez un test avec le simulateur afin d'identifier les lignes qui seront affichées pour une surface donnée. Sur les surfaces compatibles avec la fonctionnalité WEB_browser, vous pouvez rediriger l'utilisateur vers une page Web contenant plus de données.

button

object (Link)

Bouton.

TableColumn

Décrit une colonne d'une table.

Représentation JSON
{
  "header": string,
  "align": enum (HorizontalAlignment)
}
Champs
header

string

Texte de l'en-tête de la colonne.

align

enum (HorizontalAlignment)

Alignement horizontal du contenu par rapport à la colonne. Si aucune valeur n'est spécifiée, le contenu sera aligné sur le bord avant.

HorizontalAlignment

L'alignement du contenu dans la cellule.

Enums
UNSPECIFIED Alignement horizontal non spécifié.
LEADING Bord de début de la cellule. Il s'agit de la valeur par défaut.
CENTER Le contenu est aligné au centre de la colonne.
TRAILING Le contenu est aligné par rapport au bord de fin de la colonne.

TableRow

Décrit une ligne de la table.

Représentation JSON
{
  "cells": [
    {
      object (TableCell)
    }
  ],
  "divider": boolean
}
Champs
cells[]

object (TableCell)

Cellules sur cette ligne. L'affichage des trois premières cellules est garanti, mais d'autres peuvent être coupées sur certaines surfaces. Effectuez un test avec le simulateur pour identifier les cellules qui seront affichées pour une surface donnée.

divider

boolean

Indique si un séparateur doit être présent après chaque ligne.

TableCell

Décrit une cellule dans une ligne.

Représentation JSON
{
  "text": string
}
Champs
text

string

Contenu textuel de la cellule.

Multimédia

Représente un objet multimédia. Contient des informations sur le contenu multimédia, telles que le nom, la description, l'URL, etc.

Représentation JSON
{
  "mediaType": enum (MediaType),
  "startOffset": string,
  "optionalMediaControls": [
    enum (OptionalMediaControls)
  ],
  "mediaObjects": [
    {
      object (MediaObject)
    }
  ]
}
Champs
mediaType

enum (MediaType)

Type de contenu.

startOffset

string (Duration format)

Décalage de début du premier objet multimédia.

Durée en secondes avec neuf chiffres au maximum après la virgule. Se termine par "s". Example : "3.5s".

optionalMediaControls[]

enum (OptionalMediaControls)

Types de commandes multimédias facultatifs compatibles avec cette session de réponse multimédia. Si cette règle est définie, la demande sera envoyée aux 3p lorsqu'un événement multimédia spécifique se produit. Si cette règle n'est pas configurée, 3p doit tout de même gérer deux types de contrôle par défaut : FINISHED (Terminé) et FAILED (ÉCHEC).

mediaObjects[]

object (MediaObject)

Liste des objets Media

MediaType

Type de contenu de cette réponse.

Enums
MEDIA_TYPE_UNSPECIFIED Type de contenu non spécifié.
AUDIO Fichier audio.
MEDIA_STATUS_ACK Réponse pour confirmer la réception d'un rapport sur l'état du média

OptionalMediaControls

Types de commandes multimédias facultatifs compatibles avec la réponse multimédia

Enums
OPTIONAL_MEDIA_CONTROLS_UNSPECIFIED Valeur non spécifiée
PAUSED Événement mis en pause. Déclenchement lorsque l'utilisateur met le contenu multimédia en pause.
STOPPED Événement arrêté. Déclenché lorsque l'utilisateur quitte la session tierce pendant la lecture d'un contenu multimédia.

MediaObject

Représente un seul objet multimédia

Représentation JSON
{
  "name": string,
  "description": string,
  "url": string,
  "image": {
    object (MediaImage)
  }
}
Champs
name

string

Nom de cet objet multimédia.

description

string

Description de cet objet multimédia.

url

string

URL pointant vers le contenu multimédia.

image

object (MediaImage)

Image à afficher avec la fiche multimédia.

MediaImage

Image à afficher avec la fiche multimédia.

Représentation JSON
{

  // 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.
}
Champs
Champ d'union image. Image. image ne peut être qu'un des éléments suivants :
large

object (Image)

Une grande image, comme la couverture de l'album, etc.

icon

object (Image)

Une petite icône d'image affichée à droite du titre Elle est redimensionnée au format 36 x 36 dp.

Collection

Fiche présentant un ensemble d'options à sélectionner.

Représentation JSON
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (CollectionItem)
    }
  ],
  "imageFill": enum (ImageFill)
}
Champs
title

string

Titre de la collection. Facultatif.

subtitle

string

Sous-titre de la collection. Facultatif.

items[]

object (CollectionItem)

min: 2 max: 10

imageFill

enum (ImageFill)

Mode de remplissage des arrière-plans des images des éléments de la collection. Facultatif.

CollectionItem

Un élément de la collection

Représentation JSON
{
  "key": string
}
Champs
key

string

Obligatoire. Clé NLU correspondant au nom de clé d'entrée dans le type associé.

Liste

Fiche présentant une liste d'options à sélectionner.

Représentation JSON
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (ListItem)
    }
  ]
}
Champs
title

string

Titre de la liste. Facultatif.

subtitle

string

Sous-titre de la liste. Facultatif.

items[]

object (ListItem)

min: 2 max: 30

ListItem

Un élément de la liste

Représentation JSON
{
  "key": string
}
Champs
key

string

Obligatoire. Clé NLU correspondant au nom de clé d'entrée dans le type associé.

Suggestion

Suggestion de saisie à présenter à l'utilisateur.

Représentation JSON
{
  "title": string
}
Champs
title

string

Obligatoire. Texte affiché dans le chip de suggestion. Lorsque l'utilisateur appuie dessus, ce texte est republié dans la conversation, comme si l'utilisateur l'avait saisi. Chaque titre doit être unique parmi les chips de suggestion. 25 caractères max.

Diagnostic

Informations de diagnostic liées à la conversation.

Représentation JSON
{
  "actionsBuilderEvents": [
    {
      object (ExecutionEvent)
    }
  ]
}
Champs
actionsBuilderEvents[]

object (ExecutionEvent)

Liste des événements avec des détails sur le traitement de la conversation tout au long des étapes du modèle d'interaction Actions Builder Renseigné pour les applications Actions Builder et SDK Actions uniquement.

ExecutionEvent

Contient des informations sur l'événement d'exécution qui s'est produit lors du traitement de la requête de conversation Actions Builder. Pour en savoir plus sur les étapes d'une demande de conversation, consultez la page https://developers.google.com/assistant/conversational/actions.

Représentation JSON
{
  "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.
}
Champs
eventTime

string (Timestamp format)

Code temporel du moment où l'événement s'est produit.

Code temporel au format RFC3339 UTC "Zulu", avec une résolution à la nanoseconde et jusqu'à neuf chiffres fractionnaires. Exemples: "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

executionState

object (ExecutionState)

État de l'exécution au cours de cet événement.

status

object (Status)

État résultant de l'étape d'exécution particulière.

warningMessages[]

string

Liste des avertissements générés lors de l'exécution de cet événement. Les avertissements sont des conseils destinés au développeur lors de la demande de conversation. Ces erreurs sont généralement non critiques et n'interrompent pas l'exécution de la requête. Par exemple, un avertissement peut être généré lorsque le webhook tente de remplacer un type personnalisé qui n'existe pas. Les erreurs sont signalées en tant que code d'état "Échec", mais des avertissements peuvent être présents même si l'état est "OK".

Champ d'union EventData. Informations détaillées spécifiques à différents événements pouvant être impliqués dans le traitement d'une série de conversations. Le champ défini ici définit le type de cet événement. EventData ne peut être qu'un des éléments suivants :
userInput

object (UserConversationInput)

Événement de gestion des entrées utilisateur.

intentMatch

object (IntentMatch)

Événement de correspondance d'intent.

conditionsEvaluated

object (ConditionsEvaluated)

Événement d'évaluation de l'état.

onSceneEnter

object (OnSceneEnter)

Événement d'exécution OnSceneEnter.

webhookRequest

object (WebhookRequest)

Événement de distribution des requêtes de webhook.

webhookResponse

object (WebhookResponse)

Événement de réception de réponse de webhook.

webhookInitiatedTransition

object (WebhookInitiatedTransition)

Événement de transition initié par le webhook.

slotMatch

object (SlotMatch)

Événement de correspondance d'espace publicitaire.

slotRequested

object (SlotRequested)

Événement qui demande un emplacement.

slotValidated

object (SlotValidated)

Événement de validation d'emplacement.

formFilled

object (FormFilled)

Événement de remplissage de formulaire.

waitingUserInput

object (WaitingForUserInput)

Événement de type "En attente d'une saisie par l'utilisateur".

endConversation

object (EndConversation)

Événement de fin de conversation

ExecutionState

État actuel de l'exécution.

Représentation JSON
{
  "currentSceneId": string,
  "sessionStorage": {
    object
  },
  "slots": {
    object (Slots)
  },
  "promptQueue": [
    {
      object (Prompt)
    }
  ],
  "userStorage": {
    object
  },
  "householdStorage": {
    object
  }
}
Champs
currentSceneId

string

ID de la scène active.

sessionStorage

object (Struct format)

État de l'espace de stockage de la session: https://developers.google.com/assistant/conversational/storage-session

slots

object (Slots)

État du remplissage des emplacements, le cas échéant: https://developers.google.com/assistant/conversational/scenes#slot_filling

promptQueue[]

object (Prompt)

File d'attente des invites: https://developers.google.com/assistant/conversational/prompts

userStorage

object (Struct format)

État de l'espace de stockage utilisateur: https://developers.google.com/assistant/conversational/storage-user

householdStorage

object (Struct format)

État de l'espace de stockage de la maison: https://developers.google.com/assistant/conversational/storage-home

Emplacements

Représente l'état actuel des emplacements d'une scène.

Représentation JSON
{
  "status": enum (SlotFillingStatus),
  "slots": {
    string: {
      object (Slot)
    },
    ...
  }
}
Champs
status

enum (SlotFillingStatus)

État actuel du remplissage d'emplacements.

slots

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

Emplacements associés à la scène actuelle.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

SlotFillingStatus

Représente l'état actuel du remplissage d'emplacements.

Enums
UNSPECIFIED Valeur de remplacement lorsque le champ d'utilisation n'est pas renseigné.
INITIALIZED Les emplacements ont été initialisés, mais le remplissage d'emplacements n'a pas commencé.
COLLECTING Les valeurs des emplacements sont en cours de collecte.
FINAL Toutes les valeurs des emplacements sont définitives et ne peuvent pas être modifiées.

Encoche

Représente un emplacement.

Représentation JSON
{
  "mode": enum (SlotMode),
  "status": enum (SlotStatus),
  "value": value,
  "updated": boolean,
  "prompt": {
    object (Prompt)
  }
}
Champs
mode

enum (SlotMode)

Mode de l'emplacement (obligatoire ou facultatif). Peut être défini par le développeur.

status

enum (SlotStatus)

État de l'emplacement.

value

value (Value format)

Valeur de l'emplacement. La modification de cette valeur dans la réponse modifiera la valeur du remplissage d'emplacements.

updated

boolean

Indique si la valeur de la position a été collectée lors du dernier virage. Ce champ est en lecture seule.

prompt

object (Prompt)

Facultatif. Cette invite est envoyée à l'utilisateur si nécessaire pour remplir un emplacement requis. Cette invite remplace celle définie dans la console. Ce champ n'est pas inclus dans la requête de webhook.

SlotMode

Représente le mode d'un emplacement, c'est-à-dire s'il est obligatoire ou non.

Enums
MODE_UNSPECIFIED Valeur de remplacement lorsque le champ d'utilisation n'est pas renseigné.
OPTIONAL Indique que l'emplacement n'est pas nécessaire pour terminer le remplissage d'emplacements.
REQUIRED Indique que l'emplacement est requis pour terminer le remplissage d'emplacements.

SlotStatus

Représente l'état d'un emplacement.

Enums
SLOT_UNSPECIFIED Valeur de remplacement lorsque le champ d'utilisation n'est pas renseigné.
EMPTY Indique qu'aucune valeur n'est définie pour l'emplacement. Cet état ne peut pas être modifié via la réponse.
INVALID Indique que la valeur de l'emplacement n'est pas valide. Cet état peut être défini via la réponse.
FILLED Indique que l'emplacement a une valeur. Cet état ne peut pas être modifié via la réponse.

État

Le type Status définit un modèle d'erreur logique adapté aux différents environnements de programmation, y compris les API REST et RPC. Il est utilisé par le protocole gRPC. Chaque message Status contient trois éléments de données : un code d'erreur, un message d'erreur et les détails de l'erreur.

Pour en savoir plus sur ce modèle d'erreur et sur son utilisation, consultez le Guide de conception d'API.

Représentation JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Champs
code

integer

Code d'état, qui doit être une valeur d'énumération de google.rpc.Code.

message

string

Message d'erreur destiné au développeur, qui doit être en anglais. Tout message d'erreur destiné aux utilisateurs doit être localisé et envoyé dans le champ google.rpc.Status.details, ou localisé par le client.

details[]

object

Liste de messages comportant les détails de l'erreur. Il existe un ensemble commun de types de message utilisable par les API.

Objet contenant des champs d'un type arbitraire. Un champ supplémentaire "@type" contient un URI identifiant le type. Exemple : { "id": 1234, "@type": "types.example.com/standard/id" }.

UserConversationInput

Informations liées à l'entrée utilisateur.

Représentation JSON
{
  "type": string,
  "originalQuery": string
}
Champs
type

string

Type d'entrée utilisateur. (par exemple, clavier, voix, commandes tactiles, etc.)

originalQuery

string

Texte d'origine saisi par l'utilisateur.

IntentMatch

Informations sur la correspondance d'intent déclenchée (au niveau global ou dans une scène): https://developers.google.com/assistant/conversational/intents

Représentation JSON
{
  "intentId": string,
  "intentParameters": {
    string: {
      object (IntentParameterValue)
    },
    ...
  },
  "handler": string,
  "nextSceneId": string
}
Champs
intentId

string

ID de l'intent ayant déclenché cette interaction.

intentParameters

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

Paramètres d'intent ayant déclenché cette interaction.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

handler

string

Nom du gestionnaire associé à cette interaction.

nextSceneId

string

Scène vers laquelle cette interaction mène.

ConditionsEvaluated

Résultats de l'évaluation des conditions: https://developers.google.com/assistant/conversational/scenes#conditions

Représentation JSON
{
  "failedConditions": [
    {
      object (Condition)
    }
  ],
  "successCondition": {
    object (Condition)
  }
}
Champs
failedConditions[]

object (Condition)

Liste des conditions évaluées comme "false".

successCondition

object (Condition)

Première condition évaluée comme étant "true", le cas échéant.

Condition

Condition évaluée.

Représentation JSON
{
  "expression": string,
  "handler": string,
  "nextSceneId": string
}
Champs
expression

string

Expression spécifiée dans cette condition.

handler

string

Nom du gestionnaire spécifié dans la condition évaluée.

nextSceneId

string

Scène de destination spécifiée dans la condition évaluée.

OnSceneEnter

Informations sur l'exécution de l'étape onSceneEnter: https://developers.google.com/assistant/conversational/scenes#onEnter

Représentation JSON
{
  "handler": string
}
Champs
handler

string

Nom du gestionnaire spécifié dans l'événement onSceneEnter.

WebhookRequest

Informations sur une requête envoyée au webhook d'action: https://developers.google.com/assistant/conversational/webhooks#payloads

Représentation JSON
{
  "requestJson": string
}
Champs
requestJson

string

Charge utile de la requête de webhook.

WebhookResponse

Informations sur une réponse reçue du webhook Action: https://developers.google.com/assistant/conversational/webhooks#payloads

Représentation JSON
{
  "responseJson": string
}
Champs
responseJson

string

Charge utile de la réponse du webhook.

WebhookInitiatedTransition

Événement déclenché par une scène de destination renvoyée par le webhook: https://developers.google.com/assistant/conversational/webhooks#transition_scenes

Représentation JSON
{
  "nextSceneId": string
}
Champs
nextSceneId

string

ID de la scène vers laquelle la transition mène.

SlotMatch

Informations sur le ou les emplacements correspondants : https://developers.google.com/assistant/conversational/scenes#slot_filling

Représentation JSON
{
  "nluParameters": {
    string: {
      object (IntentParameterValue)
    },
    ...
  }
}
Champs
nluParameters

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

Paramètres extraits de l'entrée utilisateur par la NLU.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

SlotRequested

Informations sur le créneau actuellement demandé: https://developers.google.com/assistant/conversational/scenes#slot_filling

Représentation JSON
{
  "slot": string,
  "prompt": {
    object (Prompt)
  }
}
Champs
slot

string

Nom de l'espace demandé.

prompt

object (Prompt)

Invite d'emplacement.

SlotValidated

Événement qui se produit une fois la validation du webhook terminée pour le ou les emplacements : https://developers.google.com/assistant/conversational/scenes#slot_filling

FormFilled

Événement qui se produit lorsque le formulaire est entièrement rempli: https://developers.google.com/assistant/conversational/scenes#slot_filling

WaitingForUserInput

Événement qui se produit lorsque le système requiert une entrée utilisateur: https://developers.google.com/assistant/conversational/scenes#input

EndConversation

Événement indiquant que la conversation avec l'agent a pris fin.