No dialtone from DISA after callback


#1

I’m using asterisk 1.2.1 cvs and have the following things set up:
-a voip/sip account with dialin number at sipdiscount.com
-a dialplan which checks incoming calls for a special originating number and then does a callback on that number (by copying a file (filename.call) into the /var/spool/asterisk/outgoing/ folder) OR does a dial(SIP/1234) to transfer the incoming call to my local SIP phone if the number was not matched
-the callback offers a DISA with no password check so the called person should be able to dial any registered asterisk extension within the context secified in the DISA command…

All these things work fine as long as the called sip account is in the lan. But if I callback an actual phonenumber using my voip provider I don’t hear the DISA dialtone. The log says the same as for lan calls (answer, wait, disa, …) but I can’t hear anything. Just dialing dtmf without dialtone does nothing. There is no timeout as for normal DISA.
Callback and playback of soundfiles works for both lan and normal phone numbers.

So if anyone has an idea why sound playback works, while it is impossible to hear the dialtone…(is there a big difference between DISA and normal calls e.g. for firewalls…, does DISA need any other special setup to work…)

here is my config:
sip.conf-------------------------------------------------------------------------------------
[general]
context=default
realm=sipdiscount.com
srvlookup=yes
port=5060
bindaddr=0.0.0.0
disallow=all
allow=ulaw
allow=alaw
register => myname:mypass@sip1.sipdiscount.com/myname

[1234]
type=friend
username=1234
secret=mylocalpass
callerid=“mylocalname” <1234>
host=dynamic
dtmfmode=rfc2833
canreinvite=no

[sipdiscount.com]
type=friend
host=sip1.sipdiscount.com
dtmfmode=rfc2833 ;inband
disallow=all
allow=ulaw
allow=alaw
canreinvite=no
fromdomain=sipdiscount.com
username=myusername
fromuser=myusername
secret=mypass
-------------------------------------------------------------------------end sip.conf
extensions.conf -------------------------------------------------------------------
[general]
static=yes
writeprotect=no

[globals]
CONSOLE=Console/dsp
IAXINFO=guest
TRUNKMSD=1

[default]
exten => h,1,hangup
include => callback
include => callforward
include => star_echo
include => dial_all

[callback]
exten => myname/01234567890,1,system(cp /etc/asterisk/filename.call /var/spool/asterisk/outgoing)
exten => myname/01234567890,2,busy
exten => myname/01234567890,3,hangup

[callforward]
exten => myname,1,dial(SIP/1234)
exten => myname,2,congestion
exten => myname,3,hangup

[dialtone]
exten => s,1,answer
exten => s,2,wait(1)
exten => s,3,disa(no-password|dial_out)
exten => s,4,wait(1)
exten => s,5,congestion

[dial_out]
include => star_echo
include => dial_all

[star_echo]
exten => _.,1,answer
exten => _
.,2,echo
exten => _*.,3,hangup

[dial_all]
exten => _.,1,dial(SIP/${EXTEN}@sipdiscount.com)
exten => _.,2,congestion
exten => _.,3,hangup
--------------------------------------------------------------------end extensions.conf
filename.call ------------------------------------------------------------------------------
hannel: SIP/01234567890@sipdiscount.com
Context: dialtone
Extension: s
SetVar: CALLERIDNUM=test
MaxRetries: 0
RetryTime: 30
WaitTime: 30
Priority: 1
----------------------------------------------------------------------end filename.call