Routing to Agents
Buzzeasy allows routing inbound conversations to human agents using a highly flexible attribute capabilities matching process. The system selects target agents by comparing their capabilities to the ones the workflow associates to the conversation. Whoever matches will be a potential target to receive the conversation.
These qualified agents form a queue where the system offers queue treatment services to engage the waiting customers.
Setting Up Routing
The steps explained in detail in the following chapters cover these topics in this order:
- Creating user accounts for agents and supervisors in Buzzeasy User Manager.
- Creating attributes & setting their capability levels.
- Associate agent capability matching rules.
- For voice and webchat conversations, set up a queue treatment too.
- In the workflow, define the required attribute capabilities to match the ones assigned to the target agents.
Creating Attributes
In order to route conversations to proper agents, you need to create the attributes, associate them to the designated agents and specify their capability levels.
Open the Buzzeasy portal, navigate to Agents.
Click on an existing agent or create a new one and save it. Then click in the Attributes field, to see the list of all the existing attributes.
Start typing the name of the attribute you wish to associate this agent to, or to create a new one, and then click the name of the one you are looking for. The selected (or new) attribute is now added to the list to associate to this agent.
Repeat these steps until all the skill attributes are set for this agent.
Click Save.
An example attribute capability association would be Spanish level 8
to designate that this particular agent has a Spanish language skill with level 8.
You can associate any number of attributes to an agent.
Disabling Attributes
Attributes can be disabled or enabled on the portal. The system eliminates disabled attributes when hunting for agents to route queued conversations. This is a quick way to alter the routing logic for agents associated to a given attribute.
Open the Buzzeasy portal, navigate to Agents and select the entry of interest.
In the attributes list, click the Enabled toggle button to disable or enable the given attribute.
Click Save.
Deleting Attributes
Attributes cannot be deleted explicitly. They are removed automatically when they are no longer in use.
If there are no attribute associations with any agents, either because the attribute has been removed from all agents, or all agents with the attribute association are deleted, then that attribute is removed. Seeediting agents and deleting agents.
Resource Capability Management
Note
This functionality has been removed from our old administration portal as you can achieve the same functionality in the new portal when associating the attributes of the agents. See Administering Agents
Creating Routing Rules
Note
It is no longer necessary to create routing rules. Buzzeasy will now automatically set the routing rule for you, using values equal to or greater than the attribute you've specified in the workflow. For more information on Workflow routing refer to the routing tab in Workflows.
Routing rules define how agent capabilities are matched for the ones set in the workflow.
Open the Buzzeasy portal and navigate to Digital > Routing.
Select a Company (this might already have been set for you).
Specify Task Sorting to establish in what order will qualified tasks wait for an agent be routed. When not set, the system sorts tasks by ByQueueTime, but you can also set ByPriorityAndQueueTime too.
See priority based routing section for further details on this.
Click Update to save the Task Sorting setting.
Click New Rule Set to create a new rule set that will contain your routing rules.
Add a descriptive Name to the rule set, and specify the Company (this might have already been set for you).
Select an attribute in the Resource Property dropdown.
Select a Match Type operand that will define how will the attribute capability value assigned to the work item in the workflow be compared to the attribute capability value associated to the agents.
Select a Data Type that controls how the matching is performed.
Check the Optional checkbox if you are OK with this rule to be bypassed during the capability matching operation. This can happen if the system fails to find agents with all the capabilities defined, in which case it retries the matching process but with all Optional items removed.
Click the Sorting tab to specify how to sort the list of agents matching the capability requirements, in order to choose the best candidate when there are more than one.
Select the first Attribute, its Data Type and Sort Order to define the basis of sorting the agents based on this attribute.
Repeat adding sort specifications for all involved attributes.
Click Submit.
Carrying on with our example, assuming the workflow associated a Spanish 5
capability to the current work item, a routing rule of Spanish >= Number
with default task sorting, and an agent sorting of Spanish, Number, Decreasing
will perform the followings:
- Sort all qualified tasks based on their time spent waiting in the queue, picking the one that has waited the most.
- Find all agents with
Spanish
attribute capability value>= 5
. - If more than one agent is found, sort them based on the
Spanish
attribute capability value in a numerical decreasing order. - Pick the top agent in the list.
Special Attributes
The following attributes have special meanings in the workflow:
* |
Read "all other". If added to a rule set, the system will treat all further attribute capabilities associated to the work item as per the matching rule of this entry. The most frequent use case is to add it as the last rule set entry with Ignore match type – this will make sure the agent is matched using whatever rule set entries were defined above this line, even if there are other attribute capabilities associated to the work item. If you add it to a rule in a rule set with this single entry (or to the first rule in the list), you force the agent to be matched for any attribute associated to the work item. |
The special attributes are designed to be used in the workflows only, do not assign these to agents, otherwise you defeat the above functionalities.
Priority Based Routing
Buzzeasy supports priority routing. This feature is not configurable in the portal. Refer to Geomant Engineers to set this up for you.
Creating Queue Treatments
Customers who reached a Channel to whom Buzzeasy is unable to find a qualified and available agent will stay in a queue, waiting. Being a stressful situation it is in the best interest of contact centers to try to keep this time to the absolute minimum, and offer alternate options to waiting.
Buzzeasy provides a dynamic, script based queue treatment for this scenario.
Note
Queue treatments are available for webchat and voice media types. It is not available for email, WhatsApp and Facebook.
Open the Buzzeasy portal and navigate to Digital > Queue Treatments.
Select a Company (this might have been preselected for you).
Click New Queue Treatment.
Provide a meaningful Name.
Specify a Queue Timeout value in seconds. When the customer waits this amount of time waiting in the queue, the QueueTimeout even is raised in the workflow, see Agents Events section of the Workflow article.
The Upload announcement bundles button provides a shortcut to the Announcements menu.
Add a treatment step by selecting a Step Type, and specify a Parameter for it. See Queue Treatment Steps section below.
Click *Add to add the step to the treatment script.
Add any number of further steps you need for your Queue Treatment.
Click Submit to save the resource.
Queue Treatment Steps
You build your queue treatment script step by step using the following elements:
Wait | The system waits for the amount of seconds specified, before it proceeds executing the next step. |
Send | The system sends a message to the customer. If you specify a Text message, the system sends it to the customer as a chat message. For voice media, the text message is uttered to the customer using text-to-speech technology. You can also select the Wav File type, and enter the publicly accessible URL of your audio file. Alternatively, you can drop a properly formatted audio file into this field to store at Buzzeasy. Buzzeasy can repeat the wav Files – this is useful for music-on-hold scenarios. Select the Position In Queue option for the system to play back the positional text or media files you uploaded as a Queue Position Announcement bundle. For further details see the offering queue position announcements chapter. You can also select the Offer Callback option to allow callers to skip waiting in the queue by calling them back when an agent becomes available. See the offering callback in queue chapter for further details. |
Goto | This will specify what other step in the script to execute next. |
Stop | This tells the system to finish the queue treatment. |
As an example, let's assume you'd like to set up a music-on-hold for a voice channel, you'd configure the following queue treatment script:
Queue Timeout: 300 seconds
Step | Step Type | Parameter |
---|---|---|
0 | Send | Text: "All our agents are busy, please wait." |
1 | Wait | 7 seconds |
2 | Send | Waw file: Enter the URL of WAV file or drop it into the File URL field, check Repeat |
3 | Wait | 30 seconds |
4 | Send | Text: "We are sorry, this is taking longer than expected, please stay with us." |
5 | Goto | Step 3 |
The above script would let the caller know that there was no agent available to handle the request right away, using a Wait step (#1) to allow for the system to utter this message to the caller, then would immediately start to play a music-on-hold audio file. After 30 seconds it would utter a second announcement about the wait time taking longer than expected, and then would continue playing the wav file on repeat. This cycle is repeated, the customer being informed that the wait is taking longer than expected every 30 seconds.
Since however we also set a queue timeout of 300 seconds, this won't be an endless loop. The workflow can be configured to react on the QueueTimeout event by transferring the call to another queue, an external number, IVR, callback service, etc.
Queue Treatment Audio File Format
If using audio files, make sure it is in WAV, 8-bit, aLaw or uLaw format (honouring telecommunications requirements of the Buzzeasy geo region your tenant is homed in).
Offering Callback In Queue
Buzzeasy provides the ability for callers to opt-in for a callback while waiting in a voice queue, so they could save time by letting the system call them back as soon as a qualified agent becomes available.
In the target
Send
queue treatment step, specify the Type as Offer Callback.Configure the optional Callback Offer type Announcement in the Announcements menu. See Using Callback Offer Announcement Bundles for further details. Without Callback Offer Announcements, the system will play a default, hardwired, text-to-speech callback offer and confirmation message to the caller, in English.
When enabled, the system will listen for the callers to press 1
on their phone dialpad while waiting in the queue. If they do, their callback request is stored in an outbound campaign created for this purpose. Such campaigns are named like "Callback campaign for channel (xx)
" where xx would be the actual numerical ID of the Channel the customer call landed in.
Callback requests are contact records in the dedicated campaign, representing outbound call request to the customers. The system will attempt to queue these right away, however if this is not possible – for example because no qualified agents are available at the time – it will fall back to standard campaign contact record processing rules.
Note
The system will not offer the callback functionality for customers with blocked/hidden or invalid caller IDs.
Any customer who has previously requested a callback will not receive a callback offer on a subsequent call.
Once the callback has been resolved, the customer will be presented with the callback offer in future calls.
Modifying Callback Campaigns
Callback campaigns, while created automatically, can be modified to fulfill different business requirements. Examples of valid modifications include:
Canceling individual callback contact records.
Stopping and restarting callback task delivery from the campaign.
Specifying a different channel to deliver callback tasks.
When specifying a different channel to deliver callback tasks, existing callback requests will not be sent through the newly selected channel, regardless of the contact records state. Only newly requested callbacks will be delivered to the newly selected channels.
Even if you remove all Callback offer Send steps in a Queue Treatment, the relevant campaign will still be retained, it will not be deleted.
Note, that even if a callback campaign is deleted, the system will keep on regenerating these as long as there is a Callback offer Send step in the Queue Treatment.
Set a Callback Timeout
A Callback specific timeout can be set within the Queue Treatment > Callback queue timeout. If a value is not set, callbacks will timeout based on the configured Workflow idle timeout. Without a Workflow idle timeout the default 24 hour timeout is used. Note that the Callback timeout value can not be greater than the Workflow idle timeout.
Tip
The system will not start reacting to the caller pressing 1
before an Offer Callback Send step is executed in the queue treatment. Would you like your callers to be able to request a callback as fast as possible, place the Offer Callback as close to the beginning of your queue treatment sequence as possible.
Using Callback Offer Announcement Bundles
Audio files for callback offer announcements are uploaded in Announcement Bundles. A Callback Offer type announcement bundle is a flat ZIP package – no folders inside – that can contain the following files only:
confirmation.wav
offer.wav
The offer.wav
should contain a message about the callback option, for example "Would you like to skip waiting, we are happy to call you back as soon as a qualified agent becomes available! In this case please press 1 on your phone any time while waiting in the queue."
The confirmation.wav
should contain a message reassuring the caller that the callback was scheduled, for example "Your callback request was scheduled. We will call you back as soon as possible, you are free to hang up, thank you for your call!".
Both of these files are optional, but you can not upload an empty zip package. Buzzeasy will play a default, text-to-speech based, English language message in place of the missing files.
Offering Queue Position Announcements
Queue Treatments can be configured to play queue position announcements using either the text-to-speech method, or using audio files.
In the target
Send
queue treatment step, specify the Type as Position in Queue.For a text based announcement, select Text and enter the text the system should speak to the caller. Use the
<position>
syntax to place the position indicator value into your message.For an audio file based announcement, select Wav File. You don't need to do anything else in the Queue Treatment itself, but you need to set up the announcement files. See using announcement bundles chapter.
Using Queue Position Announcement Bundles
Audio files for queue position announcements are uploaded in Announcement Bundles. A Queue Position type announcement bundle is a flat ZIP package – no folders inside – that can contain the following files only:
default.wav
1.wav
,2.wav
,3.wav
and so on
The default.wav
is mandatory, it should contain a generic message about why the caller is waiting in the queue, for example "We are experiencing high volume of calls at the moment, please hold the line and we will be with you shortly!".
Position indicator files are optional. If you do not upload any, or the caller is in a queue position you did not upload a position indicator file for, the system will play the default.wav
file instead. If used, position indicator files should contain a complete message, for example "You are at position X in the queue. Please wait, we will be with you shortly!" where X should be the actual number the indicator file name refers to. Buzzeasy uses the file name to know which position message to play.
Announcement bundles are tenant level business entities, meaning there is a single bundle for each bundle type per tenant.
Note
Buzzeasy rejects announcement bundle upload attempts if the following rules are not honoured:
The announcement bundle file name can be anything, but it must have a
.zip
extension and be a proper ZIP archive, with no folders inside.The audio files' names inside the bundle must either be
default.wav
orX.wav
where X is a number, starting from 1.The size of the ZIP package must be less than 30Mb.
Media files must be in Queue Treatment audio file format.
Using Queues
Tasks are routed to agents via queues. You configure this by creating Queue segments in your workflows.
The following steps assume Attributes, Resource Capability Management entries, Routing Rules and Queue Treatments are all configured already, and that there is an existing Workflow with no routing configured yet, but associated to a working Channel.
Open the Buzzeasy portal and navigate to Digital > Workflows, then click Edit on the entry of interest.
Set the Agent Channel Connector to Buzzeasy.
Click the Routing tab and the Add Queue button in the Queues section.
Enter a unique Name for this queue reference and enter a dummy value for the Phone Number – this property is irrelevant for the Buzzeasy Agent application users, though is in use for Geomant Contact Expert webchat media, documented elsewhere.
Select the proper Queue Treatment.
Specify the Maximum number of queued conversations to be able to trigger the MaxQueueSizeReached event so workflows can act upon 'queue full' situations.
Specify the Performance Dashboard Queue SLA - value in seconds, this will be used to calculate the Queue SLA for the Agent Performance Dashboard. The system will retrieve this setting within 24 hours.
Specify the Performance Dashboard Abandoned Threshold - value in seconds, this will be used to not count Customer-disconnected calls as abandoned if the threshold is not reached. This setting applies to Agent Performance Dashboard Abandoned KPI only. The system will retrieve this setting within 24 hours.
Select the required Routing Rule in the Selection Type dropdown.
Assuming you wish to route the task based on attribute capabilities, select Route Property in the left-most dropdown of the Properties section. See the direct routing to agent section for alternate routing options.
Select the proper attribute in the second dropdown from the left.
Specify whether the capability value is going to be defined as a Constant, or will be loaded from a WorkItem or Customer data field.
Specify the constant value, or the
{Workitem.xxx}
or{Customer.xxx}
field name in the edit field.Replace
xxx
with the proper data field name.Configure Actions to Events as per the business requirement. See the Workflow article for further details on events.
Note
Conditions are not supported for voice conversations.
Check First Entity if you wish the system to start the whole flow with this segment. This will disable the same checkbox on all other workflow segments.
Click Submit to save the updated workflow.
Direct Routing to Agent
When you would route a work item directly to a particular agent, bypassing attribute capability matching algorithms, you can select Agent ID from the left-most dropdown of the Properties section. This disables the attribute selector and the data field select options – you can enter constant values only. Enter the ID of an agent in the field at the right, taken from the Buzzeasy User Manager.
Please note that direct routing to individual, dedicated agents defeats the efficiency gains provided by skills, and if you assigned attribute capabilities to agents you also perform direct routings for, your direct routing workflow might fail if the designated agent is not available.