1 | изначальная версия редактировать | |
Добрый день, господа! Кто-нибудь пробовал сращивать Астериск с Yandex SpeechKit Cloud API в потоковом режиме?
2 | No.2 Revision редактировать |
Добрый день, господа! Кто-нибудь пробовал сращивать Астериск с Yandex SpeechKit Cloud API в потоковом режиме?
Потоковое распознавание
Для обеспечения высокой скорости технология распознавания речи поддерживает режим потокового распознавания с промежуточными результатами. Как только человек начинает говорить, его речь сразу же маленькими частями передается на сервис распознавания.
Потоковое API работает по принципу websocket, но по более простому протоколу. Клиент начинает соединение с http-рукопожатия, посылая:
GET /asr_partial HTTP/1.1\r\n User-Agent:KeepAliveClient\r\n Host: voice-stream.voicetech.yandex.net:80\r\n Upgrade: dictation\r\n\r\n
Далее клиент должен получить от сервера 101: Receive HTTP 101 Switched response. Это означает, что соединение переключилось в дуплексный потоковый режим. В этом режиме обмен данными происходит через сообщения.
Сообщения передаются в следующем формате:
[hex size]\r\n[message body serialized with protobuf]
Сначала размер сообщения в hex виде, затем \r\n, затем сериализованное protobuf-сообщение.
В текущем протоколе от клиента может прийти только ConnectionRequest и далее сообщения AddData. Примечание. Клиент посылает ConnectionRequest, затем AddData, а вычитает сначала ConnectionResponse, а затем по одному AddDataRespons
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.