Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

ON THIS PAGE

Table of Contents
minLevel1
maxLevel2
outlinefalse
typelist
printablefalse

Note

Queues Groups feature has been developed on New Client Experience.
On old installation, to use these kind of features, it's necessary to run the script below during the upgrade on the same machine you already use (in order to add rules to the proxy).
To update the NGINX configuration, run the following script (as root):

curl -u 'public:bs4#)W]h8+VK),RV' --silent --location https://repository.xenialab.com/repository/provisioning/Scripts/motionV3_nginx_update_for_x_client | bash

This script must be launched if you installed the server before Thursday, July 27, 2023.

To avoid issues, we recommend to launch the script while agents and users are not logged in the system and consider that, by running it, a new NGINX configuration file will be installed while the old client configuration file will be saved as backup at the path indicated in the script. Any custom changes made by the user will not be automatically carried over.

Keywords

First of all, you need to know what is meant by:

  • Penalty: you can define Agent Penalty to set his priority in the queue (< penalty value means > priority in receiving interactions). Penalty make the algorithm understand the order in which agents are to be contacted.
    Agent1 with Penalty1 has priority on Agent2 with Penalty3

  • Priority: numeric value from 1 to 10 used to determine the assignment of incoming calls. In fact Queue Priority lets the system know to which queues the calls should be routed first. (> value means > priority in receiving interactions)

  • Timeout (that in this case works as add after): numeric value representing the seconds after which agents in a certain voice queue are added to the list of agents available to handle incoming calls to a specific inbound route (e.g. at the beginning 0'' calls are assigned to Queue1, after 30'' timeout the system adds to the list also agents of Queue2)

  • Inbound Route configurable in XCALLY by associating a public phone number to make e.g. the contact center reachable by voice calls. It’s possible to add more Voice Queues (with relative list of agents with skills to manage the customer) on a single route

Team1 (timeout 10''):
John → Penalty=2
Bill → Penalty=1
James → Penalty=3
Team2 (timeout 10''):
Peter → Penalty=2
Mark → Penalty=2
James → Penalty=1

Scenario

When a call arrives on Team1, the system contacts firstly Bill (lower penalty)➡️ after 10'' without answer, it calls John ➡️ after 10'' without answer it contacts James
If James works also on Team2 with Penalty=1 → James must answer on Team2 firstly and then on Team1.

If supervisor reaches the required SLA on Team1 and not on Team2, he has to increase the priority at inbound route level in order to pass calls to a certain team first (in this case Team2).
Therefore by giving priority to a queue at inbound route level (in case of ring all strategy), calls pass first from the indicated inbound route with higher priority.

To assign priority, supervisor should enter on each queue. To simplify this operation, it’s possible to use Queue Groups.

Queue Groups configuration

Queue groups are the feature that allows to set a priority to several queues at global level.

When calculating priority, the priorities of the different queues are added to the priority entered at queue group level.

  • To create a new Queue Group, you can click on Voice → Queue Groups option and choose +Add group

Image Removedimage-20240208-085123.pngImage Added

On info tab, you can indicate Queue Group Name:

Image Removedimage-20240208-085232.pngImage Added

Note

Consider that Queue Group name must be unique, otherwise the system shows you an error

image-20240131-143519.png

  • while While on Queues tab you can click on + button to enter which queues belong to:

Image Removedimage-20240208-085517.pngImage Added
  • Of each selected queue you can specify relative priority and timeout

Image Removedimage-20240208-104405.pngImage Added

It’s also possible to select multiple queues simultaneously with multiselect option

Image Removed

(if you insert a priority or timeout it will be applied to all selected queues)

image-20240208-104707.pngImage Added

You can apply order filter (by name or id number) by clicking on 3 lines icon and you will see that they turn into an arrow (which indicates that you have applied a filter)

  • So when a route will be associated to this queue group, based on the set timeout, the system will call agents in the queue to be executed + agents in the queues previously contacted without reply. (E.g. system calls before Agents in Support Queue → after 15'' without reply it calls Agents in Sales Queue + Agents in Support Queue)

