Google Assistant Library

<ph type="x-smartling-placeholder">

Package google.assistant.library.

classe google.assistant.library.Assistant(credentials, device_model_id)

Client de la bibliothèque de l'Assistant Google.

Fournit des fonctionnalités de contrôle de base et une gestion du cycle de vie pour l'Assistant Google. Il est recommandé d'utiliser l'Assistant en tant que ContextManager :

with Assistant(credentials, device_model_id) as assistant:

Ainsi, l'implémentation native sous-jacente peut gérer la mémoire.

Une fois start() appelé, l'Assistant génère un flux d'événements transmettant les différents états dans lesquels il se trouve actuellement, par exemple :

ON_CONVERSATION_TURN_STARTED
ON_END_OF_UTTERANCE
ON_RECOGNIZING_SPEECH_FINISHED:
    {'text': 'what time is it'}
ON_RESPONDING_STARTED:
    {'is_error_response': False}
ON_RESPONDING_FINISHED
ON_CONVERSATION_TURN_FINISHED:
    {'with_follow_on_turn': False}

Pour en savoir plus sur tous les événements et leurs arguments, consultez EventType.

Glossaire :

  • Mot clé : phrase que l'Assistant écoute lorsqu'il n'est pas mis en sourdine :

    "OK Google" OR "Hey Google"
    
  • Tourner: requête unique de l'utilisateur suivie d'une réponse de l'Assistant.

  • Conversation: un ou plusieurs tours qui aboutissent au résultat final souhaité depuis l'Assistant:

    "What time is it?" -> "The time is 6:24 PM" OR
    "Set a timer" -> "Okay, for how long?" ->
    "5 minutes" -> "Sure, 5 minutes, starting now!"
    
Paramètres :
  • credentials (google.oauth2.credentials.Credentials) : indique les identifiants de l'utilisateur Identifiants Google OAuth2.
  • device_model_id (str) : device_model_id enregistré pour votre projet auprès de Google. Ce champ ne doit pas être vide.
Déclenche :

ValueError : si device_model_id a été laissé vide ou défini sur "None".

device_id

Renvoie l'ID d'appareil généré par l'Assistant.

Cette valeur identifie votre appareil auprès du serveur lorsque vous utilisez des services tels que les actions de l'appareil Google. Cette propriété n'est renseignée qu'après l'appel de start().

Renvoie :ID de l'appareil une fois start() appelé, chaîne vide sinon.
Type renvoyé:str
send_text_query(requête)

Envoie |query| à l'Assistant comme s'il était prononcé par l'utilisateur.

Le comportement sera le même que celui d'un utilisateur qui prononce le mot clé et effectue une requête OU prononce la réponse à une requête ultérieure.

Paramètres :query (str) : requête textuelle à envoyer à l'Assistant.
set_mic_mute(is_muted)

Empêche l'Assistant d'écouter le mot clé.

Permet de désactiver la détection du mot clé par l'Assistant. Cette fonctionnalité est semblable au bouton de confidentialité situé à l'arrière de Google Home.

Cette méthode n'a aucun effet si l'Assistant n'a pas encore été démarré.

Paramètres :is_muted (bool) : la valeur "True" empêche l'Assistant d'écouter et "False" pour qu'il puisse redémarrer.
start()

Démarre l'Assistant, ce qui implique d'écouter dès qu'un mot clé est prononcé.

Une fois start() appelé, l'Assistant commence à traiter les données de la source audio ALSA par défaut, en écoutant le mot clé. Ce lance également d'autres services fournis par l'Assistant, tels que comme des minuteurs/alarmes. Cette méthode ne peut être appelée qu'une seule fois. Une fois appelé, l'Assistant continuera de fonctionner jusqu'à __exit__ est appelé.

Renvoie :File d'attente d'événements qui signalent les modifications de l'état de l'Assistant.
Type de retour :google.assistant.event.IterableEventQueue
start_conversation()

Démarre manuellement une nouvelle conversation avec l'Assistant.

Il commence à enregistrer les paroles prononcées par l'utilisateur et à les envoyer à Google, semblable à ce qui se passe lorsque l'Assistant entend le mot clé.

Cette méthode est considérée comme no-op si l'Assistant n'est pas démarré ou a été son coupé.

stop_conversation()

Arrête toute conversation active avec l'Assistant.

L'Assistant peut écouter la requête de l'utilisateur OU y répondre. Si aucune conversation n'est active, cette opération n'a aucun effet.

class google.assistant.library.event.AlertEvent(event_type, args, **_)

Élargit l'événement pour ajouter l'analyse de "alert_type".

classe google.assistant.library.event.AlertType

Types d'alertes.

Utilisation avec ON_ALERT_STARTED et ON_ALERT_FINISHED événements.

ALARM = 0

Événement défini pour une heure absolue, par exemple "3h du matin le lundi"

TIMER = 1

Événement défini pour une durée relative, par exemple "dans 30 secondes"

