SearchSearch  Log in to check your private messagesLog in to check your private messages  recent posts Recent Posts
Post new topic   Reply to topic
View previous topic Printable version Log in to check your private messages View next topic
Author Message
seabroOffline



Joined: Jun 30, 2005
Posts: 8
Location: Cardiff, UK
Status: Offline
Posted: May 08, 2009 - 02:11 PM Reply with quote Back to top
Hi,

Does anyone have an idea why the dialplan is moving to priority h (hangup) in macro-dial after 10s of every inbound call?

I am helping someone with a problem whereby an incoming call ends after exactly 10s.

The console shows:
-- SIP/201-0889cd68 is ringing
-- SIP/201-0889cd68 answered SIP/4908187-08845848
== Spawn extension (macro-dial, s, 7) exited non-zero on 'SIP/4908187-08845848' in macro 'dial'
== Spawn extension (macro-dial, s, 7) exited non-zero on 'SIP/4908187-08845848' in macro 'exten-vm'
== Spawn extension (macro-dial, s, 7) exited non-zero on 'SIP/4908187-08845848'
-- Executing [h@macro-dial:1] Macro("SIP/4908187-08845848", "hangupcall") in new stack
-- Executing [s@macro-hangupcall:1] ResetCDR("SIP/4908187-08845848", "w") in new stack

It seems that after the call has been answered and parties are talking, the script moves to priority h which causes the hangup.

I have overcome the problem by putting a new, simple macro-dial in extensions_custom.conf but this is more of a workaround than a solution and prevents some changes being made through the GUI.

Can anyone help? I imagine something is going wrong inside dialparties.agi as I can see no reason for this behaviour in the dialplan.

Thanks for any help.

Seabro
View user's profile Send private message
ianplainOffline
Site Admin


Joined: Jul 05, 2004
Posts: 3347
Location: Bath UK
Status: Offline
Posted: May 08, 2009 - 03:35 PM Reply with quote Back to top
Hi

What does show dialplanhaev to say about the expected callflow

Ian
View user's profile Send private message
seabroOffline



Joined: Jun 30, 2005
Posts: 8
Location: Cardiff, UK
Status: Offline
Posted: May 08, 2009 - 03:46 PM Reply with quote Back to top
Hi Ian,

Here is show dialplan for macro-dial

[ Context 'macro-dial' created by 'pbx_config' ]
'DONTCALL' => 1. Answer() [pbx_config]
2. Wait(1) [pbx_config]
3. Zapateller() [pbx_config]
4. Playback(ss-noservice) [pbx_config]
5. Macro(hangupcall) [pbx_config]
'NOANSWER' => 1. Macro(vm|${SCREEN_EXTEN}|BUSY|${IVR_RETVM}) [pbx_config]
2. GotoIf($["${IVR_RETVM}" != "RETURN" | "${IVR_CONTEXT}" = ""]?bye) [pbx_config]
3. Return() [pbx_config]
[bye] 4. Macro(hangupcall) [pbx_config]
'TORTURE' => 1. Goto(app-blackhole|musiconhold|1) [pbx_config]
2. Macro(hangupcall) [pbx_config]
'h' => 1. Macro(hangupcall) [pbx_config]
's' => 1. GotoIf($["${MOHCLASS}" = ""]?dial) [pbx_config]
2. SetMusicOnHold(${MOHCLASS}) [pbx_config]
[dial] 3. AGI(dialparties.agi) [pbx_config]
4. NoOp(Returned from dialparties with no extensions to call and DIALSTATUS: ${DIALSTATUS}) [pbx_config]
[normdial] 7. Dial(${ds}) [pbx_config]
8. Set(DIALSTATUS=${IF($["${DIALSTATUS_CW}"!="" ]?${DIALSTATUS_CW}:${DIALSTATUS})}) [pbx_config]
9. GosubIf($["${SCREEN}" != ""]?${DIALSTATUS}|1) [pbx_config]
[huntdial] 20. NoOp(Returned from dialparties with hunt groups to dial ) [pbx_config]
21. Set(HuntLoop=0) [pbx_config]
[a22] 22. GotoIf($[${HuntMembers} >= 1]?a30) [pbx_config]
23. NoOp(Returning there are no members left in the hunt group to ring) [pbx_config]
[a30] 26. Set(HuntMember=HuntMember${HuntLoop}) [pbx_config]
27. GotoIf($[$["${CALLTRACE_HUNT}" != "" ] & $["${RingGroupMethod}" = "hunt" ]]?a32:a35) [pbx_config]
[a32] 28. Set(CT_EXTEN=${CUT(FILTERED_DIAL||$[${HuntLoop} + 1])}) [pbx_config]
29. Set(DB(CALLTRACE/${CT_EXTEN})=${CALLTRACE_HUNT}) [pbx_config]
30. Goto(s|a42) [pbx_config]
[a35] 31. GotoIf($[$["${CALLTRACE_HUNT}" != "" ] & $["${RingGroupMethod}" = "memoryhunt" ]]?a36:a50) [pbx_config]
[a36] 32. Set(CTLoop=0) [pbx_config]
[a37] 33. GotoIf($[${CTLoop} > ${HuntLoop}]?a42) [pbx_config]
34. Set(CT_EXTEN=${CUT(FILTERED_DIAL||$[${CTLoop} + 1])}) [pbx_config]
35. Set(DB(CALLTRACE/${CT_EXTEN})=${CALLTRACE_HUNT}) [pbx_config]
36. Set(CTLoop=$[1 + ${CTLoop}]) [pbx_config]
37. Goto(s|a37) [pbx_config]
[a42] 38. Dial(${${HuntMember}}${ds}) [pbx_config]
39. Set(HuntLoop=$[1 + ${HuntLoop}]) [pbx_config]
40. GotoIf($[$[$["foo${RingGroupMethod}" != "foofirstavailable"] & $["foo${RingGroupMethod}" != "foofirstnotonphone"]] | $["foo${DialStatus}" = "fooBUSY"]]?a46) [pbx_config]
41. Set(HuntMembers=0) [pbx_config]
[a46] 42. Set(HuntMembers=$[${HuntMembers} - 1]) [pbx_config]
43. Goto(s|a22) [pbx_config]
[a50] 44. DBdel(CALLTRACE/${CT_EXTEN}) [pbx_config]
45. Goto(s|a42) [pbx_config]
View user's profile Send private message


View previous topic Printable version Log in to check your private messages View next topic

Post new topic   Reply to topic
Forum Rules and Guidelines | About VoIP User | Privacy Policy


All logos and trademarks in this site are property of their respective owner.
Comments and posts are property of the poster, all the rest (c) 2003-2008 VoIP User Limited.

VoIP User Limited is incorporated in England and Wales under Company Number 6694577.

No part of this site may be reproduced without our prior consent.