Agent Group

From Pbxnsip Wiki

Jump to: navigation, search

Contents

Purpose

You may use an Agent Group to queue the incoming calls and dispatch them automatically to a list of agents. Typical scenarios are sales and support teams which have a homogeneous skill profile. The members of this group are called "agents".

Within one agent group, there may be at most one call in ring back state. All other calls are queued until the ringing call gets connected and at least one agent is or becomes available. Even if there are several agents are available, the queue will have only one caller in the ringing state.

The agent group keeps track which extensions are busy and which agents are available. When an agent becomes available, the PBX automatically takes the next waiting call out of the queue, rings the agents and puts the call in ring back state.

Agents can be logged in or out. If they are logged out, the PBX will not dispatch calls to an agent group to them, but it will include them in regular calls and calls to hunt groups.

The difference between agent groups and hunt groups is that the calls in the agent groups are processed one after another, while the hunt group overlaps the processing of the calls. Hunt groups resemble multiple registrations.

Settings

Image:agent_identity.gif

The Agent Group names may be changed after the creation just like you can change the name of an extension (settings "Primary Name" and "Alias Names"). See the documentation about the Extension Identity.

The group itself may have a descriptive name ("Display Name"). This name may be used when the PBX calls an agent and in other occasions.

Image:agent_behavior2.gif

Agents must be extensions and must be listed (separated by space) in the "Agents" setting.

You may leave the "Agents" setting also empty. In this case, you must manually pull the waiting callers out of the queue, for example by calling the call pickup star code. This mode is useful when your agents are more important than the callers and it should be the agents.

The setting "Extensions that may jump in or out" controls which agents may dynamically join or leave the group. The setting may use a list of Wildcard Patterns. If you leave this setting is empty, no extension will have the right to join or leave dynamically. In order to log in or out, the login/logout feature code must be appended with the queue number also see the Feature Codes on how to dynamically join or leave an agent group.

The "Ring Melody" specifies what melody should be used when a call comes in for this agent group. This makes it possible for the agents to distinguish between regular calls and calls to the group by list listening to the alert tone.

Another way to find out that the call goes through the agent group is to use the "From-Header". By default, it will display the calling party. Alternatively, the PBX can display the name of the queue, which is set in the "Display-Name". In many cases, the agents want to see both the name of the queue and the calling party. This can be achieved with the third mode, where the PBX uses the display-name and puts the caller-ID in brackets behind the name. This mode requires that the phone has enough space to display a long number. If you choose this mode, you should choose a short name for the group, so that it takes less space in the display of the phone.

The "Event for connecting the call" tells the PBX when to pick up the line (which means that it sends a SIP 200 Ok code to the calling party), if the line has not been picked up already (for example, by an auto attendant).

  • By default, the PBX will connect the call when the call hits the agent group. In most cases, that should be a reasonable behavior.
  • The setting "music playback" connects the call if the caller has to wait for an available agent and will be put on hold. If the call goes directly to an agent, the queue will wait until the agent picks the call up and then connect the call.
  • The option "agent picks up call" waits until the agent picks up the call, no matter if the PBX will play music on hold and/or queue announcements. This option is useful if the waiting time in the queue is typically very short and there is no risk that the carrier will disconnect the call because of no answer.
  • The option "never connect" will not connect the call at all. This is useful if you want to provide free services to callers, so that the carrier will never see the call connection event. As with the other options, there is a risk that the carrier will not tolerate this behavior and hang up the call after a certain timeout.

When callers are in the queue, they hear music on hold mixed with announcements. The PBX reduces the volume before playing an announcement and increases when it is finished. You may choose music on hold source in the domain settings.

To record an announcement, just dial the recording code followed by another star and the announcement number. For your convenience, you will find these codes at the bottom of the account page. You may specify which accounts may record announcements with the setting "Accounts that may record a message" as a list of Wildcard Patterns. If you leave this setting is empty, all extensions will have this permission.

You may record up to ten announcements. The announcement number "0" is always played when a caller enters the queue, regardless of the number of callers waiting in the queue ("welcome message"). The other announcements "1"-"9" are played in a round-robin fashion.

The "Gap between announcements (s)" tells the PBX how many seconds the PBX should wait between the announcements.

When an agent finished a phone call, it is annoying if the agent gets a new phone call right after the termination of the last call. Sometimes it is even problematic because the SIP phone will not accept an additional call while the last one is being shut down. Therefore, the PBX has a setting called "Agent recovery time". It will make sure that the agent has at least the provided time for recovering from the previous call. In busy call centers, you might make this a short value like two seconds, if you want to give the agent the chance to make some quick notes, you might choose a longer value like one minute (60 seconds). Also, the agent has the opportunity to log out during this time.

