Zingtree is the ideal solution to help you manage situations where you need to deal with multiple issues or queries and address them in a priority order that most suits you.
The key to achieving this is using Advanced Logic and positioning the order of the expressions in the priority you want the queries to be dealt with. Then after handling each one, loop back to the logic to see if other issues still need to be addressed.
Working Example
Check multiple issues and see how the tree handles them one at a time until all that were of interest were addressed:
You can import this example tree into your own organization if you like. Import this JSON file.
Allow the user to select multiple issues to address during the session
First, create the node where the user will select which topics are of interest
- Create the options to select using Data Collection Form Fields (for example a checkbox). When a checkbox is selected, it will have a value of 1. If it is unchecked, its value will be 0.
- Allow the user to be able to select multiple options:
Here is how the data entry checkboxes in this example were set up:
- Notice that the variable names for each checkbox are unique. This is important when adding checkboxes. Or the user would be overriding the value with each subsequent check.
- The continue button will be linking to the Logic Node you will build later.
Add hidden variables
Add a hidden variable to each node that is addressing an issue. In the final step of every topic add a hidden variable (Data Collection Form fields type) and assign a score of 1 for example so when the user has been on that node Zingtree knows that that issue/query has been dealt with. Here we added a hidden variable to the Account Balance node that when reached will record a value of 1 for the variable name account_balance_seen.
Now we will route back to the logic to check which issues were of interest and if they have been seen.
Create the Logic Node
Now you can use logic to write your expressions and make sure to put them in the order you want them to be dealt with. Remember, logic expressions are evaluated from the top down. And, upon matching one takes the tree to that destination. Read more about Advanced Logic here.
If no rules apply, direct the flow to the final/closing node of the tree.
In this example, the logic is checking if the account_balance issue was selected as an issue and if the account_balance node has not been seen. And if so, go see that node.
(account_balance==1)&&(account_balance_seen!=1)
Initialize Data Entry Fields in the tree's settings
Important! Enable “Initialize Data Entry Fields” in the tree's Settings > Data tab.
If you do not do this the logic will not be able to make perform the task successfully. When Data Entry Fileds are initialized, the tree will load with the hidden field variables available for use in the logic whether they have been seen or not.
Here's a look in the visual designer view showing how we are routing back to the Logic Node after each issue is addressed:
Benefits
- The agent does not have to remember all the issues listed by the caller initially. Nothing gets missed!
- Logic provides full control on what is the priority of dealing with multiple issues/queries.
- There is less chance of human error and the agents will be able to focus better and more efficiently on the tasks to address.