class google.assistant.library.event.DeviceActionEvent(event_type, args, **kwargs)

Étend l'événement pour ajouter une propriété "actions".

actions

Générateur de commandes à exécuter pour l'appareil actuel.

class google.assistant.library.event.Event(event_type, args, **_)

Événement généré par l'Assistant.

type

EventType : type d'événement généré.

args

dict : paires clé/valeur d'argument associées à cet événement.

statique New(event_type, args, **kwargs)

Créez un événement à l'aide d'une classe d'événement spécialisée si nécessaire.

Paramètres :
  • event_type (int) : identifiant numérique correspondant à un événement dans google.assistant.event.EventType.
  • args (dict) : paires clé/valeur d'argument associées à cet événement.
  • kwargs (dict) : paires clé/valeur d'argument facultatif spécifiques à une spécialisation de la classe Event pour un EventType.
classe google.assistant.library.event.EventType

Types d'événements.

ON_ALERT_FINISHED = 11

Indique que l'alerte alert_type a fini de retentir.

Paramètres :alert_type (AlertType) : ID de l'énumération représentant le type. d'alerte qui vient de se terminer.
ON_ALERT_STARTED = 10

Indique qu'une alerte a commencé à retentir.

Cette alerte continuera jusqu'à ce que ON_ALERT_FINISHED avec le même alert_type soit reçu. Une seule alerte doit être active à la fois.

Paramètres :alert_type (AlertType) : identifiant de l'énumération représentant la qui retentit.
ON_ASSISTANT_ERROR = 12

Indique si la bibliothèque de l'Assistant a rencontré une erreur.

Paramètres :is_fatal (bool) : si la valeur est "True", l'Assistant ne pourra pas le récupérer. et doivent être redémarrées.
ON_CONVERSATION_TURN_FINISHED = 9

L'Assistant a terminé le virage en cours.

Cela inclut à la fois le traitement de la requête de l'utilisateur et l'énoncé réponse complète, le cas échéant.

Paramètres :with_follow_on_turn (bool) : si la valeur est "True", l'Assistant attend une interaction de suivi de la part de l'utilisateur. Le micro sera rouverte pour permettre à l'utilisateur de répondre à une question complémentaire.
ON_CONVERSATION_TURN_STARTED = 1

Indique qu'une nouvelle route a commencé.

L'Assistant écoute actuellement et attend une requête de l'utilisateur. Cela peut être dû à l'activation du mot clé ou à l'appel de start_conversation() dans l'Assistant.

ON_CONVERSATION_TURN_TIMEOUT = 2

L'Assistant a expiré en attendant une requête détectable.

Cela peut être dû à un mauvais mot clé ou à l'Assistant ne pas comprendre ce que l’utilisateur a dit.

ON_DEVICE_ACTION = 14

Indique qu'une demande Device Action (Action sur l'appareil) a été envoyée à l'appareil.

Cette méthode est envoyée si une grammaire d'appareil est déclenchée pour les attributs compatibles avec l'appareil. Ce type d'événement comporte une action spéciale qui renvoie un itérateur ou des commandes d'action sur l'appareil, les paramètres qui leur sont associés (le cas échéant) ;

Paramètres :dict : charge utile JSON décodée d'une requête d'action sur l'appareil.
ON_END_OF_UTTERANCE = 3

L'Assistant n'écoute plus la requête d'un utilisateur.

Il se peut que l'Assistant n'ait pas fini de comprendre ce que l'utilisateur a dit, mais il a cessé d'écouter plus de données audio.

ON_MEDIA_STATE_ERROR = 20

Indique qu'une erreur s'est produite lors de la lecture d'un titre.

Le lecteur multimédia intégré tente de passer au titre suivant ou revenir à ON_MEDIA_STATE_IDLE s'il ne reste rien à jouer.

ON_MEDIA_STATE_IDLE = 16

Indique qu'aucun contenu n'est en cours de lecture et qu'aucun contenu n'est en file d'attente.

Cet événement est diffusé à partir de la bibliothèque de l'Assistant Google le lecteur multimédia pour les actualités/podcasts au démarrage et chaque fois que le lecteur a est inactif, car un utilisateur a arrêté la lecture du contenu multimédia ou l'a mis en pause, ainsi que le flux ; a expiré.

ON_MEDIA_TRACK_LOAD = 17

Indique qu'un titre est en cours de chargement, mais que la lecture n'a pas encore commencé.

Cette opération peut être distribuée plusieurs fois si de nouvelles métadonnées sont chargées de manière asynchrone. L'événement ON_MEDIA_TRACK_PLAY suit généralement.

Paramètres :
  • metadata (dict) :

    Métadonnées du titre chargé. Tous les champs ne seront pas renseignés à ce stade. Si un champ est inconnu, il ne sera pas inclus. Les champs de métadonnées incluent:

    album(str) : nom de l'album auquel le titre appartient. album_art(str) : URL de la pochette de l'album. artist(str) : artiste ayant créé le titre. duration_ms(double) : durée du titre en millisecondes. title(str) : titre du titre.
  • track_type (MediaTrackType) : type de piste chargé.
