[asterisk-users] 7960 Queue Issue
Robert Lister
robl at linx.net
Tue Nov 6 08:41:13 CST 2007
On Mon, Nov 05, 2007 at 12:09:48PM +1100, Nick Brown wrote:
> Thanks Eric, this is the case. A bit of a shame that it removes the
> functionality for the member to see calls that have not come from a queue
> however there is not much choice in the matter.
It works for me... somehow... I have Cisco 7960 phones also.
I think I add the Local/xx instances into the queue instead of the SIP/
device names, and then have a context that checks the state of the SIP
channel before trying to place a call to it.
(So, member = Local/xxx at agent_call) where agent_call is the context to go to
in the dialplan that handles the agent calls (and passes it to another
queue/voicemail if the queue drops out with full/unavailable etc.)
[agent_call] does some stuff with ChanIsAvail checking if the channel is
free before placing a call, and if it is found to be busy, it returns goes
to a step which returns Busy() which causes the queue processor to move on
to the next person in the queue. (It will go to agent_call again for the
next destination, and so on.)
That way, users can have DDI numbers with call waiting functionality enabled
on the handset if they wish, but for queue calls, it goes to the next
available queue member rather than stacking up all the calls on one phone.
What I have is a simplified (and 1.4/1.2 compatible) version of
Example 2 at:
http://www.voip-info.org/wiki/view/Agents+without+agent+channel
(just look in the [agent_call] bit of this, and you'll see it is using
ChanIsAvail to check the status.)
I did not need all the functionality of this example, so removed a bit of
it, but used it because encountered a few limitations with chan_agent which
meant I couldn't use Agents, so replaced the functionality in dialplan
logic. (which was bit difficult to do, but it works!)
I can send you what I have if you like, but my dialplan is quite complicated
as the setup here allows 'agents' to log in and out from any phone, so the
users extn numbers are essentially portable. (i.e, the handsets have some
meaningless (to the user) extension like "42105" and the user logs in as 710
from that handset. Some database work is done when they log in to map 710 ->
SIP/42105, fix the outgoing caller ID, and add them to their queues.
Alternatively, you might be able to use Agents, but I really cannot
recommend it, as for me, it caused more problems than it solved (problems
with call waiting, transfers, and the fact that the feature it relies on,
AgentCallbackLogin() is deprecated in 1.4 anyway.
Rob
--
Robert Lister - London Internet Exchange - http://www.linx.net/
sip:robl at linx.net - inoc-dba:5459*710 - tel: +44 (0)20 7645 3510
More information about the asterisk-users
mailing list