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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

astersay-0.24.2.tar.gz (96.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

astersay-0.24.2-py3-none-any.whl (117.7 kB view details)

Uploaded Python 3

File details

Details for the file astersay-0.24.2.tar.gz.

File metadata

  • Download URL: astersay-0.24.2.tar.gz
  • Upload date:
  • Size: 96.7 kB
  • Tags: Source
  • Uploaded using 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

File hashes

Hashes for astersay-0.24.2.tar.gz
Algorithm Hash digest
SHA256 6f11104644358df6e373abd79ece95e7d77905c129cc2572504120cd1ae31033
MD5 ced55ee97cd1f9a85cebe03a295a1898
BLAKE2b-256 1d98c98e340fed0c269189ecf400aa337ee94aebc2dc848c01c5caeeb9f8fbff

See more details on using hashes here.

File details

Details for the file astersay-0.24.2-py3-none-any.whl.

File metadata

  • Download URL: astersay-0.24.2-py3-none-any.whl
  • Upload date:
  • Size: 117.7 kB
  • Tags: Python 3
  • Uploaded using 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

File hashes

Hashes for astersay-0.24.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bbc94a78aa40efaa0d50035b102a42af95ae58f3bc746a1122689ca914ee7dcd
MD5 41ba54a57d7a84cbd71ad5a7108a046b
BLAKE2b-256 2fb8105def9067090bc6d949ceafbcd9345a8538955139fbf015666834589b82

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.24.2 This release

2 files

0.24.1

2 files

0.24

2 files

0.23.8

2 files

0.23.7

2 files

0.23.6

2 files

0.23.5

2 files

0.23.4

2 files

0.23.3

2 files

0.23.2

2 files

0.23.1

2 files

0.23

2 files

0.22

2 files

0.21.2

2 files

0.21.1

2 files

0.21

2 files

0.20.1

2 files

0.20

2 files

0.19.1

2 files

0.19

2 files

0.18.1

2 files

0.18

2 files

0.17

2 files

0.16.5

2 files

0.16.4

2 files

0.16.2

2 files

0.16.1

2 files

0.16

2 files

0.15.2

2 files

0.15.1

2 files

0.15

2 files

0.14

2 files

0.13

2 files

0.12.2

2 files

0.12.1

2 files

0.12

2 files

0.11.2

2 files

0.11.1

2 files

0.11

2 files

0.10.3

2 files

0.10.2

2 files

0.10.1

2 files

0.10

2 files

0.9

2 files

0.8.5

2 files

0.8.2

2 files

0.8.1

2 files

0.8

2 files

0.7.5

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page