[Home]

Summary:ASTERISK-02626: Fax redirect does not always work
Reporter:ipdeman (ipdeman)Labels:
Date Opened:2004-10-18 12:01:06Date Closed:2011-06-07 14:10:04
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Core/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) fax-debug.txt
Description:Fax is detected but fax redirection to fax extension fails. I have confirmed this by sending over 50 faxes to X100P cards on  differant lines. Eventually times out and hangs up. Attached is txt file with debug info.
Comments:By: twisted (twisted) 2004-10-18 16:35:17

We'll need a little more information.  Some information that could be helpful are your rx/tx gain settings in zapata.conf, and the relevant parts of your dialplan.

Thanks.

By: Tilghman Lesher (tilghman) 2004-10-18 17:49:41

Your silence needs to be a little bit longer, given that the CNG tones may not appear within that first second.  Please set your initial sound to silence/3, retest, and reopen this bug if the problem persists.

By: ipdeman (ipdeman) 2004-10-18 20:46:15

Silence increased to 3 seconds, but * asterisk is not having a problem DETECTING a fax, but instead completing the REDIRECT. But for kicks and giggles I tried it any way. Tried it this time on Zap/2-1 line. I tried 2 faxes back-to-back after the change. First one went through. Second one did not complete the redirect. Random on any line and card. Below are card levels . I have them optimized for clean fax receives and no echo. They have been set this way since before stable 1.0 and I have not had this problem until recently.


faxdetect=both
rxgain=1.0
txgain=1.5

Attempt 1
 == Channel 'Zap/2-1' jumping out of macro 'route'
   -- Executing Answer("Zap/2-1", "") in new stack
   -- Executing BackGround("Zap/2-1", "silence/3") in new stack
   -- Playing 'silence/3' (language 'en')
   -- Redirecting Zap/2-1 to fax extension
   -- Executing NoOp("Zap/2-1", "Going to fax extension from fax detect in incoming-private") in new stack
   -- Executing Goto("Zap/2-1", "fax|2203|1") in new stack
   -- Goto (fax,2203,1)
   -- Executing Macro("Zap/2-1", "faxreceive") in new stack
   -- Executing SetVar("Zap/2-1", "FAXFILE=/var/spool/asterisk-fax/1098149241.87.tif") in new stack
   -- Executing DBget("Zap/2-1", "EMAILADDR=FAXMAIL/2203") in new stack
   -- DBget: varname=EMAILADDR, family=FAXMAIL, key=2203
   -- DBget: set variable EMAILADDR to admin@netpathway.com
   -- Executing RxFAX("Zap/2-1", "/var/spool/asterisk-fax/1098149241.87.tif") in new stack
   -- Executing DeadAGI("Zap/2-1", "mailfax.agi|/var/spool/asterisk-fax/1098149241.87.tif|xxxxx@xxxxxxxxxxx.xxx|xxxxxxxxxx xxxxx xxxx") in new stack
   -- Launched AGI Script /var/lib/asterisk/agi-bin/mailfax.agi
   -- AGI Script mailfax.agi completed, returning 0
   -- Hungup 'Zap/2-1'


Attempt 2
   -- Executing Answer("Zap/2-1", "") in new stack
   -- Executing BackGround("Zap/2-1", "silence/3") in new stack
   -- Playing 'silence/3' (language 'en')
   -- Executing BackGround("Zap/2-1", "custom/bell") in new stack
   -- Playing 'custom/bell' (language 'en')
   -- Redirecting Zap/2-1 to fax extension  <------says redirecting, does not
   -- Timeout on Zap/2-1

edited on: 10-18-04 21:45

By: ipdeman (ipdeman) 2004-10-19 10:57:09

Ok guys, this is how I solved this problem. Seems * gets confused somehow about which extension to use if extensions other that the fax extension is included in a context. So I now send all lines through a context with just the fax extension. If a fax is detected, execution stays in this context. If not, a Goto statement sends it to a context with all my prompts and other extensions. Since Zap/2-1 is my primary fax line, if no dtmf entries are made, Goto sends execution directly to the fax context. Doing it this everything work 100% of the time. Is this a bug? If you don't think so, go ahead and close this report. Now that I have gotten it work the way it should, I'm happy. Below are my configs.

zapata.conf
[channels]
echotraining=yes
echocancel=yes
echocancelwhenbridged=yes
jitterbuffers=4
relaxdtmf=yes
immediate=no
busydetect=no
callprogress=no
musiconhold=default
signalling=fxs_ks

/*
snip
*/

; Card 2
callprogress=yes
usecallerid=yes
usedistinctiveringdetection=yes
dring1=0,0,0
dring2=93,0,0
dring3=115,0,0
dring1context=incoming-fax-test
dring2context=incoming-fax-test
dring3context=incoming-fax-test
context=incoming-fax-test
faxdetect=both
rxgain=1.0
txgain=1.5
group=1
channel => 2

/*
snip
*/


[incoming-fax-test]
 exten => s,1,Answer
 exten => s,2,Background(silence/1)
 exten => s,3,Goto(incoming-private,s,1)

 exten => fax,1,Goto(fax,2203,1)


[incoming-private]
 exten => s,1,Background(custom/bell)
 exten => s,2,DigitTimeout(5)
 exten => s,3,ResponseTimeout(10)

 exten => t,1,GotoIf($[${CHANNEL} = Zap/2-1]?fax,2203,1:s,1)

 exten => i,1,Playback(invalid)

 exten => #,1,Playback(goodbye)
 exten => #,3,Wait(2)
 exten => #,4,Hangup

 include => local

edited on: 10-19-04 11:03

By: Brian West (bkw918) 2004-10-19 11:14:35

If you had a fax exten in [incoming-private] it would work too.  See you only wait 1 second.. thats not enough time to detect it.. it will detect during a background or playback too ya know... and will goto the fax exten in the current context.

bkw

By: Brian West (bkw918) 2004-10-19 11:14:48

Config issue not a bug.

bkw