Hello everybody,
I searched everywhere but I didn’t find a hint to this one:
I’ve got an asterisk which is connected via sip to a voip provider:
[general]
language=de
bindport=5060
useragent=Asterisk
bindaddr=hostname
srvlookup=yes
insecure=very
;nat=yes
dtmfmode=auto
maxexpirey=3600
defaultexpirey=60
disallow=all
allow=ulaw
allow=alaw
allow=g726
allow=gsm
language=de
register => 2222:secret@host.net/2222
register => 1111:secret@host.de/1111
[2222]
type=peer
username=2222
host=host.net
fromdomain=host.net
fromuser=2222
secret=secret
insecure=very
qualify=yes
nat=no
disallow=all
allow=ulaw
allow=alaw
allow=g726
allow=gsm
canreinvite=no
relaxdtmf=yes
[dus_in]
type=peer
fromdomain=host.net
host=host.net
disallow=all
allow=ulaw
allow=alaw
allow=g726
allow=gsm
context= Context
[sipgate_in]
type=friend
insecure=very ; otherwise I get authentication errors
nat=yes
username=1111
fromuser=1111
fromdomain=host.de
secret=secret
host=host.de
qualify=yes
context= Context
[3000]
callerid=Phone 3000 <3000>
host=dynamic
domain=IP des Servers
user=3000
secret=secret
type=friend
mailbox=3000
nat=yes
canreinvite=no
context= Context
I’ve got an agi-perl-script which is being called from inside the extensions.conf like this:
[Context]
exten => 3962694,1,Answer()
exten => 3962694,n,Set(Count=1)
exten => 3962694,n,While($[ ${Count} < 5])
exten => 3962694,n,AGI(agi-test.agi)
exten => 3962694,n,EndWhile()
I encounter the not reproducable phaenomenon that the while-loop in the extensions.conf keeps on looping even when I hanged up. On the console a sip show channels shows me that there’s some kind of zombie channel still alive, long after I hung up the phone.
Can anybody help me on that one? Do I need to detect the status of the channel in the loop? Is there a configuration option for the sensibility of the hangup-detection? A timeout?
Help would be appreciated!
Regs,
Nils