Index
EmbeddedAssistant
(interface)AssistConfig
(message)AssistRequest
(message)AssistResponse
(message)AssistResponse.EventType
(enum)AudioInConfig
(message)AudioInConfig.Encoding
(enum)AudioOut
(message)AudioOutConfig
(message)AudioOutConfig.Encoding
(enum)DebugConfig
(message)DebugInfo
(message)DeviceAction
(message)DeviceConfig
(message)DeviceLocation
(message)DialogStateIn
(message)DialogStateOut
(message)DialogStateOut.MicrophoneMode
(enum)ScreenOut
(message)ScreenOut.Format
(enum)ScreenOutConfig
(message)ScreenOutConfig.ScreenMode
(enum)SpeechRecognitionResult
(message)
EmbeddedAssistant
Service qui implémente l'API Assistant Google.
Passe décisive | |
---|---|
Lance ou poursuit une conversation avec le service Assistant intégré. Chaque appel effectue un aller-retour, en envoyant une requête audio au service et en recevant la réponse audio. Utilise le streaming bidirectionnel pour recevoir des résultats, tels que l'événement Une conversation correspond à une ou plusieurs connexions gRPC, chacune composée de plusieurs requêtes et réponses diffusées. Par exemple, il dit Ajouter à ma liste de courses et l'Assistant répond Que voulez-vous ajouter ? La séquence de requêtes et de réponses diffusées dans le premier message gRPC peut se présenter comme suit:
L'utilisateur dit ensuite bagels, et l'Assistant répond OK, j'ai ajouté des bagels à votre liste de courses. Il est envoyé via un autre appel de connexion gRPC à la méthode
Bien que l'ordre précis des réponses ne soit pas garanti, les messages
|
AssistConfig
Indique comment traiter les messages AssistRequest
.
Champs | ||
---|---|---|
audio_out_config |
Obligatoire : spécifie le format du contenu audio renvoyé. |
|
screen_out_config |
Facultatif. Spécifie le format à utiliser lorsque le serveur renvoie une réponse d'écran visuelle. |
|
dialog_state_in |
Obligatoire. Représente l'état actuel de la boîte de dialogue. |
|
device_config |
Configuration qui identifie un appareil spécifique de manière unique. |
|
debug_config |
Facultatif. Paramètres de débogage de l'ensemble du RPC |
|
Champ d'union
|
||
audio_in_config |
Spécifie comment traiter le son entrant suivant. Obligatoire si |
|
text_query |
Texte à envoyer à l'Assistant. Il peut être renseigné à partir d'une interface de texte si l'entrée audio n'est pas disponible. |
AssistRequest
Message de premier niveau envoyé par le client. Les clients doivent envoyer au moins deux messages AssistRequest
, et généralement de nombreux. Le premier message doit contenir un message config
et ne doit pas contenir de données audio_in
. Tous les messages suivants doivent contenir des données audio_in
et pas de message config
.
Champs | ||
---|---|---|
Champ d'union type . Un seul de ces champs doit être spécifié dans chaque AssistRequest . La type ne peut être qu'un des éléments suivants : |
||
config |
Le message |
|
audio_in |
Données audio à reconnaître. Des blocs séquentiels de données audio sont envoyés dans des messages |
AssistResponse
Message de premier niveau reçu par le client. Une série d'un ou de plusieurs messages AssistResponse
est diffusée en streaming vers le client.
Champs | |
---|---|
event_type |
Uniquement en sortie : indique le type d'événement. |
audio_out |
Sortie uniquement : contenu audio contenant la réponse de l'Assistant à la requête. |
screen_out |
Sortie uniquement : contient la réponse visuelle de l'Assistant à la requête. |
device_action |
Sortie uniquement : contient l'action déclenchée par la requête avec les charges utiles et l'analyse sémantique appropriées. |
speech_results[] |
Sortie uniquement : cette liste répétée contient zéro, un ou plusieurs résultats de reconnaissance vocale correspondant à des parties consécutives de l'audio en cours de traitement, en commençant par la partie correspondant au contenu audio le plus ancien (et la partie la plus stable) à la partie correspondant au contenu audio le plus récent. Les chaînes peuvent être concaténées pour afficher la réponse en cours complète. Une fois la reconnaissance vocale terminée, cette liste contient un élément avec |
dialog_state_out |
Sortie uniquement : contient la sortie liée à la requête de l'utilisateur. |
debug_info |
Uniquement en sortie : informations de débogage destinées aux développeurs. N'est renvoyé que si la requête définit |
EventType
Indique le type d'événement.
Enums | |
---|---|
EVENT_TYPE_UNSPECIFIED |
Aucun événement spécifié. |
END_OF_UTTERANCE |
Cet événement indique que le serveur a détecté la fin de l'énoncé de l'utilisateur et ne s'attend plus à aucune entrée vocale. Le serveur ne traite donc pas de nouvelles données audio (bien qu'il puisse par la suite renvoyer des résultats supplémentaires). Le client doit arrêter d'envoyer des données audio, interrompre à moitié la connexion gRPC, et attendre les résultats supplémentaires jusqu'à ce que le serveur stoppe cette connexion. |
AudioInConfig
Spécifie comment traiter les données audio_in
qui seront fournies dans les requêtes ultérieures. Pour connaître les paramètres recommandés, consultez les bonnes pratiques concernant le SDK de l'Assistant Google.
Champs | |
---|---|
encoding |
Obligatoire : encodage des données audio envoyées dans tous les messages |
sample_rate_hertz |
Obligatoire : Taux d'échantillonnage (en Hertz) des données audio envoyées dans tous les messages |
Encodage
Encodage audio des données envoyées dans le message audio. L'audio doit être à un seul canal (mono).
Enums | |
---|---|
ENCODING_UNSPECIFIED |
Non spécifié. Renvoie le résultat google.rpc.Code.INVALID_ARGUMENT . |
LINEAR16 |
Échantillons little-endian de 16 bits signés et non compressés (LPCM). Cet encodage n'inclut pas d'en-tête, mais uniquement les octets audio bruts. |
FLAC |
L'encodage FLAC (Free Lossless Audio Codec, codec audio sans perte sans frais) est recommandé, car il est sans perte. De ce fait, la reconnaissance n'est pas compromise et ne nécessite qu'environ la moitié de la bande passante par rapport à LINEAR16 . Cet encodage inclut l'en-tête de flux FLAC suivi des données audio. Il accepte les échantillons 16 bits et 24 bits. Toutefois, tous les champs de STREAMINFO ne sont pas acceptés. |
AudioOut
Audio contenant la réponse de l'Assistant à la requête. Des fragments séquentiels de données audio sont reçus dans des messages AssistResponse
séquentiels.
Champs | |
---|---|
audio_data |
Sortie uniquement : données audio contenant la réponse de l'Assistant à la requête. Des fragments séquentiels de données audio sont reçus dans des messages |
AudioOutConfig
Spécifie le format que le serveur doit utiliser lorsqu'il renvoie des messages audio_out
.
Champs | |
---|---|
encoding |
Obligatoire. Encodage des données audio à renvoyer dans tous les messages |
sample_rate_hertz |
Obligatoire. Taux d'échantillonnage en Hertz des données audio renvoyées dans les messages |
volume_percentage |
Obligatoire. Paramètre de volume actuel de la sortie audio de l'appareil. Les valeurs valides sont comprises entre 1 et 100 (correspondant à 1% et 100%). |
Encodage
Encodage audio des données renvoyées dans le message audio. Tous les encodages sont des octets audio bruts sans en-tête, sauf indication contraire ci-dessous.
Enums | |
---|---|
ENCODING_UNSPECIFIED |
Non spécifié. Renvoie le résultat google.rpc.Code.INVALID_ARGUMENT . |
LINEAR16 |
Échantillons little-endian de 16 bits signés et non compressés (LPCM). |
MP3 |
Encodage audio MP3. Le taux d'échantillonnage est encodé dans la charge utile. |
OPUS_IN_OGG |
Audio encodé au format Opus et encapsulé dans un conteneur Ogg. Vous obtiendrez un fichier qui pourra être lu de manière native sur Android et dans certains navigateurs (comme Chrome). La qualité de l'encodage est considérablement supérieure à celle du format MP3 tout en utilisant le même débit. Le taux d'échantillonnage est encodé dans la charge utile. |
DebugConfig
Paramètres de débogage de la requête actuelle.
Champs | |
---|---|
return_debug_info |
Lorsque ce champ est défini sur "true", le champ |
DebugInfo
Informations de débogage pour le développeur. N'est renvoyé que si la requête définit return_debug_info
sur "true".
Champs | |
---|---|
aog_agent_to_assistant_json |
Réponse JSON d'origine d'un agent Action-on-Google envoyée au serveur Google. Consultez AppResponse. Il n'est renseigné que si le créateur de la requête est propriétaire du projet AoG et que ce projet est en mode aperçu. |
DeviceAction
Réponse renvoyée à l'appareil si l'utilisateur a déclenché une action sur l'appareil. Par exemple, un appareil qui prend en charge la requête Turn on the light (Allumer la lumière) recevrait une réponse DeviceAction
avec une charge utile JSON contenant la sémantique de la requête.
Champs | |
---|---|
device_request_json |
JSON contenant la réponse de la commande d'appareil générée à partir de la grammaire déclenchée par l'action sur l'appareil. Le format est fourni par l'intent |
DeviceConfig
Champs obligatoires permettant à l'Assistant d'identifier l'appareil.
Voir également :
Champs | |
---|---|
device_id |
Obligatoire Identifiant unique de l'appareil. L'ID ne doit pas comporter plus de 128 caractères. Exemple: DBCDW098234. Il DOIT correspondre à l'identifiant device_id renvoyé lors de l'enregistrement de l'appareil. Cet device_id permet d'établir une correspondance avec les appareils enregistrés de l'utilisateur afin de rechercher les caractéristiques et les fonctionnalités compatibles de cet appareil. Ces informations ne doivent pas changer lors des redémarrages de l'appareil. Toutefois, il ne doit pas être enregistré lors du rétablissement de la configuration d'usine. |
device_model_id |
Obligatoire Identifiant unique du modèle de l'appareil. La combinaison de device_model_id et device_id doit avoir été précédemment associée lors de l'enregistrement de l'appareil. |
DeviceLocation
Il existe trois sources de localisation. Ils sont utilisés avec cette priorité:
- Ce
DeviceLocation
, qui est principalement utilisé pour les appareils mobiles équipés d'un GPS . - Lieu spécifié par l'utilisateur lors de la configuration de l'appareil (par utilisateur et par appareil). Cet emplacement est utilisé si
DeviceLocation
n'est pas spécifié. - Localisation déduite en fonction de l'adresse IP. Cette option n'est utilisée que si aucune des options ci-dessus n'est spécifiée.
Champs | |
---|---|
coordinates |
Latitude et longitude de l'appareil. |
DialogStateIn
Fournit des informations sur l'état actuel de la boîte de dialogue.
Champs | |
---|---|
conversation_state |
Required (Obligatoire) Ce champ doit toujours être défini sur la valeur |
language_code |
Obligatoire Langue de la requête dans la syntaxe de l'IETF BCP 47 (par exemple, "en-US"). Pour en savoir plus, consultez la page Langues acceptées. Si vous avez sélectionné une langue pour votre |
device_location |
Facultatif. Emplacement de l'appareil d'où provient la requête. |
is_new_conversation |
Facultatif. Si la valeur est "true", le serveur traite la requête comme une nouvelle conversation et n'utilise pas l'état de la requête précédente. Définissez ce champ sur "true" lorsque la conversation doit redémarrer (par exemple, après un redémarrage de l'appareil ou après un laps de temps significatif depuis la requête précédente). |
DialogStateOut
État de la boîte de dialogue résultant de la requête de l'utilisateur. Plusieurs de ces messages peuvent être reçus.
Champs | |
---|---|
supplemental_display_text |
Texte supplémentaire de l'Assistant pour l'affichage uniquement en sortie. Il peut s'agir de la voix prononcée en |
conversation_state |
Informations d'état en sortie uniquement pour le RPC |
microphone_mode |
Sortie uniquement Spécifie le mode du micro après le traitement de ce RPC |
volume_percentage |
Sortie uniquement Mise à jour du niveau de volume. La valeur est égale à 0 ou omise (indiquant qu'elle ne change rien), sauf si une commande vocale telle que Augmenter le volume ou Régler le niveau de volume 4 a été reconnue. Dans ce cas, elle est comprise entre 1 et 100 (correspondant au nouveau niveau de volume compris entre 1% et 100%). En règle générale, le client doit utiliser ce niveau de volume lors de la lecture des données |
MicrophoneMode
États possibles du micro une fois un RPC Assist
terminé.
Enums | |
---|---|
MICROPHONE_MODE_UNSPECIFIED |
Aucun mode spécifié. |
CLOSE_MICROPHONE |
Le service n'attend pas de question complémentaire de la part de l'utilisateur. Le micro doit rester désactivé jusqu'à ce que l'utilisateur le réactive. |
DIALOG_FOLLOW_ON |
Le service attend une question complémentaire de la part de l'utilisateur. Le micro doit être rouvert à la fin de la lecture du AudioOut (en démarrant un nouvel appel RPC Assist pour envoyer le nouveau contenu audio). |
ScreenOut
Réponse visuelle de l'Assistant à la requête. Activée par screen_out_config
.
Champs | |
---|---|
format |
Sortie uniquement : format des données d'écran fournies. |
data |
Sortie uniquement : données brutes de l'écran à afficher en réponse à la requête de l'Assistant. |
Format
Formats possibles des données de l'écran.
Enums | |
---|---|
FORMAT_UNSPECIFIED |
Aucun format spécifié. |
HTML |
Les données contiendront une mise en page HTML5 complète et encodée au format UTF-8 (par exemple, <html><body><div>...</div></body></html> ). Elle est destinée à être rendue avec la réponse audio. Notez que l'attribut doctype HTML5 doit être inclus dans les données HTML réelles. |
ScreenOutConfig
Spécifie le format que le serveur doit utiliser lorsqu'il renvoie la réponse screen_out
.
Champs | |
---|---|
screen_mode |
Mode d'écran visuel actuel pour l'appareil lors de l'émission de la requête. |
ScreenMode
Modes possibles pour la sortie d'écran visuelle sur l'appareil.
Enums | |
---|---|
SCREEN_MODE_UNSPECIFIED |
Aucun mode vidéo spécifié. L'Assistant peut répondre comme s'il était en mode OFF . |
OFF |
L'écran est éteint (ou sa luminosité ou d'autres paramètres sont réglés sur une valeur faible pour qu'il ne soit pas visible). Dans ce mode, l'Assistant n'affiche généralement pas de réponse. |
PLAYING |
Dans ce mode, l'Assistant affiche généralement une réponse affichée sur une partie de l'écran. |
SpeechRecognitionResult
Transcription estimée d'une phrase que l'utilisateur a prononcée. Il peut s'agir d'un seul segment ou de la proposition complète de la requête vocale de l'utilisateur.
Champs | |
---|---|
transcript |
Uniquement en sortie : texte de transcription représentant les mots prononcés par l'utilisateur. |
stability |
Uniquement en sortie : estimation de la probabilité que l'Assistant ne modifie pas son hypothèse concernant ce résultat. Les valeurs vont de 0.0 (complètement instable) à 1.0 (complètement stable et finale). La valeur par défaut de 0,0 est une valeur sentinelle indiquant que |