Image Removedimage-20240208-104803.pngImage Added

If two agents (one belonging to Support and one belonging to Sales) are available at the same time, the call is received by the agent belonging to the queue with higher priority.

Edit Priority and Timeout

If you need to modify a created queue group, you can edit priority or timeout by clicking on relative button in priority/timeout area and the Save

Image Removedimage (10)-20240208-130948.jpgImage Added

Configure Route with Queue Group Application

  • After creating Queue Group, you can configure route (inbound or internal). The same queue group can be associated to different routes.
    On Dialplan Actions, you can add Queue Group Application

image-20240110-150452.png

Application Queues Group requires:

  • Queue Group to consider (by choosing it from the dropdown menu)

  • Global Priority: priority associated to the group associated with the route. By default, queue priorities are applied, but if you indicate global priority at queue group level, it works like a “multiplier” for queues that belong to it. (value from 1 to 10 - default 0)
    If supervisor notices that fewer calls are coming in on a route, he can decide to increase group priority → with same queues and same agents, route with the higher global priority receives calls first

  • Options: you can insert Asterisk options (for more details you can explore Dial - Asterisk Documentation)

  • Music On Hold from the list of audios, which will be reproduced to the caller (default none)

  • Timeout: it works like timeout of normal queues: when it expires, system switches to next application inserted in dialplan (default 300 - required field)

  • flag (true/false) Answer (default true)

Example of Global Priority

Scenario

You create 2 Queue Groups QG1 and QG2, associated to relative queues:


Queue Group QG1, related to 3 queues:
- Support1 [Agent1, Agent2] : Priority 3 - calls executed at sec 0''
- Support2 [Agent3, Agent4] : Priority 2 - calls executed at sec 10''
- Support3 [Agent5, Agent6] : Priority 2 - calls executed at sec 20''
You create an inbound route on phone 0111234 and on action flow you insert Queue Group application, choosing the option QG1 ⤵️
The 3 queues will be contacted with indicated timeout, starting from Support1
→ Sec. 0'' = Support1 with Agent1, Agent2
→ Sec. 10'' = Support1 with Agent1, Agent2 + Support2 with Agent3, Agent4
→ Sec. 20'' = Support1 with Agent1, Agent2 + Support2 with Agent3, Agent4 + Support3 with Agent5, Agent6
Queue Group QG2, related to 3 queues:
- Support1 [Agent1, Agent2] : Priority 3 - calls executed at sec 0''
- Support2 [Agent3, Agent4] : Priority 2- calls executed at sec 10''
- Support3 [Agent5, Agent6] : Priority 2 - calls executed at sec 20''
You create an inbound route on phone 021234 and on action flow:
You insert Queue Group application, choosing the option QG2 ⤵️
The 3 queues will be contacted with indicated timeout, starting from Support1
→ Sec. 0'' = Support1 with Agent1, Agent2
→ Sec. 10'' = Support1 with Agent1, Agent2 + Support2 with Agent3, Agent4
→ Sec. 20'' = Support1 with Agent1, Agent2 + Support2 with Agent3, Agent4 + Support3 with Agent5, Agent6

If supervisor notices that fewer calls are coming in on 021234 route, he can decide to increase group priority of QG2, soroute with the higher global priority receives calls first(and queue group priority works like a “multiplier” for queues below which sums queue priority+global priority).

Agent’s priority for simultaneous presence on multiple queues

Moreover you can work on Agents priority:

Scenario
If you have agent James entered at the same time on 2 different queues (of 2 different queue groups) and you want to give priority to a Support3 Queue, you can enter the agent penalty, indicating it lower on the priority queue:

  • James with Penalty 1 on Queue Support3

  • James with Penalty 3 on Queue Sales3

In this way James will receive calls firstly on Queue Support3