ON_MEDIA_TRACK_PLAY = 18

Indique qu'une piste émet actuellement du contenu audio.

Cela ne se déclenche que lorsque nous passons d'un état à un autre, par exemple de ON_MEDIA_TRACK_LOAD ou ON_MEDIA_TRACK_STOP.

Paramètres :
  • metadata (dict) :

    Métadonnées du titre en cours de lecture. Si un champ est inconnu, il n'est pas inclus. Les champs de métadonnées incluent:

    album(str): nom de l'album auquel appartient le titre. album_art(str): URL de la pochette de l'album. artist(str): artiste qui a créé ce titre. durée_ms(double): durée de la piste, en millisecondes. title(str): titre de la piste.
  • position_ms (double) : position actuelle du titre dans la millisecondes depuis le début. Si "metadata.duration_ms" est inconnu (défini sur 0), ce champ ne sera pas défini.
  • track_type (MediaTrackType) : type de piste en cours de lecture.
ON_MEDIA_TRACK_STOP = 19

Indique qu'un titre précédemment en cours de lecture est arrêté.

Cela est généralement dû à la mise en veille de l'utilisateur. la piste peut revenir à ON_MEDIA_TRACK_PLAY si c'est le cas réactivées par l'utilisateur.

Paramètres :
  • metadata (dict) :

    Métadonnées du canal arrêté. Si un champ est inconnu, il n'est pas inclus. Les champs de métadonnées incluent les suivants :

    album(str) : nom de l'album auquel le titre appartient. album_art(str) : URL de la pochette de l'album. artist(str) : artiste ayant créé le titre. duration_ms(double) : durée du titre en millisecondes. title(str) : titre du titre.
  • position_ms (double) : position actuelle d'une trajectoire arrêtée dans millisecondes depuis le début. Si la valeur de "metadata.duration_ms" est inconnu (défini sur 0), ce champ ne sera pas défini.
  • track_type (MediaTrackType) : type de titre arrêté.
ON_MUTED_CHANGED = 13

Indique si l'Assistant est en train d'écouter ou non.

start() génère toujours un ON_MUTED_CHANGED pour indiquer la valeur initiale.

Paramètres :is_muted (bool) : si la valeur est "True", cela signifie que l'Assistant n'écoute pas actuellement. pour son mot clé et ne répond pas aux requêtes des utilisateurs.
ON_NO_RESPONSE = 8

L'Assistant a bien effectué son tour, mais n'a rien à dire.

ON_RECOGNIZING_SPEECH_FINISHED = 5

L'Assistant a déterminé la voix finale reconnue.

Paramètres :text (str) : interprétation textuelle finale de la requête d'un utilisateur.
ON_RENDER_RESPONSE = 15

Indique que l'Assistant dispose d'une sortie textuelle à afficher pour une réponse.

Paramètres :
  • type (RenderResponseType) : type de réponse à afficher.
  • text (str) : chaîne à afficher pour RenderResponseType.TEXT.
ON_RESPONDING_FINISHED = 7

L'Assistant a fini de répondre par commande vocale.

ON_RESPONDING_STARTED = 6

L'Assistant commence à répondre par commande vocale.

L'Assistant répondra jusqu'à ce que ON_RESPONDING_FINISHED est reçue.

Paramètres :is_error_response (bool) : "true" signifie qu'une synthèse vocale d'erreur locale est lue, sinon l'Assistant répond avec une réponse du serveur.
ON_START_FINISHED = 0

La bibliothèque de l'Assistant a fini de démarrer.

class google.assistant.library.event.IterableEventQueue(timeout=3600)

Étend la file d'attente "file d'attente" pour ajouter une interface __iter__.

offer(événement)

Propose un événement à placer dans la file d'attente.

Si la file d'attente est actuellement pleine, l'événement sera consigné, mais pas ajouté.

Paramètres :event (Event) : événement à essayer d'ajouter à la file d'attente.
classe google.assistant.library.event.MediaStateChangeEvent(event_type, args, **_)

Étend l'événement pour ajouter une analyse de "state".

classe google.assistant.library.event.MediaTrackType

Types de pistes pour un événement ON_MEDIA_TRACK_X.

Utilisation avec ON_MEDIA_TRACK_LOAD, ON_MEDIA_TRACK_PLAY, &amp; ON_MEDIA_TRACK_STOP

CONTENT = 2

Contenu réel d'un élément (actualité/podcast).

TTS = 1

Piste de présentation ou interstitielle par synthèse vocale associée à un article.

classe google.assistant.library.event.RenderResponseEvent(event_type, args, **_)

Étend l'événement pour ajouter une analyse de "response_type".

classe google.assistant.library.event.RenderResponseType

Types de contenus à afficher.

Utilisé avec ON_RENDER_RESPONSE