# Интеграция с WebAPI Для интеграции сторонних клиентов - микрофонов на ESP и проч. есть специальные функции интеграции в webapi Ирины. ## Основные точки (REST HTTP) Вызываются по адресу: http://:port/<точка_вызова> Документация: http://:port/docs, обычно http://localhost:5003/docs Можно найти - sendRawTxt - который принимает распознанный текст и выполняет его (если там есть ключевое слово) - sendSimpleTxtCmd - тупо выполняет команду через плагины - ttsWav - рендерит текст в звук Вторым параметром у sendRawTxt и sendSimpleTxtCmd идет returnFormat, представляет собой строку. Варианты: - none - обработать и вывести звук на сервере - saytxt - вернуть текст на клиент - saywav - вернуть звук на клиент - none,saytxt - звук на сервере, текст на клиент (и прочие комбинации работают) ## Websocket точки - wsmic - получает RAW WAV поток из микрофона 48 кгц, возвращает saytxt,saywav данные Слабо тестировано: - wsmic_48000_none - получает RAW WAV поток из микрофона 48 кгц, выполняет все на сервере. Идеально, если у вас "тонкий микрофон" - wsmic_22050_none - получает RAW WAV поток из микрофона 22 кгц, выполняет все на сервере. Идеально, если у вас "тонкий микрофон" - wsmic_44100_none - получает RAW WAV поток из микрофона 44 кгц, выполняет все на сервере. Идеально, если у вас "тонкий микрофон" - wsrawtext - получает JSON-данные в вебсокет. Ожидаемые элементы JSON-dict: - txt:str - сырой текст (вместе с кодовым словом ассистента или без него; во втором случае текст просто будет пропущен) - returnFormat:str - (опционально) - комбинация none,saytxt,saywav - чтобы знать, что возвращать клиенту. По дефолту - none. - wsrawtextcmd - получает JSON-данные в вебсокет. Ожидаемые элементы JSON-dict: - txt:str - текст команды (то, что идет после имени ассистента) - returnFormat:str - (опционально) - комбинация none,saytxt,saywav - чтобы знать, что возвращать клиенту. По дефолту - none. Пример использования wsmic_ пойнтов в https://github.com/janvarev/Remote-Irene/blob/master/run_remoteva_micrem.py