[Asterisk-Users] Preserving received digits during a fax match?
Kris Boutilier
Kris.Boutilier at scrd.bc.ca
Thu Jun 3 00:26:41 MST 2004
I have a set of analog DID lines coming into my Asterisk box, via a channel
bank. The numbers in the DID bank route to various places, including voice
lines of various staff. I am using the fax detection engine to intercept
faxes accidentially sent to numbers on the DID bank and reroute them to a
physical fax set up in the office. I would now like to preserve the received
digits and pass them through to a 'faxhandler' section for reuse (ie. in
routing some faxes to email via hylafax, others still to go to the fax
machine). My inital approach was to try:
exten => fax,1,Goto(outto-faxhandler,${EXTEN},1) ; If asterisk
detects a fax, deal with it
with
[outto-faxhandler]
exten => _.,1,ChanIsAvail(Zap/21) ; Check if the target
station is free
exten => _.,2,Dial(Zap/21) ; Immediatly route
inbound calls to dedicated station
exten => _.,102,Playtones(busy)
exten => _.,103,Busy
exten => _.,104,Wait(10)
exten => _.,105,Hangup
But, checking the CDR logs it records 'fax' as the value of ${EXTEN}. I also
tried using:
exten => s,1,SetVar(DIGITS=${EXTEN})
...
with
exten => fax,1,Goto(outto-faxhandler,${DIGITS},1) ; If asterisk
detects a fax, deal with it
and then the faxhandler routine above, but it (correctly) records 's' as the
value of ${EXTEN}.
So, how do I go about getting the digits out of the registers and into a
variable, so I can preserve them across the call? I'm answering the trunks
in immediate mode and using:
[infrom-did]
exten => s,1,DigitTimeout,2 ; Gather keypresses, 2
second pause is 'completed dialing'
exten => s,2,ResponseTimeout,10 ; 10 seconds without any
digits at all is a problem...
exten => fax,1,Goto(outto-faxhandler,s,1) ; If asterisk detects a
fax, deal with it
include => outto-norstar-DNs
to gather the digits and handle the contexts.
Thanks in advance.
Kris Boutilier
Information Systems Coordinator
Sunshine Coast Regional District
More information about the asterisk-users
mailing list