Package: astersay
Набор приложений и Python-библиотека для работы Asterisk с различными
голосовыми моделями. Пакет устанавливает в систему 4 запускаемых приложения:astersay- скрипт инициализации рабочего каталога.astersay-cgi- CGI(AGI) для прямого указания в диалплане астериска.astersay-dev- эмулятор AGI для разработки диалогов в интерактивном
режиме без участия Asterisk.astersay-t2v- консольная команда для конвертации “text-to-voice”,
возвращает на stdout путь к файлу голоса без его расширения.Поддерживаемые бэкэндыРаспознавание:astersay.backends.yandex.YandexRecognizerastersay.backends.vosk.VoskRecognizerastersay.backends.tinkoff.TinkoffRecognizerСинтез речи:astersay.backends.yandex.YandexSynthesizerastersay.backends.tinkoff.TinkoffSynthesizerПо мере развития проекта эти списки будут увеличиваться.УстановкаДля продакшн-серверов с Asterisk:pip3installastersayДля разработки диалогов и работы виртуального сервера DummyAsterisk необходим
PyAudio. Для его установки нужно предварительно в системе иметь dev-пакеты.Для Debian-based:sudoaptinstallgccportaudio19-devpip3installastersay[dev]Для RedHat-based:sudoyuminstallgccportaudio-develpip3installastersay[dev]НастройкаПроинициализируйте рабочий каталог от пользователя, запускающего Asterisk
на сервере или пользователя, которым будет вестись разработка диалогов.
Заметьте, что права на запись в этот каталог у пользователя должны быть.
Рабочий каталог по-умолчанию:~/.config/astersay.astersay# илиastersay-w/var/custom-work-directoryПодробное описание настройки бекендов -https://gitlab.com/djbaldey/asterisk-dialogs/-/wikis/Backends-SetupПосле конфигурации бекендов проверьте готовность к работе.astersay--checkВывод в консоли скажет о готовности.Использование в диалпланеДля использования в диалплане для AGI получите полный путь к cgi-скрипту для
своей системы.whichastersay-cgiПолученный путь укажите в диалплане как AGI-программу. Для неё есть 2
необязательных параметра:Название модели далога.Путь к рабочему каталогу.Консольная конвертацияБез запуска Asterisk на любом компьютере возможна конвертация текста в
WAV-файлы. Для этого передайте команде “Text-To-Voice” текст одним из
следующих способов:astersay-t2v-t"Мой текст с пробелами."astersay-t2v-ftext.txtastersay-t2v-ftext.txt-w/var/custom-work-directoryВ выводе будет путь к голосовому файлу без расширения.Для вывода справки по параметрам запустите:astersay-t2v--helpРазработка диалоговЗапуск эмуляции Asterisk позволяет разрабатывать диалоги без реального сервера.
Для этого запустите интерактивный режим командой:astersay-devОстановите программу клавишами:Ctrl+C.Для вывода справки по параметрам запустите:astersay-dev--helpНайдите в рабочем каталоге файлdialogs/default.json, скопируйте его под
другим именем в тот же каталог, например вdialogs/first_dialog.jsonилиdialogs/subdir/first_dialog.json, и отредактируйте под свои нужды.Запустите свой диалог так:astersay-dev-mfirst_dialog# илиastersay-dev-m~/.config/astersay/dialogs/first_dialog.json# илиastersay-dev-mfirst_dialog-w/var/custom-work-directory# илиastersay-dev-msubdir/first_dialog-w/var/custom-work-directoryРасширение ‘.json’ можно не указывать.Заметьте, что эмулятор отображает только ход процесса AGI, а не логгирует
ошибки и информацию из диалога. Для отображения лог-файлов используйте
консольную утилитуtail:tail-f/var/custom-work-directory/logs/*.log