google.assistant.library.
-
classe
google.assistant.library.
Assistant
(credenziali, device_model_id)¶ Client per la libreria dell'Assistente Google.
Offre funzionalità di controllo di base e gestione del ciclo di vita per l'Assistente Google. È buona norma utilizzare l'assistente come
ContextManager
:with Assistant(credentials, device_model_id) as assistant:
Ciò consente all'implementazione nativa sottostante di gestire correttamente la gestione della memoria.
Una volta chiamato
start()
, l'assistente genera un flusso di eventi che inoltra i vari stati in cui si trova attualmente l'assistente, ad esempio: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}
Per informazioni dettagliate su tutti gli eventi e i relativi argomenti, consulta
EventType
.Glossario:
Hotword: la frase che l'assistente ascolta quando è disattivato:
"OK Google" OR "Hey Google"
Turn: una singola richiesta utente seguita da una risposta dell'assistente.
Conversazione: una o più svolte che generano il risultato finale desiderato dall'assistente:
"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!"
Parametri: - credentials (google.oauth2.credentials.credentials). Le credenziali Google OAuth2 dell'utente.
- device_model_id (str) – L'ID dispositivo_model_registrato per il tuo progetto con Google. Non deve essere una stringa vuota.
Aumenta: ValueError
: se il valore didevice_model_id
è stato lasciato invariato o vuoto.-
device_id
Restituisce l'ID dispositivo generato dall'assistente.
Questo valore identifica il tuo dispositivo al server quando utilizza servizi come Google Device Actions. Questa proprietà viene riempita solo DOPO la chiamata a
start()
.Resi: L'ID dispositivo una volta start()
è stato chiamato, altrimenti la stringa è vuota.Tipo restituito: str
-
send_text_query
(query)¶ Invia |query| all'assistente come se fosse stato letto dall'utente.
Questo comporta il comportamento di un utente che pronuncia la hotword e fa una query OPPURE pronuncia la risposta a una query di follow-on.
Parametri: query (str) – La query di testo da inviare all'assistente.
-
set_mic_mute
(is_muted)¶ Interrompe l'ascolto dell'assistente tramite l'hotword.
Consente di impedire all'assistente di ascoltare l'hotword. In questo modo la funzionalità è simile al pulsante per la privacy sul retro di Google Home.
Questo metodo è autonomo se l'assistente non è stato ancora avviato.
Parametri: is_muted (bool): il valore True interrompe l'ascolto dell'assistente, mentre il valore False consente di riavviarlo.
-
start
()¶: Avvia l'assistente, che include l'ascolto di una hotword.
Una volta chiamato
start()
, l'assistente inizierà a elaborare i dati dalla sorgente audio ALSA "predefinita", in ascolto della hotword. Verranno avviati anche altri servizi forniti dall'assistente, come timer/sveglie. Questo metodo può essere chiamato una sola volta. Una volta chiamato, l'assistente continuerà a essere eseguito finché non verrà chiamato__exit__
.Resi: Una coda di eventi che notificano le modifiche allo stato dell'assistente. Tipo restituito: google.assistant.event.IterableEventQueue
-
start_conversation
()¶: Avvia manualmente una nuova conversazione con l'assistente.
Inizia a registrare il discorso dell'utente e a inviarlo a Google, in modo simile a quanto succede quando l'assistente sente l'hotword.
Questo metodo è autonomo se l'assistente non è avviato o è stato disattivato.
-
stop_conversation
()¶: Interrompe qualsiasi conversazione attiva con l'assistente.
L'assistente potrebbe ascoltare la query dell'utente OPPURE rispondere. Se non ci sono conversazioni attive, significa che la soluzione è negativa.
-
classe
google.assistant.library.event.
AlertEvent
(event_type, args, **_)¶ Estende l'evento per aggiungere l'analisi di "alert_type".
-
classe
google.assistant.library.event.
AlertType
¶ Tipi di avvisi.
Utilizzato con gli eventi
ON_ALERT_STARTED
eON_ALERT_FINISHED
.-
ALARM
= 0¶ Un evento impostato per un orario assoluto come "3:00 di lunedì"
-
TIMER
= 1¶ Un evento impostato per un tempo relativo, ad esempio "30 secondi da adesso"
-
-
classe
google.assistant.library.event.
DeviceActionEvent
(event_type, args, **kwargs)¶ Estende l'evento per aggiungere la proprietà "actions".
-
classe
google.assistant.library.event.
Event
(event_type, args, **_)¶ Un evento generato dall'assistente.
-
statico
New
(event_type, args, **kwargs)¶ Se necessario, crea un nuovo evento utilizzando una classe Specializzata.
Parametri: - event_type (int): un ID numerico corrispondente a un evento in google.assistant.event.EventType.
- args (dict) – Coppie chiave-valore dell'argomento associate a questo evento.
- kwargs (dict) – Coppie chiave-valore di argomento facoltative specifiche per una specializzazione della classe Event per un EventType.
-
statico
-
classe
google.assistant.library.event.
EventType
¶ Tipi di eventi.
-
ON_ALERT_FINISHED
= 11¶ Indica che l'avviso di
alert_type
ha terminato la riproduzione del suono.Parametri: alert_type (AlertType) - L'ID dell'Enum che rappresenta il tipo di avviso appena terminato.
-
ON_ALERT_STARTED
= 10¶ Indica che un avviso ha iniziato a suonare.
Questo avviso continuerà fino a quando riceverai
ON_ALERT_FINISHED
con lo stessoalert_type
. Deve essere attivo un solo avviso alla volta.Parametri: alert_type (AlertType) - L'ID dell'Enum che rappresenta il tipo di avviso attualmente in uso.
-
ON_ASSISTANT_ERROR
= 12¶ Indica se si è verificato un errore nella libreria dell'assistente.
Parametri: is_Lifetime (bool): se il valore è True, l'assistente non potrà eseguire il ripristino e dovrebbe essere riavviato.
-
ON_CONVERSATION_TURN_FINISHED
= 9¶ L'assistente ha terminato la svolta attuale.
Questo include l'elaborazione della query di un utente e la pronuncia dell'eventuale risposta completa.
Parametri: with_follow_on_turn (bool): se il valore è True, l'assistente si aspetta un'interazione di follow-up da parte dell'utente. Il microfono verrà riaperto per consentire all'utente di rispondere a una domanda di follow-up.
-
ON_CONVERSATION_TURN_STARTED
= 1¶ Indica che una nuova svolta è iniziata.
L'assistente è in ascolto, in attesa di una query dell'utente. Potrebbe essere il risultato dell'ascolto dell'hotword o della chiamata all'assistente per
start_conversation()
.
-
ON_CONVERSATION_TURN_TIMEOUT
= 2¶ Timeout dell'assistente in attesa di una query distinguibile.
Questo potrebbe essere dovuto a un'attivazione errata dell'hotword o all'assistente non è in grado di capire cosa ha detto l'utente.
-
ON_DEVICE_ACTION
= 14¶ Indica che una richiesta Azione dispositivo è stata inviata al dispositivo.
Questo viene inviato se viene attivata qualsiasi grammatica del dispositivo per i tratti supportati dal dispositivo. Questo tipo di evento ha una proprietà "azioni" speciale che restituirà un comando iteratore o Azione dispositivo e i parametri associati (se applicabili).
Parametri: dict: il payload JSON decodificato di una richiesta di azione del dispositivo.
-
ON_END_OF_UTTERANCE
= 3¶ L'assistente ha smesso di ascoltare una query dell'utente.
L'assistente potrebbe non aver finito di capire cosa ha detto l'utente, ma ha smesso di ascoltare più dati audio.
-
ON_MEDIA_STATE_ERROR
= 20¶ Indica che si è verificato un errore durante la riproduzione di una traccia.
Il lettore multimediale integrato proverà a passare alla traccia successiva o a tornare a
ON_MEDIA_STATE_IDLE
se non c'è più nulla da riprodurre.
-
ON_MEDIA_STATE_IDLE
= 16¶ Indica che non c'è nulla in riproduzione e che non è presente nulla in riproduzione.
Questo evento viene trasmesso dal lettore multimediale integrato della Libreria dell'Assistente Google per la trasmissione di notizie/podcast all'avvio e ogni volta che il player è inattivo perché un utente ha interrotto la riproduzione dei contenuti multimediali o l'ha messo in pausa e lo stream è scaduto.
-
ON_MEDIA_TRACK_LOAD
= 17¶ Indica che la traccia è in fase di caricamento, ma la riproduzione non è iniziata.
Questa operazione potrebbe essere inviata più volte se i nuovi metadati vengono caricati in modo asincrono. seguito dall'evento
ON_MEDIA_TRACK_PLAY
Parametri: - metadata (dict) –
I metadati per la traccia caricata. Non tutti i campi verranno compilati entro questa data: se un campo è sconosciuto, non verrà incluso. I campi di metadati includono:
album(str): il nome dell'album a cui appartiene la traccia. album_art(str): un URL della copertina dell'album. artist(str): l'artista che ha creato la traccia. duration_ms(Double): la lunghezza di questa traccia in millisecondi. title(str): il titolo della traccia. - track_type (MediaTrackType) – Il tipo di traccia caricata.
- metadata (dict) –
-
ON_MEDIA_TRACK_PLAY
= 18¶ Indica che una traccia sta inviando audio.
Questo si attiva solo quando eseguiamo la transizione da uno stato a un altro, ad esempio da
ON_MEDIA_TRACK_LOAD
oON_MEDIA_TRACK_STOP
Parametri: - metadata (dict) –
I metadati per la traccia in riproduzione. Se un campo è sconosciuto, non verrà incluso. I campi di metadati includono:
album(str): il nome dell'album a cui appartiene la traccia. album_art(str): un URL della copertina dell'album. artist(str): l'artista che ha creato la traccia. duration_ms(Double): la lunghezza di questa traccia in millisecondi. title(str): il titolo della traccia. - position_ms (Doppia) - La posizione corrente in una traccia in riproduzione in millisecondi dall'inizio. Se "metadata.duration_ms" è sconosciuto (impostato su 0), questo campo non verrà impostato.
- track_type (MediaTrackType) – Il tipo di traccia in riproduzione.
- metadata (dict) –
-
ON_MEDIA_TRACK_STOP
= 19¶ Indica che una traccia riprodotta in precedenza è stata interrotta.
In genere questo deriva dalla sospensione dell'utente; la traccia può tornare a
ON_MEDIA_TRACK_PLAY
se viene ripristinata dall'utente.Parametri: - metadata (dict) –
I metadati per la traccia interrotta. Se un campo è sconosciuto, non verrà incluso. I campi di metadati includono:
album(str): il nome dell'album a cui appartiene la traccia. album_art(str): un URL della copertina dell'album. artist(str): l'artista che ha creato la traccia. duration_ms(Double): la lunghezza di questa traccia in millisecondi. title(str): il titolo della traccia. - position_ms (Doppia) – La posizione corrente in una traccia interrotta in millisecondi dall'inizio. Se "metadata.duration_ms" è sconosciuto (impostato su 0), questo campo non verrà impostato.
- track_type (MediaTrackType) - Il tipo di traccia interrotta.
- metadata (dict) –
-
ON_MUTED_CHANGED
= 13¶ Indica che l'assistente è in ascolto o meno.
start()
genererà sempreON_MUTED_CHANGED
per segnalare il valore iniziale.Parametri: is_muted (bool): se il valore è True, l'assistente non è attualmente in ascolto della sua hotword e non risponderà alle query degli utenti.
-
ON_NO_RESPONSE
= 8¶ L'assistente ha completato correttamente il turno, ma non ha nulla da dire.
-
ON_RECOGNIZING_SPEECH_FINISHED
= 5¶ L'assistente ha stabilito il discorso finale riconosciuto.
Parametri: text (str) - L'interpretazione finale del testo della query di un utente.
-
ON_RENDER_RESPONSE
= 15¶ Indica che l'assistente ha output di testo per il rendering di una risposta.
Parametri: - type (RenderResponseType): il tipo di risposta da visualizzare.
- text (str) – La stringa da visualizzare per RenderResponseType.TEXT.
-
ON_RESPONDING_FINISHED
= 7¶ L'assistente ha finito di rispondere con la voce.
-
ON_RESPONDING_STARTED
= 6¶ L'assistente sta iniziando a rispondere usando la voce.
L'assistente risponderà fino a quando non riceverai il messaggio
ON_RESPONDING_FINISHED
.Parametri: is_error_response (bool) – Vero significa che viene riprodotto un errore locale di sintesi vocale, altrimenti l'assistente risponde con una risposta del server.
-
ON_START_FINISHED
= 0¶ La raccolta dell'assistente è terminata.
-
-
classe
google.assistant.library.event.
IterableEventQueue
(timeout=3600)¶ Estende la coda.Coda per aggiungere un'interfaccia
__iter__
.
-
classe
google.assistant.library.event.
MediaStateChangeEvent
(event_type, args, **_)¶ Estende l'evento per aggiungere l'analisi di "state".
-
classe
google.assistant.library.event.
MediaTrackType
¶ Tipi di traccia per eventi ON_MEDIA_TRACK_X.
Utilizzato con
ON_MEDIA_TRACK_LOAD
,ON_MEDIA_TRACK_PLAY
eON_MEDIA_TRACK_STOP
-
CONTENT
= 2¶ I contenuti effettivi di un articolo (notizie/podcast).
-
TTS
= 1¶ Un'introduzione TTS o una traccia interstitial relativa a un articolo.
-
-
classe
google.assistant.library.event.
RenderResponseEvent
(event_type, args, **_)¶ Estende l'evento per aggiungere l'analisi di "response_type".
-
classe
google.assistant.library.event.
RenderResponseType
¶ Tipi di contenuti da visualizzare.
Utilizzato con
ON_RENDER_RESPONSE