Queues
Are responsible for hosting new requests (tasks) generated by a customer.
In each precision queue, there are some agents to answer customer requests being queued in the precision queue. Agents become members of precision queues automatically based on their Routing Attributes which are compared to one or more Criteria known as Steps.
Example
For instance, a precision queue requires an agent who lives in Boston, speaks fluent Spanish, and is proficient in troubleshooting a specific piece of equipment. In this case, an agent with the attributes, Boston = True, Spanish = True, and Repair = 10
automatically becomes a part of the precision queue.
Therefore, a Spanish caller in Boston who needs help with the equipment is routed to that particular agent.
Queue Values
Following are the values that are provided while creating a queue:
Name
The name of the queue.
Associated MRD
The MRD (Media Routing Domain) that we want to associate with this queue.Agent Response Time
The time specified for the Agent SLA (Service Level Agreement).Service Level Type
Service Level Threshold
EWT Min Value
The minimum Estimated Wait Time (EWT) value for this queue. The returned EWT will not be lower than this value.EWT Max Value
The maximum Estimated Wait Time (EWT) value for this queue. The returned EWT will not exceed this value.
Note: Please keep in mind the following points:
If no value is provided for the EWT Min or Max bound, the value will be set to NULL. As a result, the returned EWT value will not be bounded.
The minimum value for EWT should be less than the maximum value.
There is no specific limit set for either the maximum or minimum value; users can set any value, as long as it is within the maximum range allowed by an integer. In this case, the maximum value is 2,147,483,647 (the maximum value for an
int
in Java).For more information about EWT, please read the document.
Steps
A precision queue consists of Steps
which are criteria, to associate agents to the queue. A queue can have at most 10 of these steps.
A step consists of a combination of one or multiple expressions. When a request is landed in a queue, the steps are executed to evaluate the routing logic and pick the right agent. You can add one or more steps for one queue. Each step has a step timeout in seconds which determines the time that the system waits before jumping on to the next step in the queue.
After the evaluation of the first step, if the system finds no agent matching the routing logic defined in the step, it jumps to evaluate the next step and keeps doing so until it finds an available agent. Steps are executed in the order they are created.
Each step has a bucket or list of agents associated with it which are used to route customer requests in the queue. At the implementation level, it is the Step
in the queue that has agents associated with it.
Example
We have a Queue Q1 with 2 Steps S1 and S2 which are configured as follows
S1 has associated agents → [A1, A2, A3]
S2 has associated agents → [A4, A5]
The overall queue Q1 has agents A1 to A5 available to it to route requests. When a request comes, the routing engine first tries to assign it to the agents associated with the first step; if no agent is available in the first step, it tries to assign it to the agents associated with the second step and so on as explained above.
Furthermore a precision queue is a multi level queue
Term/criteria
A term/criteria compares an attribute against a value. For example, you can create the following term: Spanish == 10.
Each precision queue can have multiple attributes, and these attributes can be used in multiple terms. For example, to select an agent with an English proficiency value between 5 and 10, the admin may create one term for English > 5 and another for English<10.
Expression
An expression is a combination of one or more terms. For instance, an expression (Boston == true) AND (Spanish == true) AND (Repair == 10)
implies that agents living in BOSTON, fluent in Spanish and excellent in repairing skills are the best matched agents for routing customer requests in this queue.
The expressions are by default evaluated from left to right. For instance, the following expression is evaluated as the following:
|