Incoming calls to Ringroup not working for calls from PSTN

norco
Posts: 21
Member Since:
2007-01-15

Hi, I have a problem with inconsistent handling of incoming calls to a ring group depending upon if the call comes in from the PSTN or from an internal extension.

The problem: unanswered calls (after ring timeout) coming in to Trixbox from the SPA3K trunk (PSTN) get a strange initial stutter dialtone and then dialtone, and stay there until I hangup. When I dial my ring group from an extension it goes directly to where I programmed it to go: extension 15.

I expect the setup to work identical for any incoming call, regardless of its source (internal or PSTN). I say that because I only have one simple "any DID/ any CID@ inbound route which points to my ring group. The ring group is setup to ringall and after timeout go to to CORE extension 15.

I cannot explain or find why calls coming in from the SPA3K are handled differently and go to to stutter dialtone, instead to my ring group. The bad thing is that this used to work fine last week, and I do not know how it broke, nor do I know where else to look to fix it!!!

I have captured logs for a "good" and a "bad" call, as follows:
BAD CALL (from SPA3K):
-- Called 12
-- Called 13
-- Called 14
-- SIP/12-0a166080 is ringing
-- SIP/13-0a14df80 is ringing
-- SIP/14-0a1858d0 is ringing
== Spawn extension (macro-dial, s, 10) exited non-zero on 'SIP/asterisk-0a188d30' in macro 'dial'
== Spawn extension (macro-dial, s, 10) exited non-zero on 'SIP/asterisk-0a188d30'
-- Executing Macro("SIP/asterisk-0a188d30", "hangupcall") in new stack
-- Executing ResetCDR("SIP/asterisk-0a188d30", "w") in new stack
-- Executing NoCDR("SIP/asterisk-0a188d30", "") in new stack
-- Executing GotoIf("SIP/asterisk-0a188d30", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,6)
-- Executing GotoIf("SIP/asterisk-0a188d30", "0?theend") in new stack
-- Executing NoOp("SIP/asterisk-0a188d30", "Cleaning Up Block VM Flag: BLKVM/600/SIP/asterisk-0a188d30") in new stack
-- Executing DBdel("SIP/asterisk-0a188d30", "BLKVM/600/SIP/asterisk-0a188d30") in new stack
-- DBdel: family=BLKVM, key=600/SIP/asterisk-0a188d30
-- Executing Wait("SIP/asterisk-0a188d30", "5") in new stack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'SIP/asterisk-0a188d30' in macro 'hangupcall'
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'SIP/asterisk-0a188d30'

GOOD CALL (internal extension dials ringgroup):
-- Called 12
-- Called 13
-- Called 14
-- Got SIP response 486 "Busy" back from 192.168.0.174
-- SIP/12-0a166080 is busy
-- SIP/13-0a14df80 is ringing
-- SIP/14-0a1858d0 is ringing
-- Nobody picked up in 30000 ms
-- Executing Set("SIP/12-0a188d30", "RingGroupMethod=") in new stack
-- Executing GotoIf("SIP/12-0a188d30", "0?nodest") in new stack
-- Executing Set("SIP/12-0a188d30", "__NODEST=") in new stack
-- Executing DBdel("SIP/12-0a188d30", "BLKVM/600/SIP/12-0a188d30") in new stack
-- DBdel: family=BLKVM, key=600/SIP/12-0a188d30
-- Executing Goto("SIP/12-0a188d30", "ext-local|15|1") in new stack
-- Goto (ext-local,15,1)
-- Executing Macro("SIP/12-0a188d30", "exten-vm|15|15") in new stack
-- Executing Macro("SIP/12-0a188d30", "user-callerid") in new stack
-- Executing NoOp("SIP/12-0a188d30", "user-callerid: Cote 12") in new stack
-- Executing GotoIf("SIP/12-0a188d30", "0?report") in new stack
-- Executing GotoIf("SIP/12-0a188d30", "1?start") in new stack
-- Goto (macro-user-callerid,s,5)
-- Executing NoOp("SIP/12-0a188d30", "REALCALLERIDNUM is 12") in new stack
-- Executing Set("SIP/12-0a188d30", "AMPUSER=12") in new stack
-- Executing Set("SIP/12-0a188d30", "AMPUSERCIDNAME=Cote") in new stack
-- Executing GotoIf("SIP/12-0a188d30", "0?report") in new stack
-- Executing Set("SIP/12-0a188d30", "CALLERID(all)=Cote ") in new stack
-- Executing Set("SIP/12-0a188d30", "REALCALLERIDNUM=12") in new stack
-- Executing NoOp("SIP/12-0a188d30", "TTL: 64 ARG1: 15") in new stack
-- Executing GotoIf("SIP/12-0a188d30", "0?continue") in new stack
-- Executing Set("SIP/12-0a188d30", "_TTL=63") in new stack
-- Executing GotoIf("SIP/12-0a188d30", "1?continue") in new stack
-- Goto (macro-user-callerid,s,21)
-- Executing NoOp("SIP/12-0a188d30", "Using CallerID "Cote" ") in new stack
-- Executing Set("SIP/12-0a188d30", "FROMCONTEXT=exten-vm") in new stack
-- Executing Set("SIP/12-0a188d30", "VMBOX=15") in new stack
-- Executing Set("SIP/12-0a188d30", "EXTTOCALL=15") in new stack
-- Executing Set("SIP/12-0a188d30", "CFUEXT=") in new stack
-- Executing Set("SIP/12-0a188d30", "CFBEXT=") in new stack
-- Executing Set("SIP/12-0a188d30", "RT=30") in new stack
-- Executing Macro("SIP/12-0a188d30", "record-enable|15|IN") in new stack
-- Executing GotoIf("SIP/12-0a188d30", "0?2:4") in new stack
-- Goto (macro-record-enable,s,4)
-- Executing DeadAGI("SIP/12-0a188d30", "recordingcheck|20070402-180833|1175551681.53") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/recordingcheck
recordingcheck|20070402-180833|1175551681.53: Inbound recording not enabled
-- AGI Script recordingcheck completed, returning 0
-- Executing NoOp("SIP/12-0a188d30", "No recording needed") in new stack
-- Executing Macro("SIP/12-0a188d30", "dial|30|tr|15") in new stack
-- Executing DeadAGI("SIP/12-0a188d30", "dialparties.agi") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/dialparties.agi
dialparties.agi: Starting New Dialparties.agi
dialparties.agi: priority is 1
dialparties.agi: Caller ID name is 'Cote' number is '12'
dialparties.agi: Methodology of ring is 'none'
> dialparties.agi: USE_CONFIRMATION: 'FALSE'
> dialparties.agi: RINGGROUP_INDEX: ''
-- dialparties.agi: Added extension 15 to extension map
-- dialparties.agi: Extension 15 cf is disabled
-- dialparties.agi: Extension 15 do not disturb is disabled
> dialparties.agi: extnum: 15
> dialparties.agi: exthascw: 1
> dialparties.agi: exthascfb: 0
> dialparties.agi: extcfb:
> dialparties.agi: exthascfu: 0
> dialparties.agi: extcfu:
-- dialparties.agi: dbset CALLTRACE/15 to 12
-- AGI Script dialparties.agi completed, returning 0
-- Executing Dial("SIP/12-0a188d30", "SIP/15|30|tr") in new stack
-- Called 15
-- SIP/15-0a166080 is ringing
== Spawn extension (macro-dial, s, 10) exited non-zero on 'SIP/12-0a188d30' in macro 'dial'
== Spawn extension (macro-dial, s, 10) exited non-zero on 'SIP/12-0a188d30' in macro 'exten-vm'
== Spawn extension (macro-dial, s, 10) exited non-zero on 'SIP/12-0a188d30'
-- Executing Macro("SIP/12-0a188d30", "hangupcall") in new stack
-- Executing ResetCDR("SIP/12-0a188d30", "w") in new stack
-- Executing NoCDR("SIP/12-0a188d30", "") in new stack
-- Executing GotoIf("SIP/12-0a188d30", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,6)
-- Executing GotoIf("SIP/12-0a188d30", "0?theend") in new stack
-- Executing NoOp("SIP/12-0a188d30", "Cleaning Up Block VM Flag: BLKVM/600/SIP/12-0a188d30") in new stack
-- Executing DBdel("SIP/12-0a188d30", "BLKVM/600/SIP/12-0a188d30") in new stack
-- DBdel: family=BLKVM, key=600/SIP/12-0a188d30
-- DBdel: Error deleting key from database.
-- Executing Wait("SIP/12-0a188d30", "5") in new stack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'SIP/12-0a188d30' in macro 'hangupcall'
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'SIP/12-0a188d30'



