Jean-Yves Avenard
2005-May-24 09:54 UTC
[Asterisk-Users] Fax detection: Problem with extension number
Hello
I've been having the following problem today :
I have a quite simple dialplan made to receive a fax:
[answer-extension]
exten => 1,1,Answer
exten => 1,2,Macro(setcallerid)
exten => 1,3,Ringing
exten => 1,4,Wait(3)
exten => 1,5,Macro(stdfwd3iax-notransfer,${EXTENSION},${EXTENSION},$
{EXTENSION})
exten => fax,1,Goto(faxreceive,1,1)
The Wait(3) is there simply to let the system a bit of time to detect
if it's a fax calling, this has worked so far in all cases except today.
I received a fax from overseas and it seems that Asterisk has been
unable to detect that it was a fax in the 3 seconds wait. Changing to
5s was sufficient to receive the fax. But obviously this is not a
solution I want to adopt all the time as 1-it's a tool long wait, 2-
what happens if 5s is still not enough another time.
So Asterisk recognized that a fax was being received while executing
the macro stdfwd3iax-notransfer (this extension simply check
And I saw the following message in the console:
-- Executing VoiceMail("Zap/10-1", "u200") in new stack
-- Playing '/data/asterisk/var/spool/asterisk/voicemail/default/
200/unavail' (language 'en')
-- Redirecting Zap/10-1 to fax extension
May 25 01:19:34 WARNING[17629]: pbx.c:2412 ast_pbx_run: Timeout, but
no rule 't' in context 'answer-extension'
-- Hungup 'Zap/10-1'
It seems that Asterisk once entered in a Macro is unable to jump to
the fax extension and gave me a timeout (which I do not handle in my
dialplan). If I change the Wait(3) into Wait(0) the problem can be
easily reproduced at all times.
I then added a fax extension in the Macro just in case, but it made
no difference whatsoever.
Any ideas on what I'm doing wrong or is this a problem with Asterisk?
The fully log is below.
Thank you in advance
Jean-Yves
When I looked in the console on what what happening I say this:
-- Accepting call from '' to '85735200' on channel 0/10,
span 1
-- Executing AGI("Zap/10-1", "getnumber.agi|200") in
new stack
-- Launched AGI Script /data/asterisk/var/lib/asterisk/agi-bin/
getnumber.agi
-- AGI Script getnumber.agi completed, returning 0
-- Executing Set("Zap/10-1", "EXTENSION=00") in new
stack
-- Executing Goto("Zap/10-1", "answer-extension|1|1")
in new stack
-- Goto (answer-extension,1,1)
-- Executing Answer("Zap/10-1", "") in new stack
-- Executing Macro("Zap/10-1", "setcallerid") in new
stack
-- Executing GotoIf("Zap/10-1", "11?10:11") in new
stack
-- Goto (macro-setcallerid,s,10)
-- Executing Set("Zap/10-1",
"CALLERID(number)=''") in new stack
-- Executing GotoIf("Zap/10-1", "0?20") in new stack
-- Executing Ringing("Zap/10-1", "") in new stack
-- Executing Wait("Zap/10-1", "0") in new stack
-- Executing Macro("Zap/10-1",
"stdfwd3iax-notransfer|200|200|
100") in new stack
-- Executing DBget("Zap/10-1", "temp=CFIM/200") in new
stack
-- DBget: varname=temp, family=CFIM, key=200
-- DBget: Value not found in database.
-- Executing Goto("Zap/10-1", "3") in new stack
-- Goto (macro-stdfwd3iax-notransfer,s,3)
-- Executing Dial("Zap/10-1", "IAX2/iax100|20|tr") in
new stack
May 25 01:19:21 NOTICE[17629]: app_dial.c:972 dial_exec_full: Unable
to create channel of type 'IAX2' (cause 3)
== Everyone is busy/congested at this time (1:0/0/1)
-- Executing NoOp("Zap/10-1", "CHANUNAVAIL") in new
stack
-- Executing Goto("Zap/10-1", "s-CHANUNAVAIL|1") in new
stack
-- Goto (macro-stdfwd3iax-notransfer,s-CHANUNAVAIL,1)
-- Executing Goto("Zap/10-1", "s|400") in new stack
-- Goto (macro-stdfwd3iax-notransfer,s,400)
-- Executing Dial("Zap/10-1", "SIP/ipp100|20|tr") in
new stack
May 25 01:19:21 NOTICE[17629]: app_dial.c:972 dial_exec_full: Unable
to create channel of type 'SIP' (cause 3)
== Everyone is busy/congested at this time (1:0/0/1)
-- Executing Goto("Zap/10-1", "s2-CHANUNAVAIL|1") in
new stack
-- Goto (macro-stdfwd3iax-notransfer,s2-CHANUNAVAIL,1)
-- Executing Goto("Zap/10-1", "s|200") in new stack
-- Goto (macro-stdfwd3iax-notransfer,s,200)
-- Executing DBget("Zap/10-1", "temp=CFBS/200") in new
stack
-- DBget: varname=temp, family=CFBS, key=200
-- DBget: Value not found in database.
-- Executing Goto("Zap/10-1", "202") in new stack
-- Goto (macro-stdfwd3iax-notransfer,s,202)
-- Executing VoiceMail("Zap/10-1", "u200") in new stack
-- Playing '/data/asterisk/var/spool/asterisk/voicemail/default/
200/unavail' (language 'en')
-- Redirecting Zap/10-1 to fax extension
May 25 01:19:34 WARNING[17629]: pbx.c:2412 ast_pbx_run: Timeout, but
no rule 't' in context 'answer-extension'
-- Hungup 'Zap/10-1'
---
Jean-Yves Avenard
Hydrix Pty Ltd - Embedding the net
www.hydrix.com | fax +61 3 8573 5200 | office +61 3 8573 5299 |
direct +61 3 8573 5200
---
Jean-Yves Avenard
Hydrix Pty Ltd - Embedding the net
www.hydrix.com | fax +61 3 8573 5200 | office +61 3 8573 5299 |
direct +61 3 8573 5200
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
http://lists.digium.com/pipermail/asterisk-users/attachments/20050524/28c09d90/attachment.htm
Jean-Christophe Heger
2005-May-25 23:31 UTC
[Asterisk-Users] Fax detection: Problem with extension number
For what I'm seeing in your log, the fax is detected, but you're missing
the fax extension. Here is how it works on my asterisk:
zapata.conf:
faxdetect = incoming
extensions.conf:
[pstn-in]
exten => 1234567,1,Goto(fax,s,1) ; This is a dedicated fax number
exten => fax,1,Goto(fax,s,1) ; For Zaptel fax detection (must
be answer first to be detected)
[fax]
exten => s,1,ZapEC(off)
exten => s,2,Wait(2)
exten => s,3,RxFAX(/var/lib/asterisk/fax/${UNIQUEID}.tif)
exten => s,4,Hangup
exten => fax,1,ZapEC(off)
exten => fax,2,RxFAX(/var/lib/asterisk/fax/${UNIQUEID}.tif)
exten => fax,3,Hangup
exten => h,1,System(/usr/bin/fax2pdf
/var/lib/asterisk/fax/${UNIQUEID}.tif /var/lib/asterisk/fax/${UNIQUEID}.pdf)
I'm not really sure what exten number to use in fax context, but it works.
Jean-Christophe
Jean-Yves Avenard a ?crit :
>
>
> Hello
>
> I've been having the following problem today :
> I have a quite simple dialplan made to receive a fax:
>
> [answer-extension]
> exten => 1,1,Answer
> exten => 1,2,Macro(setcallerid)
> exten => 1,3,Ringing
> exten => 1,4,Wait(3)
> exten =>
> 1,5,Macro(stdfwd3iax-notransfer,${EXTENSION},${EXTENSION},${EXTENSION})
>
> exten => fax,1,Goto(faxreceive,1,1)
>
> The Wait(3) is there simply to let the system a bit of time to detect
> if it's a fax calling, this has worked so far in all cases except
today.
> I received a fax from overseas and it seems that Asterisk has been
> unable to detect that it was a fax in the 3 seconds wait. Changing to
> 5s was sufficient to receive the fax. But obviously this is not a
> solution I want to adopt all the time as 1-it's a tool long wait,
> 2-what happens if 5s is still not enough another time.
>
> So Asterisk recognized that a fax was being received while executing
> the macro stdfwd3iax-notransfer (this extension simply check
>
> And I saw the following message in the console:
> -- Executing VoiceMail("Zap/10-1", "u200") in new
stack
> -- Playing
> '/data/asterisk/var/spool/asterisk/voicemail/default/200/unavail'
> (language 'en')
> -- Redirecting Zap/10-1 to fax extension
> May 25 01:19:34 WARNING[17629]: pbx.c:2412 ast_pbx_run: Timeout, but
> no rule 't' in context 'answer-extension'
> -- Hungup 'Zap/10-1'
>
> It seems that Asterisk once entered in a Macro is unable to jump to
> the fax extension and gave me a timeout (which I do not handle in my
> dialplan). If I change the Wait(3) into Wait(0) the problem can be
> easily reproduced at all times.
>
> I then added a fax extension in the Macro just in case, but it made no
> difference whatsoever.
>
> Any ideas on what I'm doing wrong or is this a problem with Asterisk?
>
> The fully log is below.
> Thank you in advance
> Jean-Yves
>
> When I looked in the console on what what happening I say this:
> -- Accepting call from '' to '85735200' on channel
0/10, span 1
> -- Executing AGI("Zap/10-1", "getnumber.agi|200")
in new stack
> -- Launched AGI Script
> /data/asterisk/var/lib/asterisk/agi-bin/getnumber.agi
> -- AGI Script getnumber.agi completed, returning 0
> -- Executing Set("Zap/10-1", "EXTENSION=00") in new
stack
> -- Executing Goto("Zap/10-1",
"answer-extension|1|1") in new stack
> -- Goto (answer-extension,1,1)
> -- Executing Answer("Zap/10-1", "") in new stack
> -- Executing Macro("Zap/10-1", "setcallerid") in
new stack
> -- Executing GotoIf("Zap/10-1", "11?10:11") in new
stack
> -- Goto (macro-setcallerid,s,10)
> -- Executing Set("Zap/10-1",
"CALLERID(number)=''") in new stack
> -- Executing GotoIf("Zap/10-1", "0?20") in new
stack
> -- Executing Ringing("Zap/10-1", "") in new stack
> -- Executing Wait("Zap/10-1", "0") in new stack
> -- Executing Macro("Zap/10-1",
> "stdfwd3iax-notransfer|200|200|100") in new stack
> -- Executing DBget("Zap/10-1", "temp=CFIM/200") in
new stack
> -- DBget: varname=temp, family=CFIM, key=200
> -- DBget: Value not found in database.
> -- Executing Goto("Zap/10-1", "3") in new stack
> -- Goto (macro-stdfwd3iax-notransfer,s,3)
> -- Executing Dial("Zap/10-1", "IAX2/iax100|20|tr")
in new stack
> May 25 01:19:21 NOTICE[17629]: app_dial.c:972 dial_exec_full: Unable
> to create channel of type 'IAX2' (cause 3)
> == Everyone is busy/congested at this time (1:0/0/1)
> -- Executing NoOp("Zap/10-1", "CHANUNAVAIL") in new
stack
> -- Executing Goto("Zap/10-1", "s-CHANUNAVAIL|1") in
new stack
> -- Goto (macro-stdfwd3iax-notransfer,s-CHANUNAVAIL,1)
> -- Executing Goto("Zap/10-1", "s|400") in new stack
> -- Goto (macro-stdfwd3iax-notransfer,s,400)
> -- Executing Dial("Zap/10-1", "SIP/ipp100|20|tr")
in new stack
> May 25 01:19:21 NOTICE[17629]: app_dial.c:972 dial_exec_full: Unable
> to create channel of type 'SIP' (cause 3)
> == Everyone is busy/congested at this time (1:0/0/1)
> -- Executing Goto("Zap/10-1", "s2-CHANUNAVAIL|1")
in new stack
> -- Goto (macro-stdfwd3iax-notransfer,s2-CHANUNAVAIL,1)
> -- Executing Goto("Zap/10-1", "s|200") in new stack
> -- Goto (macro-stdfwd3iax-notransfer,s,200)
> -- Executing DBget("Zap/10-1", "temp=CFBS/200") in
new stack
> -- DBget: varname=temp, family=CFBS, key=200
> -- DBget: Value not found in database.
> -- Executing Goto("Zap/10-1", "202") in new stack
> -- Goto (macro-stdfwd3iax-notransfer,s,202)
> -- Executing VoiceMail("Zap/10-1", "u200") in new
stack
> -- Playing
> '/data/asterisk/var/spool/asterisk/voicemail/default/200/unavail'
> (language 'en')
> -- Redirecting Zap/10-1 to fax extension
> May 25 01:19:34 WARNING[17629]: pbx.c:2412 ast_pbx_run: Timeout, but
> no rule 't' in context 'answer-extension'
> -- Hungup 'Zap/10-1'
>
> ---
> Jean-Yves Avenard
> Hydrix Pty Ltd - Embedding the net
> www.hydrix.com | fax +61 3 8573 5200 | office +61 3 8573 5299 | direct
> +61 3 8573 5200
>
>
> ---
>
> Jean-Yves Avenard
>
> Hydrix Pty Ltd - Embedding the net
>
> www.hydrix.com | fax +61 3 8573 5200 | office +61 3 8573 5299 | direct
> +61 3 8573 5200
>
>
>------------------------------------------------------------------------
>
>_______________________________________________
>Asterisk-Users mailing list
>Asterisk-Users@lists.digium.com
>http://lists.digium.com/mailman/listinfo/asterisk-users
>To UNSUBSCRIBE or update options visit:
> http://lists.digium.com/mailman/listinfo/asterisk-users
>