Индекс
-
EmbeddedAssistant
(интерфейс) -
AudioInConfig
(сообщение) -
AudioInConfig.Encoding
(перечисление) -
AudioOut
(сообщение) -
AudioOutConfig
(сообщение) -
AudioOutConfig.Encoding
(перечисление) -
ConverseConfig
(сообщение) -
ConverseRequest
(сообщение) -
ConverseResponse
(сообщение) -
ConverseResponse.EventType
(перечисление) -
ConverseResult
(сообщение) -
ConverseResult.MicrophoneMode
(перечисление) -
ConverseState
(сообщение)
Встроенный помощник
Сервис, реализующий API Google Assistant.
Конверсы | |
---|---|
Инициирует или продолжает разговор со встроенной службой помощника. Каждый вызов выполняет один круговой обход, отправляя звуковой запрос в службу и получая звуковой ответ. Использует двунаправленную потоковую передачу для получения результатов, таких как событие Разговор — это одно или несколько соединений gRPC, каждое из которых состоит из нескольких потоковых запросов и ответов. Например, пользователь говорит «Добавить в мой список покупок» , а помощник отвечает : «Что вы хотите добавить?» . Последовательность потоковых запросов и ответов в первом сообщении gRPC может быть следующей:
Затем пользователь говорит «бублики» , и помощник отвечает : «ОК, я добавил бублики в ваш список покупок» . Это отправляется как еще один вызов соединения gRPC к методу
Хотя точный порядок ответов не гарантируется, последовательные сообщения ConverseResponse.audio_out всегда будут содержать последовательные части аудио.
|
Аудиоинконфиг
Указывает, как обрабатывать данные audio_in
, которые будут предоставлены в последующих запросах. Рекомендуемые настройки см. в рекомендациях по API gRPC Google Assistant.
Поля | |
---|---|
encoding | Обязательное Кодирование аудиоданных, отправляемых во всех сообщениях |
sample_rate_hertz | Требуемая частота дискретизации (в герцах) аудиоданных, отправляемых во всех сообщениях |
Кодирование
Аудиокодирование данных, передаваемых в аудиосообщении. Звук должен быть одноканальным (моно). Единственный поддерживаемый язык — «en-US».
Перечисления | |
---|---|
ENCODING_UNSPECIFIED | Не указан. Вернет результат google.rpc.Code.INVALID_ARGUMENT . |
LINEAR16 | Несжатые 16-битные образцы с прямым порядком байтов (Linear PCM). Эта кодировка не включает заголовок, а только необработанные аудиобайты. |
FLAC | FLAC (бесплатный аудиокодек без потерь) — рекомендуемая кодировка, поскольку она не имеет потерь (поэтому распознавание не подвергается риску) и требует лишь примерно половины пропускной способности LINEAR16 . Эта кодировка включает заголовок потока FLAC , за которым следуют аудиоданные. Он поддерживает 16-битные и 24-битные выборки, однако не все поля в STREAMINFO поддерживаются. |
Аудио выход
Аудио, содержащее ответ помощника на запрос. Последовательные фрагменты аудиоданных принимаются в последовательных сообщениях ConverseResponse
.
Поля | |
---|---|
audio_data | Только для вывода Аудиоданные, содержащие ответ помощника на запрос. Последовательные фрагменты аудиоданных принимаются в последовательных сообщениях |
АудиоВыходКонфиг
Указывает желаемый формат, который сервер будет использовать при возврате сообщений audio_out
.
Поля | |
---|---|
encoding | Обязательное Кодирование аудиоданных, возвращаемых во всех сообщениях |
sample_rate_hertz | Обязательно. Частота дискретизации аудиоданных, возвращаемых в сообщениях |
volume_percentage | Обязательно Текущая настройка громкости аудиовыхода устройства. Допустимые значения: от 1 до 100 (что соответствует от 1% до 100%). |
Кодирование
Аудиокодирование данных, возвращаемых в аудиосообщении. Все кодировки представляют собой необработанные аудиобайты без заголовка, за исключением случаев, указанных ниже.
Перечисления | |
---|---|
ENCODING_UNSPECIFIED | Не указан. Вернет результат google.rpc.Code.INVALID_ARGUMENT . |
LINEAR16 | Несжатые 16-битные образцы с прямым порядком байтов (Linear PCM). |
MP3 | Кодирование звука в формате MP3. Частота дискретизации закодирована в полезных данных. |
OPUS_IN_OGG | Звук в кодировке Opus, завернутый в контейнер ogg. Результатом будет файл, который можно будет воспроизводить на Android и в некоторых браузерах (например, Chrome). Качество кодирования значительно выше, чем у MP3 при использовании того же битрейта. Частота дискретизации закодирована в полезных данных. |
ConverseConfig
Указывает, как обрабатывать сообщения ConverseRequest
.
Поля | |
---|---|
audio_in_config | Обязательно Указывает, как обрабатывать последующий входящий звук. |
audio_out_config | Обязательно Указывает, как форматировать возвращаемый аудиофайл. |
converse_state | Обязательное Представляет текущее состояние диалога. |
Конверсзапрос
Сообщение верхнего уровня, отправленное клиентом. Клиенты должны отправить как минимум два, а обычно множество сообщений ConverseRequest
. Первое сообщение должно содержать сообщение config
и не должно содержать данные audio_in
. Все последующие сообщения должны содержать данные audio_in
и не должны содержать сообщение config
.
Поля | ||
---|---|---|
Поле объединения converse_request . В каждом ConverseRequest должно быть указано ровно одно из этих полей. converse_request может быть только одним из следующих: | ||
config | Сообщение | |
audio_in | Аудиоданные, которые необходимо распознать. Последовательные фрагменты аудиоданных отправляются в последовательных сообщениях |
КонверсОтклик
Сообщение верхнего уровня, полученное клиентом. Серия из одного или нескольких сообщений ConverseResponse
пересылается обратно клиенту.
Поля | ||
---|---|---|
Поле объединения converse_response . В каждом ConverseResponse будет заполнено ровно одно из этих полей. converse_response может быть только одним из следующих: | ||
error | Только вывод. Если установлено, возвращается сообщение | |
event_type | Только вывод Указывает тип события. | |
audio_out | Только вывод Звук, содержащий ответ помощника на запрос. | |
result | Только вывод Семантический результат для устного запроса пользователя. |
Тип события
Указывает тип события.
Перечисления | |
---|---|
EVENT_TYPE_UNSPECIFIED | Событие не указано. |
END_OF_UTTERANCE | Это событие указывает на то, что сервер обнаружил окончание речевого высказывания пользователя и не ожидает дополнительной речи. Поэтому сервер не будет обрабатывать дополнительный звук (хотя впоследствии может вернуть дополнительные результаты). Клиенту следует прекратить отправку дополнительных аудиоданных, наполовину закрыть соединение gRPC и дождаться дополнительных результатов, пока сервер не закроет соединение gRPC. |
КонверсРезультат
Семантический результат речевого запроса пользователя.
Поля | |
---|---|
spoken_request_text | Только вывод Распознанная расшифровка того, что сказал пользователь. |
spoken_response_text | Только вывод Текст устного ответа помощника. Это возвращается только для действия IFTTT. |
conversation_state | Информация о состоянии только для вывода для последующего |
microphone_mode | Только выход Указывает режим микрофона после обработки этого |
volume_percentage | Только вывод Обновленный уровень громкости. Значение будет равно 0 или опущено (что указывает на отсутствие изменений), если не была распознана голосовая команда, такая как «Увеличить громкость» или «Установить уровень громкости 4». В этом случае значение будет находиться в диапазоне от 1 до 100 (соответствует новому уровню громкости). уровень от 1% до 100%). Как правило, клиент должен использовать этот уровень громкости при воспроизведении данных |
Режим микрофона
Возможные состояния микрофона после завершения Converse
RPC.
Перечисления | |
---|---|
MICROPHONE_MODE_UNSPECIFIED | Режим не указан. |
CLOSE_MICROPHONE | Сервис не ожидает дополнительного вопроса от пользователя. Микрофон должен оставаться выключенным до тех пор, пока пользователь не активирует его повторно. |
DIALOG_FOLLOW_ON | Служба ожидает ответного вопроса от пользователя. Микрофон следует снова открыть после завершения воспроизведения AudioOut (путем запуска нового вызова Converse RPC для отправки нового звука). |
Конверсстате
Предоставляет информацию о текущем состоянии диалога.
Поля | |
---|---|
conversation_state | Обязательный. Значение |