Skip to main content

Набор приложений и Python-библиотека для работы Asterisk с различными голосовыми моделями. Пакет устанавливает в систему 4 запускаемых приложения:

  1. astersay - скрипт инициализации рабочего каталога.

  2. astersay-cgi - CGI(AGI) для прямого указания в диалплане астериска.

  3. astersay-dev - эмулятор AGI для разработки диалогов в интерактивном режиме без участия Asterisk.

  4. astersay-t2v - консольная команда для конвертации “text-to-voice”, возвращает на stdout путь к файлу голоса без его расширения.

Поддерживаемые бэкэнды

Распознавание:

  1. astersay.backends.yandex.YandexRecognizer

  2. astersay.backends.vosk.VoskRecognizer

  3. astersay.backends.tinkoff.TinkoffRecognizer

Синтез речи:

  1. astersay.backends.yandex.YandexSynthesizer

  2. astersay.backends.tinkoff.TinkoffSynthesizer

По мере развития проекта эти списки будут увеличиваться.

Установка

Для продакшн-серверов с Asterisk:

pip3 install astersay

Для разработки диалогов и работы виртуального сервера DummyAsterisk необходим PyAudio. Для его установки нужно предварительно в системе иметь dev-пакеты.

Для Debian-based:

sudo apt install gcc portaudio19-dev
pip3 install astersay[dev]

Для RedHat-based:

sudo yum install gcc portaudio-devel
pip3 install astersay[dev]

Настройка

Проинициализируйте рабочий каталог от пользователя, запускающего Asterisk на сервере или пользователя, которым будет вестись разработка диалогов. Заметьте, что права на запись в этот каталог у пользователя должны быть. Рабочий каталог по-умолчанию: ~/.config/astersay.

astersay
# или
astersay -w /var/custom-work-directory

Подробное описание настройки бекендов - https://gitlab.com/djbaldey/asterisk-dialogs/-/wikis/Backends-Setup

После конфигурации бекендов проверьте готовность к работе.

astersay --check

Вывод в консоли скажет о готовности.

Использование в диалплане

Для использования в диалплане для AGI получите полный путь к cgi-скрипту для своей системы.

which astersay-cgi

Полученный путь укажите в диалплане как AGI-программу. Для неё есть 2 необязательных параметра:

  1. Название модели далога.

  2. Путь к рабочему каталогу.

Консольная конвертация

Без запуска Asterisk на любом компьютере возможна конвертация текста в WAV-файлы. Для этого передайте команде “Text-To-Voice” текст одним из следующих способов:

astersay-t2v -t "Мой текст с пробелами."
astersay-t2v -f text.txt
astersay-t2v -f text.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 -m first_dialog
# или
astersay-dev -m ~/.config/astersay/dialogs/first_dialog.json
# или
astersay-dev -m first_dialog -w /var/custom-work-directory
# или
astersay-dev -m subdir/first_dialog -w /var/custom-work-directory

Расширение ‘.json’ можно не указывать.

Заметьте, что эмулятор отображает только ход процесса AGI, а не логгирует ошибки и информацию из диалога. Для отображения лог-файлов используйте консольную утилиту tail:

tail -f /var/custom-work-directory/logs/*.log

Release files for astersay 0.24.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for astersay 0.24.2
File Size Uploaded
astersay-0.24.2.tar.gz 96.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for astersay 0.24.2
File Interpreter ABI Platform
astersay-0.24.2-py3-none-any.whl Python 3 none any Details

Total release size: 214.4 kB

Release files / astersay-0.24.2.tar.gz

Download URL astersay-0.24.2.tar.gz
Size 96.7 kB
Tags Source
SHA-256 checksum
How to use checksums
6f11104644358df6e373abd79ece95e7d77905c129cc2572504120cd1ae31033
BLAKE2b-256 checksum
How to use checksums
1d98c98e340fed0c269189ecf400aa337ee94aebc2dc848c01c5caeeb9f8fbff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.2

Release files / astersay-0.24.2-py3-none-any.whl

Download URL astersay-0.24.2-py3-none-any.whl
Size 117.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bbc94a78aa40efaa0d50035b102a42af95ae58f3bc746a1122689ca914ee7dcd
BLAKE2b-256 checksum
How to use checksums
2fb8105def9067090bc6d949ceafbcd9345a8538955139fbf015666834589b82
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.2

Release history Release notifications | RSS feed

This release

0.24.2 This release

2 release files

0.24.1

2 release files

0.24

2 release files

0.23.7

2 release files

0.23.6

2 release files

0.23.5

2 release files

0.23.4

2 release files

0.23.3

2 release files

0.23.1

2 release files

0.23

2 release files

0.22

2 release files

0.21.2

2 release files

0.21.1

2 release files

0.21

2 release files

0.20

2 release files

0.19

2 release files

0.18.1

2 release files

0.18

2 release files

0.17

2 release files

0.16.5

2 release files

0.16.4

2 release files

0.16.2

2 release files

0.16.1

2 release files

0.16

2 release files

0.15

2 release files

0.14

2 release files

0.13

2 release files

0.12.2

2 release files

0.12.1

2 release files

0.12

2 release files

0.11.2

2 release files

0.11.1

2 release files

0.11

2 release files

0.10.3

2 release files

0.10.2

2 release files

0.10.1

2 release files

0.10

2 release files

0.9

2 release files

0.8.5

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8

2 release files

0.7.5

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page