Contact Expert v7.1 for Skype for Business Server
Understanding the Different Aspects of Priority in Contact Expert
Quick Reference
Priority | Direction | Type | Higher Priority |
Valid Values | Default Value | Notes |
---|---|---|---|---|---|---|
Session ("contact") | Inbound | Absolute | Higher value | 0-32767 | 0 | session:contact = 1:1 FIFO sub-queues:
|
Campaign | Outbound | Relative | Higher value | 1-65535 | 1 | - |
Skill ("queue") | Inbound | Relative | Lower value | 0-65535 | 60 | skill:queue = 1:n (best practice: 1:1) 0 = emergency skill value [sec] = LWT target in queue (best effort) this feature can be enabled or disabled |
Task | Blended | Absolute | - | - | - | voice (inbound) > chat (inbound) > email (inbound) > SMS (inbound) > rescheduled task (outbound) > new task (outbound) |
Contact Priority
As a matter of fact, sessions have priority. However, there is a one-to-one relationship between sessions and contacts, therefore we say that contacts have priority for the sake of simplicity. We use the term contact priority as a synonym for session priority hereafter.
When a contact record is created in Contact Expert, a level of priority is assigned which represents a sort of importance. New contact records can be added:
- by an agent manually,
- by Contact Expert automatically, when a new incoming customer request is arrived,
- by importing from an external source.
If no priority is specified explicitly at the point of creation, the contact will get the default priority: 0, which is the lowest priority.
Contact Expert users i.e. administrators, supervisors or agents can select a priority level from a predefined list containing low, medium, high and top options. These levels correspond to a range of numeric values between 0 and 32767.
Contact priority is for inbound requests only.
Sub-queues have absolute priorities. This means that the requests arriving to the higher priority queues will be served first at all times, regardless of the number and waiting time of the requests waiting in lower priority queues.
Contact Priority for Inbound Interactions
For inbound interactions, the four priority levels listed in the Quick Reference table above are used. The system is creating 4 hidden sub-queues 'behind' the business queue defined in the Portal and using the same skill/agent assignment, and the interaction will be routed to the one that corresponds to the priority level of the relevant contact (low to high).
Interactions pertaining to contacts with a higher priority level are routed via the high priority sub-queues, therefore are served sooner than interactions with contacts of a lower priority level. Interactions with contacts of equal priority levels are routed in the same sub-queues and are therefore served on a FIFO basis.
Contact Priority for Outbound Interactions
When an outbound campaign is started, the system sorts the associated contacts based on priority and starts to dial out the ones with the highest numerical value.
For outbound campaigns, the contacts are prioritized based on their numerical priority value (0 to 32767) and not based on the priority levels (low to high). In other words, there are 32767 different priority levels to use in outbound scenarios.
Because outbound interactions might get postponed and rescheduled, the contact priorities are only having an effect at the very first dialout attempts. Afterwards, during the lifetime of an outbound campaign, the contact priority is obviously loosing significance as rescheduled items are getting dialed out, skewing the contact priority list.
Campaign Priority
Campaign priority is for outbound interactions only.
It can be set for each campaign separately using the Contact Expert Portal. The value can be determined between 1-65535, where 1 defines the lowest priority. The higher the number, the higher the priority.
Campaigns have relative priority. This means the remaining contacts will be delivered to agents from all campaigns, but the frequency depends on the campaign priority. More contacts will be processed from a higher priority campaign than from a lower priority campaign within a defined time interval and the ratio of the numbers of the processed contacts is dependent on the ratio of the relative campaign priorities.
Queue Priority
Queue priority is for inbound requests only.
Queue priority vs. skill priority
As a matter of fact, skills have priority. However, there is a 1:n relationship between skills and queues/campaigns. If we presume that a single queue/campaign is assigned to each skill having the same name, we can say that queues have priority for the sake of simplicity. We use the term queue priority as a synonym for skill priority hereafter under the mentioned conditions.
This feature can be enabled or disabled in Contact Expert using the portal by checking the Enable service level based queuing parameter at either of these locations:
- The Skills form.
- The Workflow Settings form of the relevant tenant.
If queue priorities are disabled, there will be no queue prioritization and the standard routing method will be used. If enabled, Contact Expert uses an advanced routing method considering the queue importance during the task delivery.
In this case, a target value must be specified for each skill. This value will be the target level of the Longest Waiting Time (LWT) provided in seconds in the queues assigned to this skill. For example, if the LWT target (LWTT) parameter value is set to 120, the expected maximum waiting time will be 120 seconds in the affected queue(s). This implies that the queues with a lower value have higher "priority". Please note that the name SLT (service level target) is used for the LWTT parameter on the Portal.
Queues have relative priority which is calculated from the LWT/LWTT ratio, which means that the next request to be delivered is always selected according to this calculation.
Queue Priority Examples
Assumptions:
- Skill S1 is assigned to queues Q1 and Q2 and skill S2 assigned to queue Q3:
- S1 → Q1, Q2
- S2 → Q3
- The LWTT set for each skill is:
- LWTTS1 = 60 sec
- LWTTS2 = 120 sec
- The actual LWT in each queue is:
- LWTQ1 = 90 sec
- LWTQ2 = 30 sec
- LWTQ3 = 90 sec
In this case, the LWT/LWTT ratios are:
- Q1: 90/60 = 150%
- Q2: 30/60 = 50%
- Q3: 90/120 = 75%
If an agent has skills S1 and S2, the next request to be delivered to him or her is coming from queue Q1 because it has the highest LWT/LWTT ratio.
This is a "best-effort" way of delivery, so there is no guarantee that the specified LWTT levels are met, but Contact Expert is meant to fulfill these levels. If the actual LWT/LWTT ratio is exactly the same in two different queues, Contact Expert chooses a request from one of the queues randomly.
Emergency Skill
If the Emergency skill option is enabled for a skill, the assigned LWTT will be set to 0 automatically. This means the maximum longest wait time will be 0 second in the associated queues, therefore the LWT/LWTT ratio will be infinite, so every request in these queues will be processed as soon as an agent with the related skill is available.
Note
If more than one skill is put into Emergency mode, then these all will have similar priorities and racing conditions could occur when routing calls from these - the system obviously won't be able to decide which of the equal priority queues should have precedence. Therefore, make sure to set the Emergency mode to a single skill at any one time.
Task Priority
Contact Expert agent tasks have priority based on the media type, the direction and the session state of the task.
Tasks have absolute priority. A task from a lower priority class will be processed after all tasks are delivered from all higher priority classes.
There are three rules to determine the priority of a task:
- Media type: voice > chat > email
- Direction: inbound > outbound
- Session state: rescheduled > new
Based on these rules, the complete merged priority list can be described as per the followings: voice (inbound) > chat (inbound) > email (inbound) > SMS (inbound) > rescheduled task (outbound) > new task (outbound).
It is important that this list can be applied to the requests within a single queue/campaign. If an agent has skills for multiple queues or campaigns and has tasks to be delivered at the same priority level in different queues or campaigns, the request waiting for the longest time will be served first.
Email priority for the same sender address
Contact Expert processes emails based on the contact priority described above — emails received from the same sender address to the same inbound email queue (mailbox) are considered as Follow Up emails. These are distributed to agents when all previous emails of the same correspondence (from the given sender for the given queue) are processed and closed.
Emails received from a given sender to an inbound email queue (mailbox) are passed to agents in the order they have been sent by the sender. However, there are 2 important rules you should keep in mind:
There is no ordering guarantee across multiple inbound queues (mailboxes). It is assumed that emails sent by the same sender to multiple inbound queues have different subjects and such emails can be processed independently. This means that it can easily happen that Email_QueueB_T2 is passed to an agent sooner than Email_QueueA_T1 (where T2 > T1).
Although emails sent by the given sender to the same email queue will be passed to agents in the order the emails have been sent by the sender, currently there is no guarantee that those emails are passed to the same agent. It can easily happen that Email_QueueA_T1 is passed to Agent X and then Email_QueueA_T2 is passed to Agent Y as soon as Agent X closes Email_QueueA_T1.