pakiet google.assistant.library.
-
class
google.assistant.library.
Assistant
(credentials, device_model_id)¶ Klient dla biblioteki Asystenta Google.
Zapewnia podstawowe funkcje sterowania i obsługi cyklu życia Asystenta Google. Sprawdzoną metodą jest korzystanie z Asystenta jako
ContextManager
:with Assistant(credentials, device_model_id) as assistant:
Dzięki temu podstawowa implementacja natywnych funkcji będzie mogła prawidłowo zarządzać pamięcią.
Po wywołaniu
start()
Asystent generuje strumień zdarzeń, które przekazują różne stany, w których się znajduje, na przykład: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}
Szczegółowe informacje o wszystkich zdarzeniach i ich argumentach znajdziesz w artykule
EventType
.Słownik:
Słowo-klucz: fraza, której Asystent słucha, gdy nie jest wyciszona:
"OK Google" OR "Hey Google"
Turn: prośba jednego użytkownika, po której następuje odpowiedź Asystenta.
Rozmowa: co najmniej 1 zwrot, który prowadzi do pożądanego wyniku końcowego Asystenta:
"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!"
Parametry: - credentials (google.oauth2.credentials.Credentials) – dane logowania OAuth2 Google użytkownika.
- device_model_id (str) – identyfikator modelu urządzenia zarejestrowany w Google dla Twojego projektu. Nie może być pusty.
Podwyżki: ValueError
– jeślidevice_model_id
zostało ustawione jako „Brak” lub jest puste.-
device_id
¶ Zwraca identyfikator urządzenia wygenerowany przez Asystenta.
Ta wartość identyfikuje Twoje urządzenie na serwerze podczas korzystania z usług, takich jak Google Device Actions. Ta właściwość jest wypełniana dopiero po wywołaniu funkcji
start()
.Zwraca: Identyfikator urządzenia, gdy funkcja start()
została wywołana, w przeciwnym razie pusty ciąg znaków.Typ zwracanej wartości: str
-
send_text_query
(zapytanie)¶ Przesyła |query| do Asystenta tak, jakby było wypowiedziane przez użytkownika.
Działa on tak samo jak użytkownik, który wypowiada słowo kluczowe i formułuje zapytanie LUB wypowiada odpowiedź na kolejne zapytanie.
Parametry: query (str) – tekst zapytania do wysłania do Asystenta.
-
set_mic_mute
(is_muted)¶ Asystent przestaje nasłuchiwać słowo-klucz.
Umożliwia wyłączenie nasłuchiwania przez Asystenta słowa-klucza. Zapewnia to funkcjonalność podobną do przycisku prywatności na tylnej stronie urządzenia Google Home.
Ta metoda nie działa, jeśli Asystent nie został jeszcze uruchomiony.
Parametry: is_muted (bool) – wartość True (prawda) powoduje, że Asystent przestaje słuchać, a wartość False (fałsz) pozwala mu na ponowne rozpoczęcie słuchania.
-
start
()¶ Uruchamia Asystenta, w tym nasłuchuje słowa-klucza.
Gdy wywołasz
start()
, Asystent zacznie przetwarzać dane z „domyślnego” źródła dźwięku ALSA, nasłuchując hasła. Spowoduje to również uruchomienie innych usług oferowanych przez Asystenta, takich jak minutniki czy alarmy. Ta metoda może być wywołana tylko raz. Gdy zostanie wywołany, będzie działać do momentu wywołania__exit__
.Zwraca: kolejka zdarzeń, które informują o zmianach stanu Asystenta; Typ zwracanej wartości: google.assistant.event.IterableEventQueue
-
start_conversation
()¶ ręcznie rozpoczyna nową rozmowę z Asystentem;
rozpoczyna nagrywanie mowy użytkownika i wysyłanie nagrania do Google, podobnie jak w przypadku, gdy Asystent usłyszy słowo kluczowe;
Ta metoda nie działa, jeśli Asystent nie jest uruchomiony lub został wyciszony.
-
stop_conversation
()¶ Zatrzymuje wszystkie aktywne rozmowy z Asystentem.
Asystent może słuchać zapytania użytkownika LUB na nie odpowiadać. Jeśli nie ma aktywnej rozmowy, nie można wykonać tej czynności.
-
class
google.assistant.library.event.
AlertEvent
(event_type, args, **_)¶ Rozszerza zdarzenie o dodanie analizowania parametru „alert_type”.
-
class
google.assistant.library.event.
AlertType
¶ Typy alertów.
Używany w przypadku zdarzeń
ON_ALERT_STARTED
iON_ALERT_FINISHED
.-
ALARM
= 0¶ zdarzenie o czasie bezwzględnym, np. „poniedziałek, godz. 3 rano”;
-
TIMER
= 1¶ zdarzenie ustawione na czas względny, np. „za 30 sekund”.
-
-
class
google.assistant.library.event.
DeviceActionEvent
(event_type, args, **kwargs)¶ Rozszerza zdarzenie o właściwość „działania”.
-
actions
¶ Generator poleceń do wykonania na bieżącym urządzeniu.
-
-
class
google.assistant.library.event.
Event
(event_type, args, **_)¶ Zdarzenie wygenerowane przez Asystenta.
-
type
¶ EventType – typ wygenerowanego zdarzenia.
-
args
¶ dict – pary klucz-wartość argumentów powiązane z tym zdarzeniem.
-
static
New
(event_type, args, **kwargs)¶ W razie potrzeby utwórz nowe zdarzenie, korzystając z specjalnej klasy zdarzeń.
Parametry: - event_type (int) – identyfikator liczbowy odpowiadający zdarzeniu w google.assistant.event.EventType.
- args (dict) – pary klucz-wartość argumentów powiązane z tym zdarzeniem.
- kwargs (dict) – opcjonalne pary klucz-wartość argumentów specyficzne dla specjalizacji klasy Event dla typu EventType.
-
-
class
google.assistant.library.event.
EventType
¶ Typy zdarzeń
-
ON_ALERT_FINISHED
= 11¶ Oznacza, że alert
alert_type
został zakończony.Parametry: alert_type (AlertType) – identyfikator typu alertu, który właśnie się zakończył.
-
ON_ALERT_STARTED
= 10¶ Wskazuje, że alarm zaczął działać.
Ten alert będzie się pojawiać, dopóki nie otrzymamy wiadomości
ON_ALERT_FINISHED
z tym samymalert_type
. W danym momencie powinien być aktywny tylko 1 alert.Parametry: alert_type (AlertType) – identyfikator typu z wyliczenia, który reprezentuje aktualnie odtwarzany typ alertu.
-
ON_ASSISTANT_ERROR
= 12¶ Wskazuje, czy biblioteka Asystenta napotkała błąd.
Parametry: is_fatal (bool) – jeśli wartość to prawda, Asystent nie będzie mógł się odzyskać i należy go zrestartować.
-
ON_CONVERSATION_TURN_FINISHED
= 9¶ Asystent zakończył bieżący obrót.
Obejmuje to zarówno przetworzenie zapytania użytkownika, jak i wypowiedzenie pełnej odpowiedzi, jeśli taka istnieje.
Parametry: with_follow_on_turn (bool) – jeśli wartość to True, Asystent oczekuje dalszej interakcji użytkownika. Mikrofon zostanie ponownie włączony, aby umożliwić użytkownikowi udzielenie odpowiedzi na kolejne pytanie.
-
ON_CONVERSATION_TURN_STARTED
= 1¶ Wskazuje, że rozpoczął się nowy ruch.
Asystent nasłuchuje, czekając na zapytanie użytkownika. Może to być spowodowane usłyszeniem słowa-klucza lub polecenia „
start_conversation()
” przez Asystenta.
-
ON_CONVERSATION_TURN_TIMEOUT
= 2¶ Asystent zakończył oczekiwanie na uchwytne zapytanie.
Może to być spowodowane nieprawidłowym uruchomieniem hasła lub tym, że Asystent nie zrozumiał tego, co powiedział użytkownik.
-
ON_DEVICE_ACTION
= 14¶ Wskazuje, że na urządzenie wysłano żądanie działania na urządzeniu.
Jest on wysyłany, jeśli zostanie wywołana jakakolwiek gramatyka urządzenia dla właściwości obsługiwanych przez urządzenie. Ten typ zdarzenia ma specjalną właściwość „actions”, która zwraca iterator lub polecenia działania urządzenia i powiązane z nimi parametry (w odpowiednich przypadkach).
Parametry: dict – zdekodowany ładunek JSON żądania działania urządzenia.
-
ON_END_OF_UTTERANCE
= 3¶ Asystent przestał słuchać zapytania użytkownika.
Asystent może nie skończyć analizowania wypowiedzi użytkownika, ale przestał już nasłuchiwać nowych danych audio.
-
ON_MEDIA_STATE_ERROR
= 20¶ Wskazuje, że podczas odtwarzania ścieżki wystąpił błąd.
Wbudowany odtwarzacz multimediów spróbuje przejść do następnego utworu lub wrócić do
ON_MEDIA_STATE_IDLE
, jeśli nie ma już nic do odtworzenia.
-
ON_MEDIA_STATE_IDLE
= 16¶ Wskazuje, że nic nie jest odtwarzane i nie ma nic w kolejce.
To zdarzenie jest wysyłane z wbudowanego w Asystenta Google odtwarzacza multimediów (dla wiadomości lub podcastów) podczas uruchamiania i za każdym razem, gdy odtwarzacz przejdzie w stan bezczynności, ponieważ użytkownik zatrzymał lub wstrzymał multimedium, a czas trwania strumienia minął.
-
ON_MEDIA_TRACK_LOAD
= 17¶ Wskazuje, że utwór jest wczytywany, ale nie został jeszcze odtworzony.
Jeśli nowe metadane są wczytywane asynchronicznie, mogą być wysyłane wielokrotnie. Zwykle po tym następuje zdarzenie
ON_MEDIA_TRACK_PLAY
Parametry: - metadane (dict) –
Metadane załadowanego utworu. Nie wszystkie pola będą wypełnione w tym czasie – jeśli pole jest nieznane, nie zostanie uwzględnione. Pola metadanych:
album(str): nazwa albumu, do którego należy utwór; album_art(str): URL okładki albumu; artist(str): wykonawca, który stworzył utwór; duration_ms(double): długość utworu w milisekundach; title(str): tytuł utworu. - track_type (MediaTrackType) – typ wczytywanego utworu.
- metadane (dict) –
-
ON_MEDIA_TRACK_PLAY
= 18¶ Wskazuje, że ścieżka obecnie wysyła dźwięk.
Ta funkcja zostanie uruchomiona tylko wtedy, gdy nastąpi przejście z jednego stanu do drugiego, np. z
ON_MEDIA_TRACK_LOAD
lubON_MEDIA_TRACK_STOP
.Parametry: - metadane (dict) –
Metadane odtwarzanego utworu. Jeśli pole jest nieznane, nie zostanie uwzględnione. Pola metadanych:
album(str): nazwa albumu, do którego należy utwór; album_art(str): URL okładki albumu; artist(str): wykonawca, który stworzył utwór; duration_ms(double): długość utworu w milisekundach; title(str): tytuł utworu. - position_ms (double) – bieżąca pozycja w odtwarzanym utworze w milisekundach od początku. Jeśli „metadata.duration_ms” jest nieznane (ustawione na 0), to pole nie będzie ustawione.
- track_type (MediaTrackType) – typ odtwarzanego utworu.
- metadane (dict) –
-
ON_MEDIA_TRACK_STOP
= 19¶ Wskazuje, że wcześniej odtwarzany utwór został zatrzymany.
Zwykle jest to spowodowane wstrzymaniem przez użytkownika. Utwór może wrócić do
ON_MEDIA_TRACK_PLAY
, jeśli użytkownik wznowi odtwarzanie.Parametry: - metadane (dict) –
Metadane zatrzymanego utworu. Jeśli pole jest nieznane, nie zostanie uwzględnione. Pola metadanych:
album(str): nazwa albumu, do którego należy utwór; album_art(str): URL okładki albumu; artist(str): wykonawca, który stworzył utwór; duration_ms(double): długość utworu w milisekundach; title(str): tytuł utworu. - position_ms (double) – bieżąca pozycja na zatrzymanym śladzie w milisekundach od początku. Jeśli „metadata.duration_ms” jest nieznane (ustawione na 0), to pole nie będzie ustawione.
- track_type (MediaTrackType) – typ zatrzymanego utworu.
- metadane (dict) –
-
ON_MUTED_CHANGED
= 13¶ Wskazuje, czy Asystent obecnie nasłuchuje.
start()
zawsze wygeneruje wartośćON_MUTED_CHANGED
, aby zgłosić wartość początkową.Parametry: is_muted (bool) – jeśli wartość to True, Asystent nie nasłuchuje obecnie słowa-klucza i nie odpowiada na pytania użytkownika.
-
ON_NO_RESPONSE
= 8¶ Asystent zakończył swoją kolejkę, ale nie ma nic do powiedzenia.
-
ON_RECOGNIZING_SPEECH_FINISHED
= 5¶ Asystent określił ostateczny rozpoznany tekst.
Parametry: text (str) – ostateczna interpretacja tekstu zapytania użytkownika.
-
ON_RENDER_RESPONSE
= 15¶ Wskazuje, że Asystent ma tekst do wyświetlenia w odpowiedzi.
Parametry: - type (RenderResponseType) – typ odpowiedzi do renderowania.
- text (str) – ciąg znaków do wyrenderowania w przypadku RenderResponseType.TEXT.
-
ON_RESPONDING_FINISHED
= 7¶ Asystent skończył odpowiadać głosowo.
-
ON_RESPONDING_STARTED
= 6¶ Asystent zaczyna odpowiadać głosem.
Asystent będzie odpowiadać do momentu otrzymania
ON_RESPONDING_FINISHED
.Parametry: is_error_response (bool) – wartość True oznacza, że odtwarzana jest lokalna usługa TTS. W przeciwnym razie Asystent odpowiada odpowiedzią serwera.
-
ON_START_FINISHED
= 0¶ Biblioteka Asystenta została uruchomiona.
-
-
class
google.assistant.library.event.
IterableEventQueue
(timeout=3600)¶ Rozszerza queue.Queue o dodanie interfejsu
__iter__
.
-
class
google.assistant.library.event.
MediaStateChangeEvent
(event_type, args, **_)¶ Rozszerza zdarzenie o analizę „stanu”.
-
class
google.assistant.library.event.
MediaTrackType
¶ Typy ścieżki dla zdarzeń ON_MEDIA_TRACK_X.
Używane z
ON_MEDIA_TRACK_LOAD
,ON_MEDIA_TRACK_PLAY
iON_MEDIA_TRACK_STOP
-
CONTENT
= 2¶ Rzeczywista treść elementu (wiadomość/podcast).
-
TTS
= 1¶ Wprowadzenie z użyciem syntezy mowy lub reklama przejściowa powiązana z elementem.
-
-
class
google.assistant.library.event.
RenderResponseEvent
(event_type, args, **_)¶ Rozszerza zdarzenie o analizę parametru „response_type”.
-
class
google.assistant.library.event.
RenderResponseType
¶ Typy treści do renderowania.
Używany w:
ON_RENDER_RESPONSE