Paquete google.assistant.library.
-
class
google.assistant.library.
Assistant
(credentials, device_model_id)¶ Cliente para la biblioteca de Asistente de Google.
Proporciona funciones de control básicas y control de ciclo de vida para el Asistente de Google. Se recomienda usar el Asistente como
ContextManager
:with Assistant(credentials, device_model_id) as assistant:
Esto permite que la implementación nativa subyacente controle correctamente la administración de la memoria.
Una vez que se llama a
start()
, el Asistente genera una transmisión de eventos que retransmite los diversos estados en los que se encuentra actualmente, por ejemplo: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}
Consulta
EventType
para obtener detalles sobre todos los eventos y sus argumentos.Glosario:
Palabra clave: Es la frase que el Asistente escucha cuando no está silenciado:
"OK Google" OR "Hey Google"
Turno: Es una sola solicitud del usuario seguida de una respuesta del Asistente.
Conversación: Uno o más turnos que generan un resultado final deseado del Asistente:
"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!"
Parámetros: - credentials (google.oauth2.credentials.Credentials): Son las credenciales de OAuth2 de Google del usuario.
- device_model_id (str): Es el device_model_id que se registró para tu proyecto con Google. No debe ser una cadena vacía.
Se genera el error: ValueError
: Sidevice_model_id
se dejó como None o vacío.-
device_id
¶ Muestra el ID de dispositivo que genera el Asistente.
Este valor identifica tu dispositivo para el servidor cuando usas servicios como Acciones en dispositivos de Google. Esta propiedad solo se completa DESPUÉS de que se llame a
start()
.Se muestra lo siguiente: El ID del dispositivo una vez que se llamó a start()
, una cadena vacía de lo contrarioTipo de datos que se muestra: str
-
send_text_query
(consulta)¶ Envía |query| al Asistente como si el usuario lo hubiera dicho.
Se comportará de la misma manera que un usuario que dice la palabra clave y realiza una consulta O dice la respuesta a una consulta adicional.
Parámetros: query (str): Es la consulta de texto que se enviará al Asistente.
-
set_mic_mute
(is_muted)¶ Evita que Asistente escuche la palabra clave.
Permite inhabilitar que el Asistente escuche la palabra clave. Esto proporciona una funcionalidad similar al botón de privacidad que se encuentra en la parte posterior de Google Home.
Este método no realiza ninguna acción si el Asistente aún no se inició.
Parámetros: is_muted (bool): Si es verdadero, se detiene la escucha de Asistente, y si es falso, se le permite reiniciarse.
-
start
()¶ Inicia el Asistente, lo que incluye escuchar una palabra clave.
Una vez que se llame a
start()
, el Asistente comenzará a procesar los datos de la fuente de audio ALSA "predeterminada" y escuchará la palabra clave. Esto también iniciará otros servicios que proporciona el Asistente, como temporizadores o alarmas. Solo se puede llamar a este método una vez. Una vez que se llame a la función, el Asistente seguirá ejecutándose hasta que se llame a__exit__
.Se muestra lo siguiente: Es una fila de eventos que notifican los cambios en el estado del Asistente. Tipo de datos que se muestra: google.assistant.event.IterableEventQueue
-
start_conversation
()¶ Inicia manualmente una nueva conversación con el Asistente.
Comienza a grabar la voz del usuario y a enviarla a Google, similar a lo que sucede cuando el Asistente escucha la palabra clave.
Este método no realiza ninguna acción si el Asistente no se inició o se silencia.
-
stop_conversation
()¶ Detiene cualquier conversación activa con Asistente.
Asistente podría estar escuchando la consulta del usuario O respondiendo. Si no hay una conversación activa, no se realizará ninguna acción.
-
class
google.assistant.library.event.
AlertEvent
(event_type, args, **_)¶ Se extiende el evento para agregar el análisis de "alert_type".
-
class
google.assistant.library.event.
AlertType
¶ Tipos de alertas
Se usa con los eventos
ON_ALERT_STARTED
yON_ALERT_FINISHED
.-
ALARM
= 0¶ Un evento establecido para una hora absoluta, como "3 a.m. del lunes"
-
TIMER
= 1¶ Un evento configurado para una hora relativa, como "dentro de 30 segundos"
-
-
class
google.assistant.library.event.
DeviceActionEvent
(event_type, args, **kwargs)¶ Extiende el evento para agregar la propiedad "actions".
-
actions
¶ Es un generador de comandos para ejecutar en el dispositivo actual.
-
-
class
google.assistant.library.event.
Event
(event_type, args, **_)¶ Es un evento que genera el Asistente.
-
type
¶ EventType: Es el tipo de evento que se generó.
-
args
¶ dict: Son los pares clave-valor de argumentos asociados con este evento.
-
static
New
(event_type, args, **kwargs)¶ Crea un evento nuevo con una clase de evento especializada cuando sea necesario.
Parámetros: - event_type (int): Es un ID numérico que corresponde a un evento en google.assistant.event.EventType.
- args (dict): Son los pares clave-valor de argumentos asociados con este evento.
- kwargs (dict): Son pares clave-valor de argumentos opcionales específicos de una especialización de la clase de evento para un EventType.
-
-
class
google.assistant.library.event.
EventType
¶ Tipos de eventos.
-
ON_ALERT_FINISHED
= 11¶ Indica que finalizó la alarma de
alert_type
.Parámetros: alert_type (AlertType): Es el ID de la enumeración que representa el tipo de alerta que acaba de finalizar.
-
ON_ALERT_STARTED
= 10¶ Indica que comenzó a sonar una alerta.
Esta alerta continuará hasta que se reciba
ON_ALERT_FINISHED
con el mismoalert_type
. Solo debe haber una alerta activa en un momento determinado.Parámetros: alert_type (AlertType): Es el ID de la enumeración que representa el tipo de alerta que se está reproduciendo en el momento.
-
ON_ASSISTANT_ERROR
= 12¶ Indica si la biblioteca de Asistente encontró un error.
Parámetros: is_fatal (bool): Si es verdadero, el Asistente no podrá recuperarse y se deberá reiniciar.
-
ON_CONVERSATION_TURN_FINISHED
= 9¶ El Asistente terminó el giro actual.
Esto incluye procesar la consulta de un usuario y decir la respuesta completa, si la hay.
Parámetros: with_follow_on_turn (booleano): Si es verdadero, el Asistente espera una interacción de seguimiento del usuario. Se volverá a abrir el micrófono para permitir que el usuario responda una pregunta de seguimiento.
-
ON_CONVERSATION_TURN_STARTED
= 1¶ Indica que comenzó un nuevo giro.
En este momento, el Asistente está escuchando y esperando una consulta del usuario. Esto puede deberse a que se escuchó la palabra clave o se llamó a
start_conversation()
en el Asistente.
-
ON_CONVERSATION_TURN_TIMEOUT
= 2¶ Se agotó el tiempo de espera de Asistente mientras esperaba una consulta comprensible.
Esto puede deberse a que se activó incorrectamente la palabra activa o a que el Asistente no pudo comprender lo que dijo el usuario.
-
ON_DEVICE_ACTION
= 14¶ Indica que se envió una solicitud de acción del dispositivo al dispositivo.
Se envía si se activa cualquier gramática de dispositivos para los atributos que admite el dispositivo. Este tipo de evento tiene una propiedad "actions" especial que mostrará un iterador o comandos de Device Action y los parámetros asociados con ellos (si corresponde).
Parámetros: dict: Es la carga útil de JSON decodificada de una solicitud de Acción del dispositivo.
-
ON_END_OF_UTTERANCE
= 3¶ El Asistente dejó de escuchar una consulta del usuario.
Es posible que Asistente no haya terminado de interpretar lo que dijo el usuario, pero dejó de escuchar más datos de audio.
-
ON_MEDIA_STATE_ERROR
= 20¶ Indica que se produjo un error cuando se estaba reproduciendo una pista.
El reproductor multimedia integrado intentará saltar a la siguiente pista o volver a
ON_MEDIA_STATE_IDLE
si no queda nada para reproducir.
-
ON_MEDIA_STATE_IDLE
= 16¶ Indica que no se está reproduciendo nada ni hay contenido en cola para reproducir.
Este evento se transmite desde el reproductor multimedia integrado de la biblioteca de Google Assistant para noticias o podcasts durante el inicio y cada vez que el reproductor se inhabilita porque un usuario detuvo el contenido multimedia o lo puso en pausa, y se agotó el tiempo de espera de la transmisión.
-
ON_MEDIA_TRACK_LOAD
= 17¶ Indica que se está cargando una pista, pero aún no comenzó a reproducirse.
Es posible que se envíe varias veces si se cargan metadatos nuevos de forma asíncrona. Por lo general, le sigue el evento
ON_MEDIA_TRACK_PLAY
.Parámetros: - metadata (dict):
Son los metadatos de la pista cargada. No todos los campos se completarán en este momento. Si un campo es desconocido, no se incluirá. Entre los campos de metadatos, se incluyen los siguientes:
album(str): Es el nombre del álbum al que pertenece la pista. album_art(str): Es una URL para la portada del álbum. artist(str): Es el artista que creó esta pista. duration_ms(double): Es la duración de esta pista en milisegundos. title(str): Es el título de la pista. - track_type (MediaTrackType): Es el tipo de pista cargada.
- metadata (dict):
-
ON_MEDIA_TRACK_PLAY
= 18¶ Indica que una pista está emitiendo audio en este momento.
Esto solo se activará cuando realicemos la transición de un estado a otro, como de
ON_MEDIA_TRACK_LOAD
oON_MEDIA_TRACK_STOP
.Parámetros: - metadata (dict):
Son los metadatos de la pista que se está reproduciendo. Si un campo es desconocido, no se incluirá. Entre los campos de metadatos, se incluyen los siguientes:
album(str): Es el nombre del álbum al que pertenece la pista. album_art(str): Es una URL para la portada del álbum. artist(str): Es el artista que creó esta pista. duration_ms(double): Es la duración de esta pista en milisegundos. title(str): Es el título de la pista. - position_ms (double): Es la posición actual en una pista de reproducción en milisegundos desde el principio. Si "metadata.duration_ms" es desconocido (se establece en 0), no se establecerá este campo.
- track_type (MediaTrackType): Es el tipo de pista que se está reproduciendo.
- metadata (dict):
-
ON_MEDIA_TRACK_STOP
= 19¶ Indica que se detuvo una pista que se estaba reproduciendo anteriormente.
Por lo general, esto se debe a que el usuario hizo una pausa. La pista puede volver a
ON_MEDIA_TRACK_PLAY
si el usuario la reanuda.Parámetros: - metadata (dict):
Metadatos del segmento detenido. Si un campo es desconocido, no se incluirá. Entre los campos de metadatos, se incluyen los siguientes:
album(str): Es el nombre del álbum al que pertenece la pista. album_art(str): Es una URL para la portada del álbum. artist(str): Es el artista que creó esta pista. duration_ms(double): Es la duración de esta pista en milisegundos. title(str): Es el título de la pista. - position_ms (double): Es la posición actual en una pista detenida en milisegundos desde el principio. Si "metadata.duration_ms" es desconocido (se establece en 0), no se establecerá este campo.
- track_type (MediaTrackType): Es el tipo de pista detenida.
- metadata (dict):
-
ON_MUTED_CHANGED
= 13¶ Indica si el Asistente está escuchando o no.
start()
siempre generará unON_MUTED_CHANGED
para informar el valor inicial.Parámetros: is_muted (bool): Si es verdadero, significa que Asistente no está escuchando su palabra clave y no responderá las consultas del usuario.
-
ON_NO_RESPONSE
= 8¶ El Asistente completó correctamente su turno, pero no tiene nada que decir.
-
ON_RECOGNIZING_SPEECH_FINISHED
= 5¶ El Asistente determinó el discurso reconocido final.
Parámetros: text (str): Es la interpretación de texto final de la consulta de un usuario.
-
ON_RENDER_RESPONSE
= 15¶ Indica que el Asistente tiene un resultado de texto para renderizar una respuesta.
Parámetros: - type (RenderResponseType): Es el tipo de respuesta que se renderizará.
- text (str): Es la cadena que se renderizará para RenderResponseType.TEXT.
-
ON_RESPONDING_FINISHED
= 7¶ Asistente terminó de responder con la voz.
-
ON_RESPONDING_STARTED
= 6¶ Asistente comienza a responder con voz.
El Asistente responderá hasta que se reciba
ON_RESPONDING_FINISHED
.Parámetros: is_error_response (booleano): Si es verdadero, significa que se está reproduciendo una TTS de error local. De lo contrario, el Asistente responde con una respuesta del servidor.
-
ON_START_FINISHED
= 0¶ La biblioteca de Asistente terminó de iniciarse.
-
-
class
google.assistant.library.event.
IterableEventQueue
(timeout=3600)¶ Extiende queue.Queue para agregar una interfaz
__iter__
.
-
class
google.assistant.library.event.
MediaStateChangeEvent
(event_type, args, **_)¶ Extiende el evento para agregar el análisis de "state".
-
class
google.assistant.library.event.
MediaTrackType
¶ Son los tipos de pista para un evento ON_MEDIA_TRACK_X.
Se usa con
ON_MEDIA_TRACK_LOAD
,ON_MEDIA_TRACK_PLAY
yON_MEDIA_TRACK_STOP
.-
CONTENT
= 2¶ Es el contenido real de un elemento (noticias o podcasts).
-
TTS
= 1¶ Una introducción de TTS o una pista intersticial relacionada con un elemento
-
-
class
google.assistant.library.event.
RenderResponseEvent
(event_type, args, **_)¶ Se extiende el evento para agregar el análisis de "response_type".
-
class
google.assistant.library.event.
RenderResponseType
¶ Tipos de contenido que se renderizarán.
Se usa con
ON_RENDER_RESPONSE