Индекс
-  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(путем запуска нового вызоваConverseRPC для отправки нового звука). | 
Конверсстате
Предоставляет информацию о текущем состоянии диалога.
| Поля | |
|---|---|
| conversation_state |    Обязательный. Значение  | 
