Let's assume that you have already created and tested a simple agent selection and tested it by making a call that routes to that queue. If you haven't, check out these article on adding groups and tags to agents and on call queue settings.
Now we'll add a selection that uses a trigger to check if the caller is calling from a German phone and selects general service agents who are tagged as speaking German. We will use the tag "de-de".
Of the following list of agents, Marie and Thomas have the tag "de-de" assigned.
As you can see both Marie and Christina are in the Group "General Services" but only Marie also speaks German.
Here is what the new selection looks like while we are adding it. Build and choose the trigger "Caller is from Germany" and select the tag "de-de":
To understand the selection process of a queue a little bit better, let's create a second selection as a fallback which uses the trigger "Always". We'll assign it the group "General Services".
Now comes the bit where we need to think about the interplay of all active selections. We have two so far:
Before analyzing what happens when a call is placed, let's have a quick look at the settings options:
- enabled: selection is turned on and will be used if the settings apply
- continue on match: if activated, the agents configured in the selection with one priority less will be added to the pool of agents considered for the call if the trigger of that selection applies.
- continue on empty: if activated, the agents configured in the selection with one priority less will be added to the pool of agents considered for the call, if its trigger applies and if no agent of the respective selection is available.
If we now make a test call from a German phone number with the above selections and settings the selections will be evaluated from top to bottom. The first trigger "Always" is true always, so all agents in the group "General Service" will be put into our current selection. Even though the second selection to choose DE agents is "Enabled" the "Continue on match" on the first selection is disabled. So, the process will stop and the babelforce platform will only have a pool of agents working for "General Services".
Hence, all of the following aspects matter when evaluating selections: order of the different selections, whether enabled or not, whether continue on match/empty is on or off and which agents, groups and/or tags are added to the selection.
Now, let's change the settings as follows: add the group "General Services" to the selection as well as the tag "de-de" and change the order of the selection entries in the list:
This has a very different outcome: If someone calls from a German phone, then the trigger in the first selection will be true, so agents in the group "General Services" who also are tagged as speaking German "de-de" will be selected. We won't continue on match. So our queue will only try to call agents who speak German and are in the group "General Service".
However, if the call is from the Netherlands, the first selection doesn't apply (its Trigger will not fire) and we continue with the second one and all agents from the group "General Services" are taken into account for this call. Here is where the "Always" trigger is really useful to define the fallback situation. In this case we could add another tag for agents speaking dutch.
This highlights an important principle in the ordering of selections: from more specific to less specific.
Finally, if we now leave everything as above but turn on "continue on match". Now, all agents of the group "General services" are put into the call pool, because we add the selected agents as we go down the selection list. This method can be used to build specific selections using a set of triggers.
Before we finish, let's have a quick look at the relationship between groups, tags and agents:
- two tags are selected for a queue selection: agents who have at least one of the tags are put in the pool for a call
- tag and group are selected for a queue selection: only agents who have the specific tag and group assigned to them will be put in the call pool. If multiple tags are assigned, they only must have either of the tags, but at least one. However, they have to be in each of the defined groups.
- two groups are selected for a queue selection: agents must be in both groups to be included in the pool for a call
- independent agents are selected for a queue selection: these agents do not have to be in the group chosen in the selection nor do need any specified tag. They are added to the call pool either way.