Here is the CLI (at the bottom of this post) of an outgoing call, I think I have more then one issue, we had the from-agent added by Loway last year for tracking outgoing calls, what we need now after growing pains is the ability to track different outgoing queues for customers. So I added this piece of the dial plan and added the additional outgoing queues to queuemetrics but again no caller ID. If I am reading this right all of the calls for this piece of the dial plan are going to the " exten => 28,9,Goto(qm-queuedial,s,1) " which is carrying no caller ID?
; extension 28: agent custom dial
exten => 28,1,Answer
exten => 28,2,NoOp( "QM: Agent Custom Dial. Dialing ${EXTTODIAL} on queue ${OUTQUEUE} made by '${QM_LOGIN}'" )
exten => 28,3,Set(QDIALER_QUEUE=${OUTQUEUE})
exten => 28,4,Set(QDIALER_NUMBER=${EXTTODIAL})
exten => 28,5,Set(QDIALER_AGENT=Agent/${AGENTCODE})
exten => 28,6,Set(QDIALER_CHANNEL=Zap/g0/${QDIALER_NUMBER})
exten => 28,7,Set(QueueName=${QDIALER_QUEUE})
exten => 28,8,MixMonitor(Q-${QDIALER_QUEUE}-${UNIQUEID}.WAV|b|)
exten => 28,9,Goto(qm-queuedial,s,1)
exten => 28,10,Hangup
I think this is where I need the caller ID for any of the different outgoing queues I have built? I just don't know where to place the caller ID or if I can do this here?
[qm-queuedial]
; We use a global variable to pass values back from the answer-detect macro.
; STATUS = U unanswered
; = A answered (plus CAUSECOMPLETE=C when callee hung up)
; The 'g' dial parameter must be used in order to track callee disconnecting.
; Note that we'll be using the 'h' hook in any case to do the logging when channels go down.
; We set the CDR(accountcode) for live monitoring by QM.
;
exten => s,1,NoOp,Outbound call -> A:${QDIALER_AGENT} N:${QDIALER_NUMBER} Q:${QDIALER_QUEUE} Ch:${QDIALER_CHANNEL}
exten => s,n,Set(CDR(accountcode)=QDIALAGI)
exten => s,n,Set(ST=${EPOCH})
exten => s,n,Set(GM=QDV-${QDIALER_AGENT})
exten => s,n,Set(GLOBAL(${GM})=U)
exten => s,n,Set(GLOBAL(${GM}ans)=0)
exten => s,n,Macro(queuelog,${ST},${UNIQUEID},${QDIALER_QUEUE},${QDIALER_AGENT},CALLOUTBOUND,-,${QDIALER_NUMBER})
exten => s,n,Dial(${QDIALER_CHANNEL},300,gM(queuedial-answer^${UNIQUEID}^${GM}^${QDIALER_QUEUE}^${QDIALER_AGENT}^${ST}))
exten => s,n,Set(CAUSECOMPLETE=${IF($["${DIALSTATUS}" = "ANSWER"]?C)})
"CLI from an Agent Dial button"
-- Executing [201@from-internal:1] GotoIf("Local/201@from-internal-3f8f,2", "1?ext-local|201|1") in new stack
-- Goto (ext-local,201,1)
-- Executing [201@ext-local:1] Macro("Local/201@from-internal-3f8f,2", "exten-vm|201|201") in new stack
-- Executing [s@macro-exten-vm:1] Macro("Local/201@from-internal-3f8f,2", "user-callerid") in new stack
-- Executing [s@macro-user-callerid:1] Set("Local/201@from-internal-3f8f,2", "AMPUSER=") in new stack
-- Executing [s@macro-user-callerid:2] GotoIf("Local/201@from-internal-3f8f,2", "1?report") in new stack
-- Goto (macro-user-callerid,s,11)
-- Executing [s@macro-user-callerid:11] GotoIf("Local/201@from-internal-3f8f,2", "0?continue") in new stack
-- Executing [s@macro-user-callerid:12] Set("Local/201@from-internal-3f8f,2", "__TTL=64") in new stack
-- Executing [s@macro-user-callerid:13] GotoIf("Local/201@from-internal-3f8f,2", "1?continue") in new stack
-- Goto (macro-user-callerid,s,20)
-- Executing [s@macro-user-callerid:20] NoOp("Local/201@from-internal-3f8f,2", "Using CallerID "" <>") in new stack
-- Executing [s@macro-exten-vm:2] Set("Local/201@from-internal-3f8f,2", "RingGroupMethod=none") in new stack
-- Executing [s@macro-exten-vm:3] Set("Local/201@from-internal-3f8f,2", "VMBOX=201") in new stack
-- Executing [s@macro-exten-vm:4] Set("Local/201@from-internal-3f8f,2", "EXTTOCALL=201") in new stack
-- Executing [s@macro-exten-vm:5] Set("Local/201@from-internal-3f8f,2", "CFUEXT=") in new stack
-- Executing [s@macro-exten-vm:6] Set("Local/201@from-internal-3f8f,2", "CFBEXT=") in new stack
-- Executing [s@macro-exten-vm:7] Set("Local/201@from-internal-3f8f,2", "RT=15") in new stack
-- Executing [s@macro-exten-vm:8] Macro("Local/201@from-internal-3f8f,2", "record-enable|201|IN") in new stack
-- Executing [s@macro-record-enable:1] GotoIf("Local/201@from-internal-3f8f,2", "1?check") in new stack
-- Goto (macro-record-enable,s,4)
-- Executing [s@macro-record-enable:4] AGI("Local/201@from-internal-3f8f,2", "recordingcheck|20100709-105005|1278687005.372126") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/recordingcheck
recordingcheck|20100709-105005|1278687005.372126: Inbound recording enabled.
recordingcheck|20100709-105005|1278687005.372126: CALLFILENAME=20100709-105005-1278687005.372126
-- AGI Script recordingcheck completed, returning 0
-- Executing [s@macro-record-enable:999] MixMonitor("Local/201@from-internal-3f8f,2", "20100709-105005-1278687005.372126.wav||") in new stack
-- Executing [s@macro-exten-vm:9] Macro("Local/201@from-internal-3f8f,2", "dial|15|tr|201") in new stack
-- Executing [s@macro-dial:1] GotoIf("Local/201@from-internal-3f8f,2", "1?dial") in new stack
-- Goto (macro-dial,s,3)
-- Executing [s@macro-dial:3] AGI("Local/201@from-internal-3f8f,2", "dialparties.agi") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/dialparties.agi
== Begin MixMonitor Recording Local/201@from-internal-3f8f,2
dialparties.agi: Starting New Dialparties.agi
== Parsing '/etc/asterisk/manager.conf': Found
== Parsing '/etc/asterisk/manager_additional.conf': Found
== Parsing '/etc/asterisk/manager_custom.conf': Found
== Manager 'admin' logged on from 127.0.0.1
dialparties.agi: Caller ID name is 'unknown' number is 'unknown'
dialparties.agi: Methodology of ring is 'none'
-- dialparties.agi: Added extension 201 to extension map
-- dialparties.agi: Extension 201 cf is disabled
-- dialparties.agi: Extension 201 do not disturb is disabled
-- dialparties.agi: DbDel CALLTRACE/201 - Caller ID is not defined
-- dialparties.agi: Filtered ARG3: 201
== Manager 'admin' logged off from 127.0.0.1
-- AGI Script dialparties.agi completed, returning 0
-- Executing [s@macro-dial:7] Dial("Local/201@from-internal-3f8f,2", "SIP/201|15|tr") in new stack
-- Called 201
-- SIP/201-0a1a0c08 is ringing
-- SIP/201-0a1a0c08 answered Local/201@from-internal-3f8f,2
-- Executing [28@queuemetrics:1] Answer("Local/201@from-internal-3f8f,1", "") in new stack
-- Executing [28@queuemetrics:2] NoOp("Local/201@from-internal-3f8f,1", " "QM: Agent Custom Dial. Dialing 4493548 on queue q-999 made by agent/201" ") in new stack
-- Executing [28@queuemetrics:3] Set("Local/201@from-internal-3f8f,1", "QDIALER_QUEUE=q-999") in new stack
-- Executing [28@queuemetrics:4] Set("Local/201@from-internal-3f8f,1", "QDIALER_NUMBER=4493548") in new stack
-- Executing [28@queuemetrics:5] Set("Local/201@from-internal-3f8f,1", "QDIALER_AGENT=Agent/201") in new stack
-- Executing [28@queuemetrics:6] Set("Local/201@from-internal-3f8f,1", "QDIALER_CHANNEL=Zap/g0/4493548") in new stack
-- Executing [28@queuemetrics:7] Set("Local/201@from-internal-3f8f,1", "QueueName=q-999") in new stack
-- Executing [28@queuemetrics:8] MixMonitor("Local/201@from-internal-3f8f,1", "Q-q-999-1278687005.372125.WAV|b|") in new stack
-- Executing [28@queuemetrics:9] Goto("Local/201@from-internal-3f8f,1", "qm-queuedial|s|1") in new stack
-- Goto (qm-queuedial,s,1)
-- Executing [s@qm-queuedial:1] NoOp("Local/201@from-internal-3f8f,1", "Outbound call -> A:Agent/201 N:4493548 Q:q-999 Ch:Zap/g0/4493548") in new stack
-- Executing [s@qm-queuedial:2] Set("Local/201@from-internal-3f8f,1", "CDR(accountcode)=QDIALAGI") in new stack
-- Executing [s@qm-queuedial:3] Set("Local/201@from-internal-3f8f,1", "ST=1278687006") in new stack
-- Executing [s@qm-queuedial:4] Set("Local/201@from-internal-3f8f,1", "GM=QDV-Agent/201") in new stack
-- Executing [s@qm-queuedial:5] Set("Local/201@from-internal-3f8f,1", "GLOBAL(QDV-Agent/201)=U") in new stack
== Setting global variable 'QDV-Agent/201' to 'U'
-- Executing [s@qm-queuedial:6] Set("Local/201@from-internal-3f8f,1", "GLOBAL(QDV-Agent/201ans)=0") in new stack
== Begin MixMonitor Recording Local/201@from-internal-3f8f,1
== Setting global variable 'QDV-Agent/201ans' to '0'
-- Executing [s@qm-queuedial:7] Macro("Local/201@from-internal-3f8f,1", "queuelog|1278687006|1278687005.372125|q-999|Agent/201|CALLOUTBOUND|-|4493548") in new stack
-- Executing [s@macro-queuelog:1] QueueLog("Local/201@from-internal-3f8f,1", "q-999|1278687005.372125|Agent/201|CALLOUTBOUND|-|4493548|") in new stack
-- Executing [s@qm-queuedial:8] Dial("Local/201@from-internal-3f8f,1", "Zap/g0/4493548|300|gM(queuedial-answer^1278687005.372125^QDV-Agent/201^q-999^Agent/201^1278687006)") in new stack
-- Requested transfer capability: 0x00 - SPEECH
-- Called g0/4493548
-- Local/201@from-internal-3f8f,1 requested special control 20, passing it to Zap/1-1
-- Zap/1-1 is proceeding passing it to Local/201@from-internal-3f8f,1
-- Local/201@from-internal-3f8f,1 requested special control 20, passing it to Zap/1-1
-- Local/201@from-internal-3f8f,1 requested special control 20, passing it to Zap/1-1
-- Zap/1-1 answered Local/201@from-internal-3f8f,1
-- Executing [s@macro-queuedial-answer:1] NoOp("Zap/1-1", ""Macro: queuedial-answer UID:1278687005.372125 GR:QDV-Agent/201 Q:q-999 A:Agent/201 E:1278687006"") in new stack
-- Executing [s@macro-queuedial-answer:2] Set("Zap/1-1", "NOW=1278687007") in new stack
-- Executing [s@macro-queuedial-answer:3] Set("Zap/1-1", "WD=1") in new stack
-- Executing [s@macro-queuedial-answer:4] Macro("Zap/1-1", "queuelog|1278687007|1278687005.372125|q-999|Agent/201|CONNECT|1") in new stack
-- Executing [s@macro-queuelog:1] QueueLog("Zap/1-1", "q-999|1278687005.372125|Agent/201|CONNECT|1||") in new stack
-- Executing [s@macro-queuedial-answer:5] Set("Zap/1-1", "GLOBAL(QDV-Agent/201)=A") in new stack
== Setting global variable 'QDV-Agent/201' to 'A'
-- Executing [s@macro-queuedial-answer:6] Set("Zap/1-1", "GLOBAL(QDV-Agent/201ans)=1278687007") in new stack
== Setting global variable 'QDV-Agent/201ans' to '1278687007'
-- Executing [s@macro-queuedial-answer:7] NoOp("Zap/1-1", ""Macro queuedial-answer terminating" ") in new stack
== Parsing '/etc/asterisk/manager.conf': Found
== Parsing '/etc/asterisk/manager_additional.conf': Found
== Parsing '/etc/asterisk/manager_custom.conf': Found
== Manager 'admin' logged on from 127.0.0.1
== Manager 'admin' logged off from 127.0.0.1
== Manager 'admin' logged off from 127.0.0.1
== Spawn extension (macro-dial, s, 7) exited non-zero on 'Local/201@from-internal-3f8f,2' in macro 'dial'
== Spawn extension (macro-dial, s, 7) exited non-zero on 'Local/201@from-internal-3f8f,2' in macro 'exten-vm'
== Spawn extension (macro-dial, s, 7) exited non-zero on 'Local/201@from-internal-3f8f,2'
-- Executing [h@macro-dial:1] Macro("Local/201@from-internal-3f8f,2", "hangupcall") in new stack
-- Executing [s@macro-hangupcall:1] ResetCDR("Local/201@from-internal-3f8f,2", "w") in new stack
-- Executing [s@macro-hangupcall:2] NoCDR("Local/201@from-internal-3f8f,2", "") in new stack
-- Executing [s@macro-hangupcall:3] GotoIf("Local/201@from-internal-3f8f,2", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,6)
-- Executing [s@macro-hangupcall:6] GotoIf("Local/201@from-internal-3f8f,2", "1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing [s@macro-hangupcall:9] GotoIf("Local/201@from-internal-3f8f,2", "1?theend") in new stack
-- Goto (macro-hangupcall,s,11)
-- Executing [s@macro-hangupcall:11] Hangup("Local/201@from-internal-3f8f,2", "") in new stack
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'Local/201@from-internal-3f8f,2' in macro 'hangupcall'
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'Local/201@from-internal-3f8f,2'
== End MixMonitor Recording Local/201@from-internal-3f8f,2
-- Hungup 'Zap/1-1'
== Spawn extension (qm-queuedial, s,
exited non-zero on 'Local/201@from-internal-3f8f,1'
-- Executing [h@qm-queuedial:1] NoOp("Local/201@from-internal-3f8f,1", " "Call exiting: status A answered at: 1278687007 DS: ANSWER" ") in new stack
-- Executing [h@qm-queuedial:2] Goto("Local/201@from-internal-3f8f,1", "case-A") in new stack
-- Goto (qm-queuedial,h,7)
-- Executing [h@qm-queuedial:7] Set("Local/201@from-internal-3f8f,1", "COMPLETE=COMPLETEAGENT") in new stack
-- Executing [h@qm-queuedial:8] Set("Local/201@from-internal-3f8f,1", "WT=1") in new stack
-- Executing [h@qm-queuedial:9] Set("Local/201@from-internal-3f8f,1", "CT=2") in new stack
-- Executing [h@qm-queuedial:10] Macro("Local/201@from-internal-3f8f,1", "queuelog|1278687009|1278687005.372125|q-999|Agent/201|COMPLETEAGENT|1|2") in new stack
-- Executing [s@macro-queuelog:1] QueueLog("Local/201@from-internal-3f8f,1", "q-999|1278687005.372125|Agent/201|COMPLETEAGENT|1|2|") in new stack
-- Executing [h@qm-queuedial:11] Hangup("Local/201@from-internal-3f8f,1", "") in new stack
== Spawn extension (qm-queuedial, h, 11) exited non-zero on 'Local/201@from-internal-3f8f,1'
== End MixMonitor Recording Local/201@from-internal-3f8f,1
Thanks again Richie