w5waf
Posts: 711
Member Since:
2006-06-09
OK... Since it last worked,

OK...

Since it last worked, did you make ANY changes to your configuration. I know this sounds trite, but that's the best place to start.

The thing to remember is, that calls made from the PSTN are handled differently from internal calls.

What is your group number?

Bill Ford, FtOCC
City of Vicksburg

--

Bill Ford - FtOCC
City of Vicksburg
www.vicksburg.org



norco
Posts: 21
Member Since:
2007-01-15
Narrowing down the problem

Bill, thank you for taking the time to help me.

Well, I have narrowed down the "issue" to timers between Trixbox and the SPA3K. I can play with my Trixbox ring group "ring time" value and by setting it to 10 seconds, I get the incoming PSTN call forwarded to CORE:voicemailbox 13 after the 10 seconds (which is what I want it to do!).

But, if I bump this timer value up to say, 15 seconds (which is still way less than what I would like it to be) then, at about 15 seconds of ringing my extensions in group 600, the call gets "forwarded" to this misterious stutter dial tone.

So I must assume that it is the SPA3K that is doing this, but I don´t know which value to change to prevent it from doing that. I have tried to fiddle with the "obvious" FXO timers setting them to ridiculous values like 60 seconds but it does not help. All I want is from the SPA3K to just forward the call and never do anything else to it, I want TB to handle and control all the incoming calls. Why is that such a difficult task to do? (did I mention frustrating and time consuming?)

Anyway, it seems that I am close, but still in the dark as to where to go next to get this working.

Sigh!!



w5waf
Posts: 711
Member Since:
2006-06-09
So it appears that your

So it appears that your trunk is timing out before it sees an answer!. That's really wierd. It really sounds like this is a question for your service provider. I really don't see anyplace that trixbox could send that stutter DT back to the caller.

Bill, FtOCC
City of Vicksburg

--

Bill Ford - FtOCC
City of Vicksburg
www.vicksburg.org



norco
Posts: 21
Member Since:
2007-01-15
Suspect the Sipura

Bill, I suspect it is the SPA3K, if I call "direct" without TB or the Sipura, the call goes on for quite some time before timing out, so I do not think it is a Telco issue.

Also, I think that the SPA3K answers the call on the FXO side, then sets up a SIP call to the FXS line and forwards it to the VOIP gateway into TB. But I just do not know what else to play with on the Sipura...

Weird is for sure...



obelix
Posts: 18
Member Since:
2006-12-29
I have the same issue

Hi guys,

I have a similier issue. But only from some source numbers.

Here is my post,

http://www.trixbox.org/forums/trixbox-forums/help/incoming-calls-...

Any ideas,

Olivia



Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.