Операции отложенного распознавания речи
Сервисы
Operations
| Название метода | Тип запроса | Тип ответа | Описание |
|---|---|---|---|
| GetOperation | GetOperationRequest | Operation | Возвращает информацию о состоянии операции по её идентификатору. Может вернуть gRPC-ошибку со статусом NotFound, если запрошенная операция не существует. |
| WaitOperation | WaitOperationRequest | Operation | Дожидается первого изменения состояния операции с момента отправки запроса и возвращает её новое состояние. |
| ListOperations | ListOperationsRequest | ListOperationsResponse | Возвращает список операций и их текущее состояние по заданным условиям. |
| WatchOperations | WatchOperationsRequest | WatchOperationsResponse | Отслеживает состояние операций, позволяет получить актуальный список состояний операций и события с изменениями их состояний в рамках одного стрима. |
| DeleteOperation | DeleteOperationRequest | google.protobuf.Empty | Удаляет и асинхронно отменяет обработку операций, подпадающих под фильтр. После успешного вызова метода методы работы с указанными операциями будут считать, что операции не существуют. Это означает, что отследить факт реальной остановки операции будет невозможно. |
| CancelOperation | CancelOperationRequest | google.protobuf.Empty | Асинхронно отменяет операцию. Отменённая операция переходит в состояние FAILED.Если операция находится в обработке, она перейдёт в FAILED только после реальной остановки обработки.С завершившимися операциями ничего не происходит. |
Перечисления
OperationState
Состояние операции.
| Имя | Описание |
|---|---|
| ENQUEUED | Операция находится в очереди и её обработка ещё не начата. |
| PROCESSING | Операция в данный момент обрабатывается. |
| DONE | Операция завершена успешно. |
| FAILED | Операция была завершена с ошибкой или отменена. |
Сообщения
CancelOperationRequest
Запрос на отмену операций для метода CancelOperation.
Сейчас поддерживается только вариант с явным указанием ID операции в поле filter.
| Поле | Тип | Описание |
|---|---|---|
| filter | OperationFilter | Фильтр операций. |
DeleteOperationRequest
Запрос на удаление операций для метода DeleteOperation.
Сейчас поддерживается только вариант с явным указанием ID операции в поле filter.
| Поле | Тип | Описание |
|---|---|---|
| filter | OperationFilter | Фильтр операций. |
GetOperationRequest
Запрос информации об операции для метода GetOperation.
| Поле | Тип | Описание |
|---|---|---|
| id | string | Идентификатор операции. |
ListOperationsRequest
Запрос на получение информации о состоянии множества операций для метода ListOperations.
| Поле | Тип | Описание |
|---|---|---|
| filter | OperationFilter | Фильтр операций. |
| page_size | int32 | Максимальное количество операций, которое возвращается за один вызов. Если операции, подпадающие под фильтр, не умещаются в одну страницу, в ответе вернется токен для получения следующей страницы операций. |
| page_token | string | Токен страницы для постраничной выборки списка операций. Передавайте значение поля next_page_token из ListOperationsResponse.Если значение не пустое, остальные поля сообщения игнорируются. |
ListOperationsResponse
Список операций, которые возвращаются в методе ListOperations.
| Поле | Тип | Описание |
|---|---|---|
| operations | Operation | Список операций. |
| next_page_token | string | Токен для получения следующей страницы операций. Заполняется для всех страниц кроме последней. |
Operation
Операция.
Статус операций можно отслеживать через сервис Operations.
| Поле | Тип | Описание |
|---|---|---|
| id | string | Идентификатор операции, назначается сервисом при создании операции. Идентификаторы операций уникальны для одного API_KEY. |
| group | string | Группа, которая была назначена операции при создании. |
| state | OperationState | Состояние, в котором находится операция. |
| error | google.rpc.Status | Ошибка, произошедшая при обработке операции. Заполняется при статусе FAILED. |
| response | google.protobuf.Any | Результат выполнения операции. Заполняется при статусе DONE.Для сервиса распознавания аудио результатом является RecognizeResponse. |
| x_client_request_id | string | Метаполе x-client-request-id, указанное при создании операции. |
OperationFilter
Фильтр операций.
Описывает множество операций, которое должно быть обработано в рамках различных вызовов.
Для корректного запроса должно соблюдаться хотя бы одно из правил:
- поле
idзадано какexact_id; - поле
groupзадано какexact_group; - все три поля
service_id,idиgroupзаданы.
| Поле | Тип | Описание |
|---|---|---|
| exact_service_id | string | Идентификатор сервиса, чьи операции должны подпадать под фильтр. Название сервиса для сервиса распознавания аудио — stt. |
| any_service_id | google.protobuf.Empty | Разрешить операции любого сервиса. |
| exact_id | string | Идентификатор операции. |
| any_id | google.protobuf.Empty | Разрешить любой идентификатор операции. |
| exact_group | string | Название группы, операции которой должны подпадать под фильтр. |
| any_group | google.protobuf.Empty | Разрешить любую группу. |
OperationsInitialState
Исходное состояние операций.
| Поле | Тип | Описание |
|---|---|---|
| operations | Operation | Список операций. |
OperationsUpdate
Изменение состояния одной или нескольких операций.
| Поле | Тип | Описание |
|---|---|---|
| operations | Operation | Список операций. |
WaitOperationRequest
Запрос на ожидание изменения состояния операции информации об операции для метода WaitOperation.
| Поле | Тип | Описание |
|---|---|---|
| id | string | Идентификатор операции. |
| timeout | google.protobuf.Duration | Максимальное время ожидания изменения состояния операции. Если не заполнено, время не ожидания будет ограничено таймаутом вызова, допускаемым HTTP/gRPC протоколами. |
WatchOperationsRequest
Запрос на мониторинг статуса операций для метода WatchOperations.
| Поле | Тип | Описание |
|---|---|---|
| filter | OperationFilter | Фильтр операций. |
| listen_for_updates | bool | Включает режим подписки на все новые события с операциями, которые заданы фильтром. |
WatchOperationsResponse
Сообщение, которое приходит в стриме в ответе метода WatchOperations.
В каждом сообщении заполняется только одно из перечисленных полей.
В начале ответа приходят сообщения с заполненным полем initial_state.
После этого присылается одно сообщение с заполненным полем init_finished, означающее, что информация об исходном
состоянии передана полностью.
Далее сервер переходит в режим ожидания изменений
в операциях, подпадающих под фильтр, если в запросе передали listen_for_updates. Такие изменения присылаются
в виде сообщений с заполненным полем update.
| Поле | Тип | Описание |
|---|---|---|
| initial_state | OperationsInitialState | Описание исходного состояния операций. |
| init_finished | google.protobuf.Empty | Признак, что вся информация об исходном состоянии была передана. |
| update | OperationsUpdate | Описание нового состояния изменившихся операций. |