пакет google.assistant.library.
- класс
google.assistant.library.
Assistant
( учетные данные , device_model_id ) ¶ Клиент для библиотеки Google Assistant.
Обеспечивает базовые функции управления и управление жизненным циклом Google Assistant. Лучше всего использовать Assistant в качестве
ContextManager
:with Assistant(credentials, device_model_id) as assistant:
Это позволяет базовой реализации правильно управлять памятью.
После вызова метода
start()
Ассистент генерирует поток событий, отражающий различные состояния, в которых в данный момент находится Ассистент, например: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}
См.
EventType
для получения подробной информации обо всех событиях и их аргументах.Глоссарий:
Горячее слово : фраза, которую Ассистент слушает, когда звук не отключен:
"OK Google" OR "Hey Google"
Turn : одиночный запрос пользователя, за которым следует ответ Ассистента.
Разговор : один или несколько ходов, которые приводят к желаемому конечному результату от Ассистента:
"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!"
Параметры: - учетные данные ( google.oauth2.credentials.Credentials ) – учетные данные пользователя Google OAuth2.
- device_model_id ( str ) – идентификатор_модели_устройства, который был зарегистрирован для вашего проекта в Google. Это не должна быть пустая строка.
Поднимает: ValueError
— еслиdevice_model_id
оставлен как None или пуст.-
device_id
¶ Возвращает идентификатор устройства, сгенерированный Ассистентом.
Это значение идентифицирует ваше устройство на сервере при использовании таких служб, как Google Device Actions. Это свойство заполняется только ПОСЛЕ вызова
start()
.Возврат: Идентификатор устройства после вызова start()
, в противном случае — пустая строка.Тип возврата: ул.
-
send_text_query
( запрос ) ¶ Отправляет |запрос| Ассистенту, как будто это произнес пользователь.
Это будет вести себя так же, как если бы пользователь произносил горячее слово и делал запрос ИЛИ произносил ответ на последующий запрос.
Параметры: query ( str ) – текстовый запрос для отправки Помощнику.
-
set_mic_mute
( is_muted ) ¶ Не позволяет Ассистенту прослушивать горячее слово.
Позволяет отключить Ассистенту прослушивание горячего слова. Это обеспечивает функциональность, аналогичную кнопке конфиденциальности на задней панели Google Home.
Этот метод неактивен, если помощник еще не запущен.
Параметры: is_muted ( bool ) — True останавливает прослушивание Ассистента, а False позволяет ему запуститься снова.
start
( ) ¶Запускает Ассистента, который включает в себя прослушивание горячего слова.
После вызова
start()
Ассистент начнет обработку данных из источника звука ALSA «по умолчанию», прослушивая горячее слово. Это также запустит другие службы, предоставляемые Ассистентом, такие как таймеры/будильники. Этот метод можно вызвать только один раз. После вызова Ассистент будет продолжать работать до тех пор, пока не будет вызван__exit__
.Возврат: Очередь событий, уведомляющих об изменениях состояния Ассистента. Тип возврата: google.assistant.event.IterableEventQueue
start_conversation
( ) ¶Вручную начинает новый разговор с Ассистентом.
Начинает запись речи пользователя и отправку ее в Google, аналогично тому, что происходит, когда Ассистент слышит горячее слово.
Этот метод неактивен, если Помощник не запущен или его звук отключен.
-
stop_conversation
( ) ¶ Останавливает любой активный разговор с Ассистентом.
Ассистент может слушать запрос пользователя ИЛИ отвечать. Если нет активного разговора, это пустая операция.
- класс
google.assistant.library.event.
AlertEvent
( event_type , args , **_ ) ¶ Расширяет событие, добавляя синтаксический анализ «alert_type».
- класс
google.assistant.library.event.
AlertType
¶ Типы оповещений.
Используется с событиями
ON_ALERT_STARTED
иON_ALERT_FINISHED
.-
ALARM
= 0 ¶ Событие, установленное на абсолютное время, например «3 часа ночи понедельника».
-
TIMER
= 1 ¶ Событие, установленное на относительное время, например «через 30 секунд».
-
- класс
google.assistant.library.event.
DeviceActionEvent
( event_type , args , **kwargs ) ¶ Расширяет событие, добавляя свойство «действия».
-
actions
¶ Генератор команд для выполнения для текущего устройства.
-
- класс
google.assistant.library.event.
Event
( event_type , args , **_ ) ¶ Событие, созданное Ассистентом.
-
type
¶ EventType — тип сгенерированного события.
-
args
¶ dict — пары ключ/значение аргумента, связанные с этим событием.
- статический
New
( event_type , args , **kwargs ) ¶ При необходимости создайте новое событие, используя специализированный класс Event.
Параметры: - event_type ( int ) – числовой идентификатор, соответствующий событию в google.assistant.event.EventType.
- args ( dict ) — пары ключ/значение аргумента, связанные с этим событием.
- kwargs ( dict ) — необязательные пары ключ/значение аргумента, относящиеся к специализации класса Event для EventType.
-
- класс
google.assistant.library.event.
EventType
¶ Типы событий.
-
ON_ALERT_FINISHED
= 11 ¶ Указывает, что оповещение
alert_type
завершило звучание.Параметры: alert_type ( AlertType ) — идентификатор Enum, представляющий тип только что завершенного оповещения.
-
ON_ALERT_STARTED
= 10 ¶ Указывает на то, что начал звучать сигнал тревоги.
Это оповещение будет продолжаться до тех пор, пока не будет получено
ON_ALERT_FINISHED
с тем же типомalert_type
. В любой момент времени должно быть активно только одно предупреждение.Параметры: alert_type ( AlertType ) — идентификатор Enum, представляющий текущий тип оповещения.
-
ON_ASSISTANT_ERROR
= 12 ¶ Указывает, обнаружила ли библиотека Assistant ошибку.
Параметры: is_fatal ( bool ) — если True, помощник не сможет восстановиться и его следует перезапустить.
-
ON_CONVERSATION_TURN_FINISHED
= 9 ¶ Ассистент завершил текущий ход.
Это включает в себя как обработку запроса пользователя, так и произнесение полного ответа, если таковой имеется.
Параметры: with_follow_on_turn ( bool ) — если True, Ассистент ожидает дальнейшего взаимодействия от пользователя. Микрофон снова откроется, чтобы пользователь мог ответить на дополнительный вопрос.
-
ON_CONVERSATION_TURN_STARTED
= 1 ¶ Указывает на начало нового хода.
В настоящее время Ассистент слушает и ожидает запроса пользователя. Это может быть результатом вызова горячего слова или
start_conversation()
в Ассистенте.
-
ON_CONVERSATION_TURN_TIMEOUT
= 2 ¶ У Ассистента истекло время ожидания заметного запроса.
Это могло быть вызвано неправильным запуском горячего слова или Ассистент не мог понять, что сказал пользователь.
-
ON_DEVICE_ACTION
= 14 ¶ Указывает, что на устройство был отправлен запрос действия устройства .
Это отправляется, если какая-либо грамматика устройства срабатывает для признаков , поддерживаемых устройством. Этот тип события имеет специальное свойство «действия», которое возвращает итератор или команды действия устройства и связанные с ними параметры (если применимо).
Параметры: dict — декодированные полезные данные JSON запроса действия устройства.
-
ON_END_OF_UTTERANCE
= 3 ¶ Ассистент перестал слушать запрос пользователя.
Возможно, Ассистент не закончил понимать, что сказал пользователь, но прекратил прослушивание дополнительных аудиоданных.
-
ON_MEDIA_STATE_ERROR
= 20 ¶ Указывает на то, что при воспроизведении дорожки произошла ошибка.
Встроенный медиаплеер попытается перейти к следующему треку или вернуться к
ON_MEDIA_STATE_IDLE
если больше нечего воспроизводить.
-
ON_MEDIA_STATE_IDLE
= 16 ¶ Указывает, что ничего не воспроизводится и ничего не стоит в очереди на воспроизведение.
Это событие транслируется из встроенного медиаплеера библиотеки Google Assistant для новостей или подкастов при запуске и всякий раз, когда проигрыватель бездействует из-за того, что пользователь остановил воспроизведение мультимедиа или приостановил его, а время ожидания потока истекло.
-
ON_MEDIA_TRACK_LOAD
= 17 ¶ Указывает, что трек загружается, но воспроизведение еще не началось.
Это может быть отправлено несколько раз, если новые метаданные загружаются асинхронно. Обычно за этим следует событие
ON_MEDIA_TRACK_PLAY
Параметры: - метаданные ( dict ) –
Метаданные загруженного трека. К этому времени не все поля будут заполнены – если поле неизвестно, оно не будет включено. Поля метаданных включают в себя:
album(str): Название альбома, которому принадлежит трек. album_art(str): URL-адрес обложки альбома. Artist(str): Исполнитель, создавший этот трек. длительность_мс(двойной): длина этого трека в миллисекундах. title(str): Название трека. - track_type ( MediaTrackType ) – тип загруженной дорожки.
- метаданные ( dict ) –
-
ON_MEDIA_TRACK_PLAY
= 18 ¶ Указывает, что дорожка в данный момент выводит звук.
Это сработает только при переходе из одного состояния в другое, например, из
ON_MEDIA_TRACK_LOAD
илиON_MEDIA_TRACK_STOP
Параметры: - метаданные ( dict ) –
Метаданные воспроизводимого трека. Если поле неизвестно, оно не будет включено. Поля метаданных включают в себя:
album(str): Название альбома, которому принадлежит трек. album_art(str): URL-адрес обложки альбома. Artist(str): Исполнитель, создавший этот трек. длительность_мс(двойной): длина этого трека в миллисекундах. title(str): Название трека. - Position_ms ( double ) — текущая позиция воспроизводимого трека в миллисекундах с начала. Если «metadata.duration_ms» неизвестно (установлено значение 0), это поле не будет установлено.
- track_type ( MediaTrackType ) – тип воспроизводимой дорожки.
- метаданные ( dict ) –
-
ON_MEDIA_TRACK_STOP
= 19 ¶ Указывает, что воспроизведение предыдущей дорожки остановлено.
Обычно это является результатом паузы пользователя; дорожка может вернуться в состояние
ON_MEDIA_TRACK_PLAY
, если она возобновлена пользователем.Параметры: - метаданные ( dict ) –
Метаданные остановленного трека. Если поле неизвестно, оно не будет включено. Поля метаданных включают в себя:
album(str): Название альбома, которому принадлежит трек. album_art(str): URL-адрес обложки альбома. Artist(str): Исполнитель, создавший этот трек. длительность_мс(двойной): длина этого трека в миллисекундах. title(str): Название трека. - Position_ms ( double ) — текущая позиция на остановленном треке в миллисекундах с начала. Если «metadata.duration_ms» неизвестно (установлено значение 0), это поле не будет установлено.
- track_type ( MediaTrackType ) – тип остановленной дорожки.
- метаданные ( dict ) –
-
ON_MUTED_CHANGED
= 13 ¶ Указывает, слушает ли в данный момент Ассистент или нет.
start()
всегда будет генерироватьON_MUTED_CHANGED
, чтобы сообщить начальное значение.Параметры: is_muted ( bool ) — если True, то помощник в данный момент не прослушивает свое горячее слово и не будет отвечать на запросы пользователей.
-
ON_NO_RESPONSE
= 8 ¶ Ассистент успешно завершил свой ход, но ему нечего сказать.
-
ON_RECOGNIZING_SPEECH_FINISHED
= 5 ¶ Ассистент определил окончательную распознаваемую речь.
Параметры: text ( str ) — окончательная текстовая интерпретация запроса пользователя.
-
ON_RENDER_RESPONSE
= 15 ¶ Указывает, что помощник имеет текстовый вывод для ответа.
Параметры: - тип ( RenderResponseType ) — тип ответа на рендеринг.
- text ( str ) – строка для рендеринга для RenderResponseType.TEXT.
ON_RESPONDING_FINISHED
= 7 ¶Ассистент закончил отвечать голосом.
-
ON_RESPONDING_STARTED
= 6 ¶ Ассистент начинает отвечать голосом.
Ассистент будет отвечать до тех пор, пока не будет получено
ON_RESPONDING_FINISHED
.Параметры: is_error_response ( bool ) — значение True означает, что воспроизводится TTS с локальной ошибкой, в противном случае Помощник отвечает ответом сервера.
ON_START_FINISHED
= 0 ¶Библиотека Ассистента завершила запуск.
-
- класс
google.assistant.library.event.
IterableEventQueue
( timeout=3600 ) ¶ Расширяет очередь.Queue для добавления интерфейса
__iter__
.
- класс
google.assistant.library.event.
MediaStateChangeEvent
( event_type , args , **_ ) ¶ Расширяет событие, добавляя анализ «состояния».
- класс
google.assistant.library.event.
MediaTrackType
¶ Типы треков для событий ON_MEDIA_TRACK_X.
Используется с
ON_MEDIA_TRACK_LOAD
,ON_MEDIA_TRACK_PLAY
иON_MEDIA_TRACK_STOP
.-
CONTENT
= 2 ¶ Фактический контент элемента (новости/подкаст).
-
TTS
= 1 ¶ Вступительная часть TTS или промежуточная дорожка, связанная с элементом.
-
- класс
google.assistant.library.event.
RenderResponseEvent
( event_type , args , **_ ) ¶ Расширяет событие, добавляя синтаксический анализ «типа_ответа».
- класс
google.assistant.library.event.
RenderResponseType
¶ Типы контента для рендеринга.
Используется с
ON_RENDER_RESPONSE