ACD problem

Hi,

I am working on a small inbound call center solution that uses an ACD system. I might add an IVR system later on. I only have 2 extensions set up (extensions 1000 and 1001), I want the system to put new calls in a queue if both extensions are busy. I am currently subscribed with a SIP trunk provider and can successfully recieve calls.

queue.conf:

[support]

musicclass=default
strategy=rrmemory
joinempty=no
leavewhenempty=yes
ringinuse=no
Member => Agent/1000,1000

extensions.conf:

[Queues]
exten => 1000,1,Verbose(2,${CALLERID(all)} entering the support queue)
same => n,Queue(support)
same => n,Hangup()

[from_myprovider]
;This is the context setup for incoming calls

exten => DID number,1,Answer
exten => DID number,2,Dial(SIP/1000)
exten => DID number,3,Queue(support) ;not sure if this line belongs here
exten => DID number,4,Hangup

I manually added extension 1000 to the support queue:
*CLI> queue add member SIP/1000 to support

Thank you

You haven’t provided agents.conf and the dialplan has no provision for logging in to any agent, so how to you expect to use agent/1000?

If you are going to queue to SIP/1000 after failing to call it directly, wouldn’t be easier just to queue to it?

I can’t find an actual question in your posting.

Your SIP resource names suggest you haven’t read the security advice.

Thank you for your prompt reply, please note that this is a test environment and I wanted to keep it as simple as possible. According to Asterisk the definitive guide, agents.conf:

“overall the best way to implement queues is through the use of SIP channels. There are two reasons for this. The first is that SIP channels are the only type that provide true device state information. The other reason is that agents are always logged in when using the agent channel, and if you’re using remote agents, the bandwidth requirements may be greater than you wish.”

Basically the question is: Customers can call my number, that call will be directed to either extension 1000 or 1001. If both extensions are in use, I want that 3rd call to be queued. Currently all calls are automatically directed to extension 1000 as shown below:

exten => my number,1,Answer
exten => my number,2,Dial(SIP/1000) ;[color=#FF0000]This needs to be changed to allow calls to be directed to both extensions[/color]
exten => my number,3,Queue(support) ;not sure if this line belongs here
exten => my number,4,Hangup

Can you help me distribute calls between the two extensions?
According to that book agents.conf does a similar job but handles queues differently. Or do I need agents.conf for my system to work?
As quoted: “the dialplan has no provision for logging in to any agent” I m not entirely sure what I have to do here.

Thanks again

Use only queues. Put both SIP phones as members.

I didn’t quite understand by use only queues? Does this mean that i don’t have to use agents.conf? Also what do you mean by “put both SIP phones as members”? Thank you

You don’t have to use agents.conf.

You should not have any agents as members.

You should not use Dial.

There should be two member => lines in the queue, whether done statically or dynamically.

Is this the correct way to do it?

queues.conf
[general]
[support]

musicclass=default
strategy=rrmemory
joinempty=no
leavewhenempty=yes
ringinuse=no
Member => Agent/1000 ;[color=#FF0040]I already had this in place but it still didn’t work[/color]
Member => Agent/1001

Also regarding the previous question, I don’t think that the config below will direct calls to extension 1001 because the second line states that any incomming calls should be routed to extension 1000. How do I change this so that calls are directed to both exensions?

exten => my number,1,Answer
exten => my number,2,Dial(SIP/1000) ;[color=#FF0040]This needs to be changed to allow calls to be directed to both extensions
[/color]exten => my number,3,Queue(support) ;not sure if this line belongs here
exten => my number,4,Hangup

Thank you

You are still putting agents as members but not defining them. The member name should be the / address you want called when there is work in the queue (e.g. SIP/1000, not that the use of 1000 as a resource name is a good idea).

so is this the correct way to do it then?

[general]
[support]

musicclass=default
strategy=rrmemory
joinempty=no
leavewhenempty=yes
ringinuse=no
Member => SIP/1000
Member => SIP/1001

; is this the correct way to define agents?
[agents]
agent => agentid, agentpassword, optionalAgentName
agent => 1000,1000

Thankyou