In this article our discussion is specific to Genesys Contact Center and the use of virtual queues for reporting purposes. We should clarify that this article is not about virtual queuing or the concept of receiving a callback instead of physically waiting for an agent. In Genesys software, virtual queues can be used to achieve greater call detail in real-time and historical reporting.
What is a Virtual Queue?
In Genesys, a virtual queue is a logical queue that represents an internal queue. To understand this statement, it is important to understand how the SIP Server manages a call. When a call arrives at the SIP Server, the SIP Server parks the call and asks Genesys software URS (Universal Routing Software) for a destination for the call. When the SIP Server “parks” the call, it effectively places the call in its large single internal generic queue. For the purposes of routing, no other steps are necessary since this generic queue allows for routing techniques such as skills-based routing. However, if you need to be able to differentiate or report on the type of calls, the internal queue will not provide that level of granularity. This is where virtual queues can help.
Why Use Virtual Queues?
As an example, what if you want a report on the count of assistance calls you received? How do you separate these calls from the other calls in the internal queue? Or, what if you want to know the average agent wait time, but there is a self-service IVR presented to the caller before they are queued for an agent? How would you separate the self-service IVR time from the actual agent wait time?
The answer is to use a virtual queue. The queue is considered virtual since the call is not actually queued there. Instead, the SIP Server associates the call with the virtual queue and generates additional event messages for the call that are relative to the virtual queue. These additional messages can then be used by client components such as real-time and historical reporting.
Let’s consider our assistance calls again. For these calls, in the routing logic, when the process of waiting for an agent starts, we request the SIP Server to associate the call with a specific virtual queue. In technical terms, this results in an event message that denotes the beginning of the association of the call with the virtual queue. In business terms, it denotes that the call has started waiting for an agent. And if you name your virtual queues with business terms, it also denotes the categorization of the call. When the call is delivered to the agent, a second event message is generated that denotes that the call is no longer associated with the virtual queue. In business terms, this denotes the end of the waiting time for an agent. The reporting platforms use these events to determine counts and durations. These in turn are used to calculate averages and other formula-based values.
When to Use Virtual Queues
Now that we have a better understanding of what a virtual queue is and why we would use one, let’s talk about when to use one. The typical use is to group calls. In most call centers, customers call with a purpose. From a business perspective, there is a need to report on calls by their purpose. Using a virtual queue for each purpose would allow for the desired reporting. Further, there is no limit to the number of virtual queues a call can be associated with. This means you can also use virtual queues to group calls in different ways. For example, you could use a virtual queue to count calls relative to a location, as well as another virtual queue to count calls for specific purposes. But a word of caution here. When calls are associated with the virtual queue, the start time for that context is set. If you associate early in the routing flow, this means the wait time will be from that point until the call is hung up or delivered to an agent. If you use this duration in a reporting calculation, make sure you understand what it really means. For example, if you are want it to mean that the call was offered to an agent at a site, then associate to the site virtual queue at the same point you associate with the call type virtual queue.
Steps to Create a Virtual Queue
To create a Genesys virtual queue within your configuration environment, navigate to your “Switch” object. Under the “DNs” folder, create a new “DN” object. Select the type as “Virtual Queue.” Give it a unique name, and set the alias field to the same value as the name. Now you can use the virtual queue on your target block in the “Virtual Queue” field.
The use of virtual queues can amplify the amount of detailed information about how well your contact center is meeting the needs of customers. For more information on how to improve your contact center’s performance using virtual queues and other call center technology best practices, feel free to reach out to us.