Использование факсов (spandsp) в Asterisk 11

Опубликовано:

В этой заметке я расскажу как научить asterisk принимать и отправлять факсы с помощью внутренних приложений SendFAX и RecieveFAX. Почему именно эти приложения? Во-первых, они обеспечивают расширенный функционал, а во вторых наиболее стабильную работу.

В данном руководстве будет рассмотрен вариант сборки asterisk с поддержкой модуля spandsp. Для описания установки используется Centos 6.6-i386 и Asterisk 11.7.0

1. Нам понадобится проверенный дистрибутив asterisk с исходными кодами, желательно который уже собирали (что бы не возникло смежных ошибок). Если вам ещё предстоит найти и подготовить исходные тексты asterisk к сборкею.

Итак, скачиваем исходники с сайта

[root@centostest asterisk-11.7.0]# cd /home/user
[root@centostest asterisk-11.7.0 user]# wget http://soft-switch.org/downloads/spandsp/spandsp-0.0.6pre21.tgz

Распаковываем для дальнейшей работы

[root@centostest asterisk-11.7.0 user]# tar -xzvf spandsp-0.0.6pre21.tgz

скорее всего нам понадобятся следующие библиотеки

[root@centostest asterisk-11.7.0 user]# yum install -y libtiff-devel

2. Конфигурируем и собираем модуль

[root@centostest asterisk-11.7.0 user]# cd spandsp-0.0.6
[root@centostest asterisk-11.7.0 spandsp-0.0.6]# ./configure --prefix=/usr/local
[root@centostest asterisk-11.7.0 spandsp-0.0.6]#  make
[root@centostest asterisk-11.7.0 spandsp-0.0.6]#  make install

Для 64-битных систем могут быть нюансы, т.к. там есть две папки с библиотеками lib и lib64, имейте ввиду!

3. Далее нужно указать пути библиотек для системы, вносим некоторые изменения

[root@centostest asterisk-11.7.0 spandsp-0.0.6]# cat > /etc/ld.so.conf.d/spandsp.conf << EOF
/usr/local
/usr/local/lib
EOF

4. Следующим шагом будет сборка asterisk с поддержкой spandsp модуля

[root@centostest asterisk-11.7.0 spandsp-0.0.6]#  cd /home/user/asterisk-11.7.0
[root@centostest asterisk-11.7.0 asterisk-11.7.0]#  make distclean
[root@centostest asterisk-11.7.0 asterisk-11.7.0]# ./configure

запускаем конфигуратор компонентов asterisk

[root@centostest asterisk-11.7.0 asterisk-11.7.0]# make menuselect

в меню Resource Modules необходимо активировать два модуля
[*] res_fax
[*] res_fax_spandsp

Если до этого приложение было собрано корректно, то должна быть возможность выбрать эти модули, поставив около них звездочку.

Нажимаем ESC и выполняем сохранение конфигурации кнопкой S

Выполняем сборку и установку нового asterisk-а, предварительно перед этим выполнив его остановку service asterisk stop

[root@centostest asterisk-11.7.0 asterisk-11.7.0]#  make
[root@centostest asterisk-11.7.0 asterisk-11.7.0]#  make install

5. Запускаем новый Астериск

[root@centostest asterisk-11.7.0 asterisk-11.7.0]#  service asterisk start

заходим консольно

[root@centostest asterisk-11.7.0 asterisk-11.7.0]#  asterisk -rvv

Проверяем, загрузились ли модули

centostest*CLI> fax show capabilities

Нормальным результатом должен быть похожий ответ

Registered FAX Technology Modules:

Type : Spandsp
Description : Spandsp FAX Driver
Capabilities : SEND RECEIVE T.38 G.711 GATEWAY
1 registered modules

Если модули не найдены, попробуйте сначала их загрузить и перегрузить вручную

centostest*CLI> module reload res_fax.so
centostest*CLI> modeule load res_fax_spandsp.so

Понравилась статья, расскажи о ней друзьям, нажми кнопку!