...

суббота, 28 сентября 2013 г.

[Из песочницы] Отправка факсов из User Panel во FreePBX


Привет, хабр!

Электронная почта давно является основным способом обмена документами. Но после того, как я заменил во многих организациях в моем городе старые сименсы и панасы на Asterisk PBX, сталкивался с нежеланием отказываться от факсов(особенно в бюджетных организациях), и понятно — это быстрее и проще для сотрудника, чем возиться со сканером. Так как астер они ставили в основном вследствие расширения штата и с желанием сэкономить, то факсы для новых сотрудников необходимо также виртуализировать. С приемом факса на e-mail проблем возникнуть не должно, с простым и бесплатным способом отправки пришлось поломать голову.


На просторах интернета нашел простой способ отправки факса через веб-интерфейс FreePBX. Несложно настроить, работает на ура. Для активного использования факсов в крупном офисе вряд ли подойдет, но для небольшого офиса с небольшим факсовым трафиком или для новичков в астере или *nix — в самый раз.


Мы имеем виртуальную машина в небольшом офисе с Ubuntu 12.04 на борту. Установлен Asterisk 11 + FreePBX 2.11. Логинимся по ssh на сервер и приступаем.


1. Устанавливаем модуль факса.



Регистрируемся на сайте Digium, идем на страницу модуля, жмем «Get 1 Free license» оформляем заказ, ждем письмо с кодом.

Отсюда скачиваем утилиту для регистрации нашего модуля, кладем в /tmp, отмечаем выполнение для владельца и запускаем.

cd /tmp
wget http://downloads.digium.com/pub/register/x86-32/register
chmod 500 register
./register




Вы увидите текстовое меню с приглашением для ввода:

Digium Product Registration - Version 3.0.5
Copyright (C) 2004-2007, Digium, Inc.
Use the '-l' option to see license information for software
included in this program.

Please select a category

1 - Digium Products
2 - Cepstral Products

0 - Quit

Your Choice:




Выбираем 1, затем 9, вводите ключ, который пришел на почту, соглашаетесь и заполняете данные.

Сам модуль берем тут, выбираем версию под свой сервер, забираем по ссылке внизу, распаковываем и кладем res_fax_digium.so в ваш ${ASTMODDIR}. Например, у меня

cd /tmp
wget http://downloads.digium.com/pub/telephony/fax/res_fax_digium/asterisk-11.0/x86-64/res_fax_digium-11.0_1.3.1-generic_64.tar.gz
tar -xvf res_fax_digium*
cd res_fax_digium*
cp res_fax_digium.so /usr/lib/asterisk/modules/




2. Скачаем нужные нам файлы и распакуем их во временный каталог.


cd /tmp && wget http://faxgui-ari-module.googlecode.com/files/faxgui-ari-module.tar.gz && tar xvf webfax-ari-module.tar.gz




3. Копируем все на свои места и устаналиваем права.


cp faxgui-ari-module/sendfax.module /var/www/recordings/modules/ # проверьте ваш параметр %AMPROOT%
cp faxgui-ari-module/sendfaxnotify.php /var/lib/asterisk/bin/ # проверьте ваш параметр ${ASTVARLIBDIR}
chown asterisk:asterisk /var/www/recordings/modules/sendfax.module
chown asterisk:asterisk /var/lib/asterisk/bin/sendfaxnotify.php




3. Создаем контекст для исходящих факсов в файле /etc/asterisk/extensions_custom.conf.


[outboundfax]
exten => s,1,Set(FAXOPT(filename)=${FAXFILE})
exten => s,n,Set(FAXOPT(ecm)=yes)
exten => s,n,Set(FAXOPT(headerinfo)=${FAXHEADER})
exten => s,n,Set(FAXOPT(localstationid)=${LOCALID})
exten => s,n,Set(FAXOPT(maxrate)=14400)
exten => s,n,Set(FAXOPT(minrate)=2400)
exten => s,n,SendFAX(${FAXFILE},d)
exten => s,n,System(${ASTVARLIBDIR}/bin/sendfaxnotify.php INIT "${EMAIL}" "${DESTINATION}" "${TIMESTAMP}" "NO_STATUS" "NO_PAGES")
exten => h,1,NoOp(FAXOPT(ecm) : ${FAXOPT(ecm)})
exten => h,n,NoOp(FaxStatus : ${FAXSTATUS})
exten => h,n,NoOp(FaxStatusString : ${FAXSTATUSSTRING})
exten => h,n,NoOp(FaxError : ${FAXERROR})
exten => h,n,NoOp(RemoteStationID : ${REMOTESTATIONID})
exten => h,n,NoOp(FaxPages : ${FAXPAGES})
exten => h,n,NoOp(FaxBitRate : ${FAXBITRATE})
exten => h,n,NoOp(FaxResolution : ${FAXRESOLUTION})
exten => h,n,System(${ASTVARLIBDIR}/bin/sendfaxnotify.php NOTIFY "${EMAIL}" "${DESTINATION}" "${TIMESTAMP}" "${FAXSTATUSSTRING}" "${FAXPAGES}")
; end of outboundfax context




3. Перезапуск и проверка.


amportal restart




Идем в User Panel нашего сервера, ip_aster/recordings/, входим под любым пользователем, вводим пароль от голосовой почты. Слева появился пункт Send Fax. Проверяем отправку.


Для удобства и скорости обучения пользователей я отметил алгоритм отправки цифрами, так намного понятнее.


Вот и все, надеюсь, мой пост помог кому-либо с настройкой VoIP-сервера.

В будущем планирую регулярно описывать такие небольшие и тонкие моменты с настройкой.


При написании статьи были использованы материалы:


hiousi.tumblr.com/post/2745684940/a-freepbx-ari-module-to-send-fax-from-the-user-portal

trentdev.blogspot.ru/2013/04/send-fax-using-asteriskfreepbx-with.html

www.digium.com/en/products/software/fax-for-asterisk

wiki.freepbx.org/display/ST/Faxing+and+T38


This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at fivefilters.org/content-only/faq.php#publishers. Five Filters recommends:



Комментариев нет:

Отправить комментарий