Внимание!
Эта wiki об устаревших версиях
Документация к актуальной версии интеграции 1С и телефонии доступна по ссылке

Инструменты пользователя

Инструменты сайта


astpanel:ats:asterisk:faxsend

Настройка дополнительного диалплана для отправки факсимильного сообщения из 1С

Для отправки факсимильного сообщения из 1C, нам необходимо также дописать в диалплан mikoajamdll дополнительные строки:

extensions_miko.conf
[miko_ajam]
exten => 0000333,1,Answer() 
exten => 0000333,n,Playback(custom/press_start_to_receive_a_fax)
exten => 0000333,n,Wait(1)
exten => 0000333,n,Playback(vm-goodbye) 
exten => 0000333,n,Set(input_path=${ASTSPOOLDIR}/uploads/) 
exten => 0000333,n,Set(outbox_path=${ASTSPOOLDIR}/fax/)
exten => 0000333,n,Set(CDR(clid=${faxcallerid}))
exten => 0000333,n,System( gs -q -dNOPAUSE -dBATCH -sDEVICE=tiffg4 -sPAPERSIZE=a4 -g1680x2285 -sOutputFile=${outbox_path}${faxfile}.tif ${input_path}${faxfile}.pdf)  ;//add /etc/sudoers folowing asterisk ALL = NOPASSWD: ALL
exten => 0000333,n,System( rm ${input_path}${faxfile}.pdf) 
exten => 0000333,n,SendFAX(${outbox_path}${faxfile}.tif) 
exten => 0000333,n,ExecIf($[${FAXSTATUS}=SUCCESS]?Set(CDR(userfield)=${faxfile}.pdf))
exten => 0000333,n,ExecIf($[${FAXSTATUS}=SUCCESS]?UserEvent(SendFaxStatusOk,Channel: ${chan},CallerID: ${faxcallerid}))
exten => 0000333,n,ExecIf($[${FAXSTATUS}!=SUCCESS]?UserEvent(SendFaxStatusFail,Channel: ${chan},CallerID: ${faxcallerid}))
exten => 0000333,n,Hangup()

Asterisk умеет отправлять факсимильные сообщения подготовленные в графическом формате TIFF. В данном скрипте используется конвертер Ghostscript установленный на сервере Asterisk, можно использовать Windows версию Ghostscript, тогда конвертацию файла нужно будет делать до отправки на Asterisk. Конвертер позволяет преобразовывать файлы PDF в TIFF.

При использовании конвертации в Windows диалплан будет выглядеть так:

extensions_miko.conf
[miko_ajam]
exten => 0000999,1,NoCDR()
exten => 0000999,n,Answer()
exten => 0000999,n,Wait(60)
exten => 0000999,n,Hangup()

exten => 0000333,1,Answer() 
exten => 0000333,n,Playback(custom/press_start_to_receive_a_fax)
exten => 0000333,n,Wait(1)
exten => 0000333,n,Playback(vm-goodbye)
exten => 0000333,n,Set(outbox_path=${ASTSPOOLDIR}/fax/)
exten => 0000333,n,SendFAX(${outbox_path}${faxfile}.tif) 
exten => 0000333,n,ExecIf($[${FAXSTATUS}=SUCCESS]?Set(CDR(userfield)=${faxfile}.pdf))
exten => 0000333,n,ExecIf($[${FAXSTATUS}=SUCCESS]?UserEvent(SendFaxStatusOk,Channel: ${chan},CallerID: ${faxcallerid}))
exten => 0000333,n,ExecIf($[${FAXSTATUS}!=SUCCESS]?UserEvent(SendFaxStatusFail,Channel: ${chan},CallerID: ${faxcallerid}))
exten => 0000333,n,Hangup()
Готовые файлы скриптов лежат в дистрибутиве поставки панели Asterisk для 1C

Для передачи файла факса из 1С в Asterisk используется механизм описанный в блоге Игоря Гончаровского.

Для проверки вашей АТС на возможность принимать файлы с помощью POST запроса используйте этот пакет.

Полезные ссылки

Комментарии

astpanel/ats/asterisk/faxsend.txt · Последние изменения: 2014/11/14 22:32 (внешнее изменение)