QueueMetrics forum
QueueMetrics => Outbound and QueueMetrics => Topic started by: msharpe on April 30, 2008, 04:06:24
-
Hi
Have noticed what believe is a bug in outgoing where call record shows as ongoing in queuemetrics.
It seems to work fine as per logs file example you show if the CALLED (B) party hangs up first as shown from log:-
1195784028|1195784028.43|q-777|NONE|ENTERQUEUE|-|0294674000
1195784028|1195784028.43|q-777|Agent/105|CONNECT|0|
1195784033|1195784028.43|q-777|Agent/105|CONNECT|5|
1195784037|1195784028.43|q-777|Agent/105|COMPLETECALLER|5|4
However if A party or Originator hangs up first only shows first 2 rows. 1195784127|1195784127.51|q-777|NONE|ENTERQUEUE|-|0294674000
1195784127|1195784127.51|q-777|Agent/105|CONNECT|0|
This seems to be the opposite to current issues and responses where they are saying if Rmote (B) hangs up first. I have no issue with that.
Asterisk Version 1.2.22
I have tried suggestions and thread links in "Queuemetrics not recognising Remote Caller hangup and that doesn't change anything.
Regards and hope you can help
-
This is strange - can you post a piece of your CLI output where the hangup occurs?
I say this is strange because 1.2's never had problems.
-
Please find and thanks for feeback.
A Party Hangs up first
-- Executing AGI("SIP/105-09f40e00", "fixlocalprefix") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/fixlocalprefix
== Begin MixMonitor Recording SIP/105-09f40e00
> fixlocalprefix: Using pattern 777+XXXXXXXX
== fixlocalprefix: Dialpattern 777+XXXXXXXX matched. 94674000 -> 77794674000
-- AGI Script fixlocalprefix completed, returning 0
-- Executing Set("SIP/105-09f40e00", "OUTNUM=77794674000") in new stack
-- Executing Set("SIP/105-09f40e00", "custom=AMP") in new stack
-- Executing GotoIf("SIP/105-09f40e00", "1?gocall") in new stack
-- Goto (macro-dialout-trunk,s,17)
-- Executing Macro("SIP/105-09f40e00", "dialout-trunk-predial-hook|") in new
stack
-- Executing GotoIf("SIP/105-09f40e00", "0?bypass|1") in new stack
-- Executing GotoIf("SIP/105-09f40e00", "1?customtrunk") in new stack
-- Goto (macro-dialout-trunk,s,22)
-- Executing Set("SIP/105-09f40e00", "pre_num=AMP:Local/") in new stack
-- Executing Set("SIP/105-09f40e00", "the_num=OUTNUM") in new stack
-- Executing Set("SIP/105-09f40e00", "post_num=@queuedial/n") in new stack
-- Executing GotoIf("SIP/105-09f40e00", "1?outnum:skipoutnum") in new stack
-- Goto (macro-dialout-trunk,s,26)
-- Executing Set("SIP/105-09f40e00", "the_num=77794674000") in new stack
-- Executing Dial("SIP/105-09f40e00", "Local/77794674000@queuedial/n|300|") in
new stack
-- Called 77794674000@queuedial/n
-- Executing SetVar("Local/77794674000@queuedial-a680,2", "MY_QUE=777") in new
stack
-- Executing SetVar("Local/77794674000@queuedial-a680,2", "MY_NUM=94674000") in
new stack
-- Executing SetVar("Local/77794674000@queuedial-a680,2", "MY_AGENT=105") in
new stack
-- Executing NoOp("Local/77794674000@queuedial-a680,2", "Ag: 105 N: 94674000 Q:
777") in new stack
-- Executing MixMonitor("Local/77794674000@queuedial-a680,2",
"Q-777-1209679706.31.wav|b|") in new stack
-- Executing DeadAGI("Local/77794674000@queuedial-a680,2",
"queueDial.agi|94674000|SIP/MHOUSESYD/94674000|q-777|Agent/105") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/queueDial.agi
== Begin MixMonitor Recording Local/77794674000@queuedial-a680,2
-- AGI Script Executing Application: (dial) Options:
(SIP/MHOUSESYD/94674000||g)
-- Called MHOUSESYD/94674000
-- SIP/MHOUSESYD-09fe6058 is making progress passing it to
Local/77794674000@queuedial-a680,2
-- Local/77794674000@queuedial-a680,1 is making progress passing it to
SIP/105-09f40e00
-- SIP/MHOUSESYD-09fe6058 is ringing
-- Local/77794674000@queuedial-a680,1 is ringing
-- SIP/MHOUSESYD-09fe6058 answered Local/77794674000@queuedial-a680,2
-- Local/77794674000@queuedial-a680,1 stopped sounds
-- Local/77794674000@queuedial-a680,1 answered SIP/105-09f40e00
== Spawn extension (macro-dialout-trunk, s, 27) exited non-zero on
'SIP/105-09f40e00' in macro 'dialout-trunk'
== Spawn extension (macro-dialout-trunk, s, 27) exited non-zero on
'SIP/105-09f40e00'
-- Executing Macro("SIP/105-09f40e00", "hangupcall|") in new stack
-- Executing ResetCDR("SIP/105-09f40e00", "w") in new stack
== Spawn extension (queuedial, 77794674000, 6) exited non-zero on
'Local/77794674000@queuedial-a680,2'
== End MixMonitor Recording Local/77794674000@queuedial-a680,2
-- Executing NoCDR("SIP/105-09f40e00", "") in new stack
-- Executing GotoIf("SIP/105-09f40e00", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,6)
-- Executing GotoIf("SIP/105-09f40e00", "1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing GotoIf("SIP/105-09f40e00", "1?theend") in new stack
-- Goto (macro-hangupcall,s,11)
-- Executing Hangup("SIP/105-09f40e00", "") in new stack
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on
'SIP/105-09f40e00' in macro 'hangupcall'
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on
'SIP/105-09f40e00'
== End MixMonitor Recording SIP/105-09f40e00
sip5*CLI>
************************************************************************
B party hangs up first (Good)
-- AGI Script queueDial.agi completed, returning 0
-- Executing Congestion("Local/77794674000@queuedial-4dd2,2", "") in new stack
== Spawn extension (macro-dialout-trunk, s, 27) exited non-zero on
'SIP/105-09f40e00' in macro 'dialout-trunk'
== Spawn extension (macro-dialout-trunk, s, 27) exited non-zero on
'SIP/105-09f40e00'
-- Executing Macro("SIP/105-09f40e00", "hangupcall|") in new stack
-- Executing ResetCDR("SIP/105-09f40e00", "w") in new stack
== Spawn extension (queuedial, 77794674000, 7) exited non-zero on
'Local/77794674000@queuedial-4dd2,2'
== End MixMonitor Recording Local/77794674000@queuedial-4dd2,2
-- Executing NoCDR("SIP/105-09f40e00", "") in new stack
-- Executing GotoIf("SIP/105-09f40e00", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,6)
-- Executing GotoIf("SIP/105-09f40e00", "1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing GotoIf("SIP/105-09f40e00", "1?theend") in new stack
-- Goto (macro-hangupcall,s,11)
-- Executing Hangup("SIP/105-09f40e00", "") in new stack
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on
'SIP/105-09f40e00' in macro 'hangupcall'
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on
'SIP/105-09f40e00'
== End MixMonitor Recording SIP/105-09f40e00
sip5*CLI>
***************************************************************
Seems like this line is missing.
-- AGI Script queueDial.agi completed, returning 0
-- Executing Congestion("Local/77794674000@queuedial-4dd2,2", "") in new stack
***************************************************************
Regards
Mal
-
Have you tried including an h target in your dialplan?
-
Hi Not sure what you mean by "h target in your dialplan". Can you explain for me, will be greatly appreciated. Regards Mal
-
I mean, the h extension in the dialplan.
-
Hi thanks for your help. I am really sorry as I am not a expert on this, but I must say I have no idea what you mean. Could you be kind enough to give me an example. We are a company and have paid for licences so would really like to fix this. I have tried re-install on 3 test machines and still same issue. Regards
-
Try doing this:
* add the following lines to context [queuedial], after the rest
exten => h,1,NoOp( "Trapped -> lowercase h" )
exten => H,1,NoOp( "Trapped -> uppercase H" )
reload Asterisk and run a trace again lik ethe other one you posted. I want to see if the event of the call closure gets traced or not.
-
Hi Many thanks for code. Please find trace.
Regards
Mal
A party Hangs up first
voip1*CLI>
== Spawn extension (macro-dialout-trunk, s, 27) exited non-zero on 'SIP/6811-08da0f38' in
macro 'dialout-trunk'
== Spawn extension (macro-dialout-trunk, s, 27) exited non-zero on 'SIP/6811-08da0f38'
-- Executing Macro("SIP/6811-08da0f38", "hangupcall|") in new stack
-- Executing ResetCDR("SIP/6811-08da0f38", "w") in new stack
-- Hungup 'Zap/1-1'
-- Executing NoCDR("SIP/6811-08da0f38", "") in new stack
-- Executing GotoIf("SIP/6811-08da0f38", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,6)
-- Executing GotoIf("SIP/6811-08da0f38", "1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing GotoIf("SIP/6811-08da0f38", "1?theend") in new stack
-- Goto (macro-hangupcall,s,11)
-- Executing Hangup("SIP/6811-08da0f38", "") in new stack
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/6811-08da0f38' in
macro 'hangupcall'
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/6811-08da0f38'
== End MixMonitor Recording SIP/6811-08da0f38
-- AGI Script queueDial.agi completed, returning 0
-- Executing NoOp("Local/7770405001763@isdndial-c1c8,2", " "Trapped -> lowercase h" ")
in new stack
== End MixMonitor Recording Local/7770405001763@isdndial-c1c8,2
== Spawn extension (macro-dialout-trunk, s, 27) exited non-zero on 'SIP/6811-08da0f38' in
macro 'dialout-trunk'
== Spawn extension (macro-dialout-trunk, s, 27) exited non-zero on 'SIP/6811-08da0f38'
-- Executing Macro("SIP/6811-08da0f38", "hangupcall|") in new stack
-- Executing ResetCDR("SIP/6811-08da0f38", "w") in new stack
-- Hungup 'Zap/1-1'
-- Executing NoCDR("SIP/6811-08da0f38", "") in new stack
-- Executing GotoIf("SIP/6811-08da0f38", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,6)
-- Executing GotoIf("SIP/6811-08da0f38", "1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing GotoIf("SIP/6811-08da0f38", "1?theend") in new stack
-- Goto (macro-hangupcall,s,11)
-- Executing Hangup("SIP/6811-08da0f38", "") in new stack
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/6811-08da0f38' in
macro 'hangupcall'
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/6811-08da0f38'
== End MixMonitor Recording SIP/6811-08da0f38
-- AGI Script queueDial.agi completed, returning 0
-- Executing NoOp("Local/7770405001763@isdndial-c1c8,2", " "Trapped -> lowercase h" ")
in new stack
== End MixMonitor Recording Local/7770405001763@isdndial-c1c8,2
-- Channel 0/1, span 1 received AOC-E charging 0 units
-- Channel 0/1, span 1 received AOC-E charging 0 units
voip1*CLI>
***************************************************************************
B Party Hangs up first
voip1*CLI>
-- Saved useragent "IP SIP Phone/2.2.22" for peer 6805
-- Saved useragent "IP SIP Phone/2.2.22" for peer 6805
-- Channel 0/1, span 1 got hangup request, cause 16
-- Channel 0/1, span 1 received AOC-E charging 0 units
-- Channel 0/1, span 1 got hangup request, cause 16
-- Channel 0/1, span 1 received AOC-E charging 0 units
-- Hungup 'Zap/1-1'
-- Hungup 'Zap/1-1'
-- AGI Script queueDial.agi completed, returning 0
-- Executing Congestion("Local/7770405001763@isdndial-7dc5,2", "") in new stack
== Spawn extension (macro-dialout-trunk, s, 27) exited non-zero on 'SIP/6811-08da0f38' in
macro 'dialout-trunk'
== Spawn extension (macro-dialout-trunk, s, 27) exited non-zero on 'SIP/6811-08da0f38'
-- Executing Macro("SIP/6811-08da0f38", "hangupcall|") in new stack
-- Executing ResetCDR("SIP/6811-08da0f38", "w") in new stack
== Spawn extension (isdndial, 7770405001763, 7) exited non-zero on
'Local/7770405001763@isdndial-7dc5,2'
-- Executing NoOp("Local/7770405001763@isdndial-7dc5,2", " "Trapped -> lowercase h" ")
in new stack
== End MixMonitor Recording Local/7770405001763@isdndial-7dc5,2
-- AGI Script queueDial.agi completed, returning 0
-- Executing Congestion("Local/7770405001763@isdndial-7dc5,2", "") in new stack
== Spawn extension (macro-dialout-trunk, s, 27) exited non-zero on 'SIP/6811-08da0f38' in
macro 'dialout-trunk'
== Spawn extension (macro-dialout-trunk, s, 27) exited non-zero on 'SIP/6811-08da0f38'
-- Executing Macro("SIP/6811-08da0f38", "hangupcall|") in new stack
-- Executing ResetCDR("SIP/6811-08da0f38", "w") in new stack
== Spawn extension (isdndial, 7770405001763, 7) exited non-zero on
'Local/7770405001763@isdndial-7dc5,2'
-- Executing NoOp("Local/7770405001763@isdndial-7dc5,2", " "Trapped -> lowercase h" ")
in new stack
== End MixMonitor Recording Local/7770405001763@isdndial-7dc5,2
-- Executing NoCDR("SIP/6811-08da0f38", "") in new stack
-- Executing GotoIf("SIP/6811-08da0f38", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,6)
-- Executing GotoIf("SIP/6811-08da0f38", "1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing GotoIf("SIP/6811-08da0f38", "1?theend") in new stack
-- Goto (macro-hangupcall,s,11)
-- Executing Hangup("SIP/6811-08da0f38", "") in new stack
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/6811-08da0f38' in
macro 'hangupcall'
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/6811-08da0f38'
== End MixMonitor Recording SIP/6811-08da0f38
-- Executing NoCDR("SIP/6811-08da0f38", "") in new stack
-- Executing GotoIf("SIP/6811-08da0f38", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,6)
-- Executing GotoIf("SIP/6811-08da0f38", "1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing GotoIf("SIP/6811-08da0f38", "1?theend") in new stack
-- Goto (macro-hangupcall,s,11)
-- Executing Hangup("SIP/6811-08da0f38", "") in new stack
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/6811-08da0f38' in
macro 'hangupcall'
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/6811-08da0f38'
== End MixMonitor Recording SIP/6811-08da0f38
voip1*CLI>
*****************************************
-
OK now change the lowercase h line to:
exten => h,1,System( echo "${EPOCH}|${UNIQUEID}|${QUEUENAME}|${AGENT}|COMPLETECALLER|0|${ANSWEREDTIME}" >> /var/log/asterisk/queue_log )
This should hang up the call :)
-
Many Many thanks
That works wonderfully.
You have made my day. Hope you have a great week.
Regards
Mal
-
:D