Monitoring the queue is another popular requirement in professional and semi-professional environments. Apart from using SOAP and dialog-state or buttons SIP packages, there is a way of sending simple instant messages to extensions. The setting "Send IM to these extensions" does exactly that. The PBX will send one-line text messages to the extensions listed there. SIP phones that support the SIMPLE standard will display the messages on the screen.

The "Daily email report list" is a list of email addresses (seperated by semicolons) that will receive every day a summary of the queue activity. The report has the same format as the status described below.

The "Queue Manager" it allows a manager enters an extension to monitor the agent queue. For example, extension 510 is entered in the Queue Manager, this 510 can login as his extension account to checkout who is in the agent queue. Notice in order for the 510 extension completely monitors agent queue, this extension must have the Agent identity enters in "Show following ACD queues" field as well. In this example here, the Agent identity is "513" extension.

Dialog Permissions are described in Dialog Permissions.

Algorithm

Image:agent_algo.gif

When a caller needs to be connected to an agent, the PBX must make a decision what agent to try next. There are currently two ways of determining which agent should be called next.

  • The "Random" algorithm selects the next agent by just a random number. This is a reasonable algorithm in many environments where it does not really matter which agent processes the call.
  • The "Ring longest idle first" tries to balance the agent’s usage out. The queue keeps a list of the agents and whenever an agent connects a call, the PBX put that agent to the end of the list. This will the agent who was longest idle to the front of the list.
  • "Use preference from the Agent setting" just uses the Agent setting. The agents listed there first will be tried first. If that agent is busy, then the PBX will jump to the second one and so on.

The PBX calculates the state of the queue in fixed time intervals. Whenever such a calculation happens, the PBX checks if an agent became available or the next caller should be pulled out of the waiting state. This interval is set in the settings "Ring stage duration". The default value for that setting is 5 seconds.

In every scheduling interval, the PBX adds only a limited number of agents to the list of ringing agents. This value is set in the setting "Number of agents added per stage". This setting is important in large agent groups, so that not all agents will receive a call at the same time. A typical value for this setting would be 1 or 2; for large queues it seems better to make the scheduling interval shorter.

Timeout Events

Image:agent_aproach.gif

Callers that are at the head of the queue are of special interest. In the case when the caller hears ringback for a certain time, there are two things the system can do:

  • "After hearing ringback for ..." a specific time, the PBX may "include ... additional agents". This is useful when there are additional persons in the office that usually should not be bothered with the calls from the queue, but need to help out when nobody else picks up.
  • "After hearing ringback for ..." a specific time, the PBX may "redirect the call" to a specific destination. This destination may be an internal number, for example a hunt group. It may also be an external number, for example the cell phone of a person that picks up calls after hours.

If the caller already waited a long time in the queue, it might make sense to redirect the call immediately to another destination. This will make sure that the following caller will also get redirected quickly, so that the effective waiting time in the queue will not exceed the specified waiting time.

User Input

Image:agent_input.gif

When the caller is in the queue, he may leave the queue and move to another destination by pressing a key. You just need to specify the destination to enable this feature.

Night Service

Image:agent_night.gif

If you like to use "Night Service", you must define a "Service Flag" first. The agent group will is the status of the service flag to determine where to send the call. If the flag is set, the agent group will redirect the calls directly to the "Night Service Number", which can be an internal account or an external number.

There is a special pattern "#L" that acts like a service flag (available since version 2.1). If all agents are logged out, then this flag will fire and may redirect all calls to the associated night service number.

Please note that you may specify more than one night service flag (seperated by space). In this case the first service flag account corresponds to the first night service number, and the second service flag account corresponds to the second night service number and so on. For example:

Service Flag Account: 123 #L
Night Service Number: 124 125

In this example, the PBX would redirect the call to 124 if service flag 123 is set, and to 125 if all agents are logged out.

SOAP Interface

Image:agent_soap.gif

If you want to use external logic to control the queue behavior, you might want to use the SOAP settings. Please see the SOAP web page about this topic.

Agent log-in and log-out

When a does not want to receive calls, he should call the DND star code. It is not recommended to use the local DND button on the phone, because the PBX will then try to send the call to the agent and put the call into the ringing state.

Agents can also dynamically join and leave the group (see above, "Extensions that may jump in or out").

Queue Status

Image:ag_queue.gif

The web interface has a queue status tab which lists the callers in the queue. This list is refreshed every ten seconds. Some call centers display this web screen on a projector in the room, so that all agents can see how busy the queue is.

Personal tools
Getting Help