QueueMetrics forum
QueueMetrics => Running QueueMetrics => Topic started by: gavinlew on April 29, 2009, 21:17:26
-
Hi,
Ive been eager and updated my QM install to 1.5.2, how can I enable IVR activity tracking? Currently all 72 calls that had IVR activity today have been set to Untracked?
Many Thanks,
Gavin
-
You have to configure it manually in the dialplan:
http://queuemetrics.com/manuals/QM_UserManual-chunked/ar01s18.html#_tracking_dnis_and_ivr_information
-
Hi,
I've added the following code to my IVR dialplan (im testing with extensions_additional.conf - which I know is not correct under FreePBX as changes will be lost on a reload via the web interface)
[ivr-2]
include => ivr-2-custom
exten => h,1,Hangup
exten => s,1,Set(MSG=custom/supportqbreakout2)
...
exten => s,n,QueueLog(200,${UNIQUEID},NONE,INFO,IVR|${MYIVR})
This appears to log the following to /var/log/asterisk/queue_log
1241602518|1241602298.59276|200|NONE|EXITWITHKEY|2|1
Which shows, that I exited queue 200 via an IVR and pressed option 2 ?
However, Queuemetrics doesn't analyze this when I perform a quick report and the exit with IVR options still show untracked.
Have I missed something simple here?
Many Thanks,
-
The line should appear BEFORE the call is entered!
-
Hi,
So the code would look like ?;
[ivr-2]
include => ivr-2-custom
exten => h,1,Hangup
exten => s,n,QueueLog(200,${UNIQUEID},NONE,INFO,IVR|${MYIVR})
exten => s,1,Set(MSG=custom/supportqbreakout2)
...
-
Basically yes; I think that you should use something like:
[ivr-2]
exten => h,1,Hangup
exten => s,1,QueueLog(200,${UNIQUEID},NONE,INFO,IVR|${MYIVR})
exten => s,2,Set(MSG=custom/supportqbreakout2)
exten => s,3,Queue(200)
...
make sure that the dialplan does what is expected if uoyu mix numbered and "n" dialplan steps.... :)
-
Hi,
I've moved the line as requested, and the following gets written to /var/log/asterisk/queue_log
1241770900|1241770883.5777|200|NONE|EXITWITHKEY|2|3
However queuemetrics still shows all IVR activity as untracked :(
I am thinking is this because ${UNIQUEID} is not being tracked properly , as the log is showing this as NONE?
[ivr-2]
include => ivr-2-custom
exten => h,1,Hangup
exten => s,1,QueueLog(200,${UNIQUEID},NONE,INFO,IVR|${MYIVR})
exten => s,2,Set(MSG=custom/supportqbreakout2)
exten => s,n,Set(LOOPCOUNT=0)
exten => s,n,Set(__DIR-CONTEXT=default)
exten => s,n,Set(_IVR_CONTEXT_${CONTEXT}=${IVR_CONTEXT})
exten => s,n,Set(_IVR_CONTEXT=${CONTEXT})
exten => s,n,GotoIf($["${CDR(disposition)}" = "ANSWERED"]?begin)
exten => s,n,Answer
exten => s,n,Wait(1)
exten => s,n(begin),Set(TIMEOUT(digit)=3)
exten => s,n,Set(TIMEOUT(response)=10)
exten => s,n,Set(__IVR_RETVM=)
exten => s,n,ExecIf($["${MSG}" != ""],Background,${MSG})
exten => s,n,WaitExten(,)
exten => hang,1,Playback(vm-goodbye)
exten => hang,n,Hangup
exten => 1,1,dbDel(${BLKVM_OVERRIDE})
exten => 1,n,Set(__NODEST=)
exten => 1,n,Goto(timeconditions,3,1)
exten => 2,1,dbDel(${BLKVM_OVERRIDE})
exten => 2,n,Set(__NODEST=)
exten => 2,n,Goto(ext-miscdests,4,1)
exten => 3,1,dbDel(${BLKVM_OVERRIDE})
exten => 3,n,Set(__NODEST=)
exten => 3,n,Goto(ext-miscdests,3,1)
exten => 4,1,dbDel(${BLKVM_OVERRIDE})
exten => 4,n,Set(__NODEST=)
exten => 4,n,Goto(ext-group,600,1)
exten => i,1,Playback(invalid)
exten => i,n,Goto(loop,1)
exten => t,1,Goto(loop,1)
exten => loop,1,Set(LOOPCOUNT=$[${LOOPCOUNT} + 1])
exten => loop,n,GotoIf($[${LOOPCOUNT} > 2]?hang,1)
exten => loop,n,Goto(ivr-2,s,begin)
exten => return,1,Set(MSG=custom/supportqbreakout2)
exten => return,n,Set(_IVR_CONTEXT=${CONTEXT})
exten => return,n,Set(_IVR_CONTEXT_${CONTEXT}=${IVR_CONTEXT_${CONTEXT}})
exten => return,n,Goto(ivr-2,s,begin)
exten => fax,1,Goto(ext-fax,in_fax,1)
; end of [ivr-2]
-
Where is the Queue() command? :-)
You should see that it prints INFO IVR, not EXITWITHKEY.
By chance are you on Asterisk 1.2?
-
Hi,
I'm using Asterisk 1.4 under Centos 5
Im now confused with regards to how this should work :( , my queue is defined as "200" in extensions_additional.conf , with an IVR breakout menu specified - I would like to track the keypresses of how my callers leave the queue , for example if the caller presses 2 - then they will get transferred to our sales team.
I have tried to add the QueueLog string into the "200" context as well which does not work.
I have included the context code below
[ext-queues]
include => ext-queues-custom
exten => 200,1,Macro(user-callerid,)
exten => 200,n,Answer
exten => 200,n,ExecIf($["${QUEUEWAIT}" = ""],Set,__QUEUEWAIT=${EPOCH})
exten => 200,n,Set(__BLKVM_OVERRIDE=BLKVM/${EXTEN}/${CHANNEL})
exten => 200,n,Set(__BLKVM_BASE=${EXTEN})
exten => 200,n,Set(DB(${BLKVM_OVERRIDE})=TRUE)
exten => 200,n,ExecIf($["${REGEX("(M[(]auto-blkvm[)])" ${DIAL_OPTIONS})}" != "1$
exten => 200,n,Set(__NODEST=${EXTEN})
exten => 200,n,GotoIf($["foo${RGPREFIX}" = "foo"]?REPCID)
exten => 200,n,GotoIf($["${RGPREFIX}" != "${CALLERID(name):0:${LEN(${RGPREFIX})$
exten => 200,n,Noop(Current RGPREFIX is ${RGPREFIX}....stripping from Caller ID)
exten => 200,n,Set(CALLERID(name)=${CALLERID(name):${LEN(${RGPREFIX})}})
exten => 200,n,Set(_RGPREFIX=)
exten => 200,n(REPCID),Noop(CALLERID(name) is ${CALLERID(name)})
exten => 200,n,Set(_RGPREFIX=SUP)
exten => 200,n,Set(CALLERID(name)=${RGPREFIX}${CALLERID(name)})
exten => 200,n,Set(MONITOR_FILENAME=/var/spool/asterisk/monitor/q${EXTEN}-${STR$
exten => 200,n,Playback(custom/youareinsupportq)
exten => 200,n,Set(__CWIGNORE=TRUE)
exten => 200,n,Queue(200,t,,)
exten => 200,n,dbDel(${BLKVM_OVERRIDE})
exten => 200,n,Set(__NODEST=)
exten => 200,n,Set(__CWIGNORE=)
exten => 200,n,QueueLog(200,${UNIQUEID},NONE,INFO,IVR|${MYIVR}}
exten => 200,n,Goto(ivr-3,s,1)
exten => 200*,1,Macro(agent-add,200,)
exten => 200**,1,Macro(agent-del,200,200)
-
OK now I understand - it's not the IVR selection before queueing the call, but after ;D that's why you get EXITWITHKEY, and that's 100% correct.
If that's so, you don't need to add the INFO-IVR stuff. You will simply find the exit codes on the Lost Calls page, under IVR choices.
-
Hi,
Yes thats correct, now understood and I can see those keypresses logged.
-
:D