Agentlogin & Queues

Synopsis
The Agentlogin application is used to login agents.  Through the use of Queues, you are able to send calls into the awaiting agents.

How To Use
The Agentlogin application requires the following
/etc/asterisk/extensions.conf
/etc/asterisk/agents.conf
/etc/asterisk/queues.conf

Syntax
The Login is formed as follows:
Agentlogin([agentnumber])

Note: if no agentnumber is passed, the invalid-login message will be played and prompt for agentnumber and agentpass (if noted in agents.conf).

Example
Outbound dialing, passed to awaiting agents, based on queues.

Agentlogin
The op_ready queue agents go offhook and press ‘#9000’ and hear invalid-login message (and are prompted to enter agentnumber and agentpass to login)

The vr_ready queue agents follow the same process to login.  

(the queue they end up in is based on the separation in the agents.conf)

Queue
Once in a queue, the agents will hear MOH (if defined), or nothing.

When a CONNECT occurs from the outgoing spool, the call is connected to an agent in the op_ready queue.  The agent will hear a ‘beep’ (and MOH will stop if playing), and be connected with that call.

Disposition
When the agent is done with that call they can 

a.  press ‘*’ to disconnect from that call and remain in the op_ready queue.
b.  hangup the phone, the agent will be removed from the op_ready queue
c.  press ‘#8000’ and the call will be blind transferred to the vr_ready queue. 
d.  flashhook…  

/etc/asterisk/extensions.conf

[rep]  ; context assigned to channels for reps/agents in zapata.conf  
; Transfer to vr_ready queue
exten => 8000,1,Queue,vr_ready           ; Connect to Verifier
exten => 8000,2,Playback(demo-echotest)  ; No Verifier Available
enten => 8000,3,Goto(8000,1)             ; Check for Verifier (again)

; Agentlogin to Queues op_ready(3xx), vr_ready(6xx)
exten => 9000,1,Wait,1            ; slight pause, not needed
exten => 9000,2,AgentLogin()  ; will get 'invalid-login', enter agentnum

/etc/asterisk/queues.conf
[op_ready]
music = default
;announce = queue-markq
;context = qoutcon
timeout = 2
retry = 2
maxlen = 0
member => Agent/300
member => Agent/301

[vr_ready]
music = default
;announce = queue-markq
;context = qoutcon
timeout = 15
retry = 5
maxlen = 0
member => Agent/600
member => Agent/601

/etc/asterisk/agents.conf
[agents] 
agent => 300,300,Test Rep - 300
agent => 301,301,Test Rep – 301
agent => 600,600,Test Ver - 600
agent => 601,601,Test Ver – 601

/var/spool/asterisk/outgoing/<filename>
<filename>
Channel: Zap/g2/1408xxxxxxx
MaxRetries: 0
WaitTime: 15
Application: Queue|t
Data: op_ready
Callerid: Your Company <(408) 999-9999>