PDF file into TIFF format using following shell command:-
gs -dNOPAUSE -q -sDEVICE=tiffg4 -dBATCH -sOutputFile=/tmp/filename.pdf /tmp/fax/filename.tiff
The command which is used to send or receive fax are as follows:-
ReceiveFAX
SendFAX
You can detect whether the call is a fax call or not by configuring faxdetect = both in chan_dahdi.conf, It will auto route the call to fax extension. example for receiving fax:-
exten => _X.,1,NoOp(hello world) exten => _X.,n,wait(6) exten => fax,1,Verbose(got a Fax on ${EXTEN}) exten => fax,n,NoOp(**** FAX RECEIVE ****) exten => fax,n,Set(GLOBAL(FAXCOUNT)=$[ ${GLOBAL(FAXCOUNT)} + 1 ]) exten => fax,n,Set(FAXCOUNT=${GLOBAL(FAXCOUNT)}) exten => fax,n,Set(FAXFILE=fax-${FAXCOUNT}-rx.tif) exten => fax,n,Set(GLOBAL(LASTFAXCALLERNUM)=${CALLERID(num)}) exten => fax,n,Set(GLOBAL(LASTFAXCALLERNAME)=${CALLERID(name)}) exten => fax,n,NoOp(**** SETTING FAXOPT ****) exten => fax,n,Set(FAXOPT(ecm)=yes) exten => fax,n,Set(FAXOPT(headerinfo)=MY FAXBACK RX) exten => fax,n,Set(FAXOPT(localstationid)=1234567890) exten => fax,n,Set(FAXOPT(maxrate)=14400) exten => fax,n,Set(FAXOPT(minrate)=2400) exten => fax,n,NoOp(FAXOPT(ecm) : ${FAXOPT(ecm)}) exten => fax,n,NoOp(FAXOPT(headerinfo) : ${FAXOPT(headerinfo)}) exten => fax,n,NoOp(FAXOPT(localstationid) : ${FAXOPT(localstationid)}) exten => fax,n,NoOp(FAXOPT(maxrate) : ${FAXOPT(maxrate)}) exten => fax,n,NoOp(FAXOPT(minrate) : ${FAXOPT(minrate)}) exten => fax,n,NoOp(**** RECEIVING FAX : ${FAXFILE} ****) exten => fax,n,ReceiveFAX(/var/spool/asterisk/fax/${FAXFILE}) Example for sending fax:- exten => _X.,1,NoOp(hello world) exten => _X.,n,wait(6) exten => _X.,n,Set(FAXFILE=${TIFF_2_SEND}) exten => _X.,n,NoOp(**** SETTING FAXOPT ****) exten => _X.,n,Set(FAXOPT(ecm)=yes) exten => _X.,n,Set(FAXOPT(headerinfo)=${TAGLINE}) exten => _X.,n,Set(FAXOPT(maxrate)=14400) exten => _X.,n,Set(FAXOPT(minrate)=2400) exten => _X.,n,NoOp(**** SENDING FAX : ${FAXFILE} ****) exten => _X.,n,SendFAX(${FAXFILE},dfzs) exten => h,1,NoOp(FaxStatus : ${FAXSTATUS}) exten => h,1,NoOp(FAXOPT(ecm) : ${FAXOPT(ecm)}) exten => h,n,NoOp(FAXOPT(filename) : ${FAXOPT(filename)}) exten => h,n,NoOp(FAXOPT(headerinfo) : ${FAXOPT(headerinfo)}) exten => h,n,NoOp(FAXOPT(localstationid) : ${FAXOPT(localstationid)}) exten => h,n,NoOp(FAXOPT(maxrate) : ${FAXOPT(maxrate)}) exten => h,n,NoOp(FAXOPT(minrate) : ${FAXOPT(minrate)}) exten => h,n,NoOp(FAXOPT(pages) : ${FAXOPT(pages)}) exten => h,n,NoOp(FAXOPT(rate) : ${FAXOPT(rate)}) exten => h,n,NoOp(FAXOPT(remotestationid) : ${FAXOPT(remotestationid)}) exten => h,n,NoOp(FAXOPT(resolution) : ${FAXOPT(resolution)}) exten => h,n,NoOp(FAXOPT(status) : ${FAXOPT(status)}) exten => h,n,NoOp(FAXOPT(statusstr) : ${FAXOPT(statusstr)}) exten => h,n,NoOp(FAXOPT(error) : ${FAXOPT(error)}) exten => h,n,NoOp(DNIS: ${RECEIVER})
发表评论