We’ve had requests from Ted B. and a few others to expand Zingtree’s ability to send email. Specifically, they needed the ability to send to an email address collected by a data entry form, and customize the body copy. So, we created a Webhook that anyone can use!
Sending email messages can be done in two ways:
By using a web page URL as a template for HTML formatted messages.
Or by sending a plan text message, and supplying the body copy.
Sending Messages using an HTML Template
First of all, you need to enable a Webhook app on the node that sends email. Here’s how:
Edit the node that you want to send email from. When this node is visited, an email will be sent.
Click Show Advanced Options.
In Send message to App, select Webhook: Zingtree Send Custom Email.
to= : this is where the email is sent. Our demo uses a data entry field named to. You can add multiple addresses, separated by commas.
from= : this is the return address of the email. We’re sending from email@example.com. Put your own address here if you like.
subject= : This is the subject line of the email. The demo gathers this from a variable named subject.
body_url= : This is the web page that is used as the template for the email. It needs to be URL encoded. The template URL can have placeholders for the variables you collect, as you can see in the example template here.
The Email Webhook Demo tree from the Gallery illustrates how this is done. You can examine it and see for yourself how it’s built.
We created a node that uses data entry fields to gather a “to” email address and a subject line. This is node #5 in the demo tree.
Node #5 links to node #3, which sends a message to the webhook Zingtree: Send Custom Email:
Sending Plain Text Emails
A more basic way to send emails is via simple text messages. Instead of body_url as a Webhook parameter, include something like the following in the message:
The message needs to have + characters used instead of space characters.
We’re still getting a ton of great ideas from our customers, as well as the occasional “I can’t do this” message. The last couple month’s updates primarily focus on the little details that set Zingtree apart from any other solution, but there are a few new goodies as well.
Several contact center clients have asked for a way to display one-time notifications to agents when critical parts of an interactive decision tree have changed. This is easily accomplished using Zingtree’s Agent Update Alerts.
An agent alert appears like this:
Some key points about Agent Alerts:
The agent cannot continue to use the tree until they dismiss the alert.
Once the alert is shown to an agent, he/she will see it just once.
Alerts can appear on subtrees (trees launched via tree nodes), or the starting tree.
You can add and manage alerts from Account, My Agents, Agent Alerts.
Alerts are tied to specific trees. Currently, there are no universal alerts.
The Push Live mechanism has an easy way to optionally add an alert.
If you have multiple alerts set, they will be combined into a single alert message, rather than showing one-by-one.
Managing Agent Alerts
Alerts can be added, deleted or modified from a single place. Here’s how to manage them:
Go to Account, My Agents.
Click the red Agent Alerts button. The Alert Manager appears:
This page shows all active alerts for every tree in your organization. You can see alerts for specific trees by choosing the tree from the drop-down.
To add an alert, click the Create New Alert button.
To delete an alert, click the delete icon next to an alert
To change the alert text, click the edit icon next to the alert.
Push Live Shortcut
If you’re using the Push Live tool, you can add an alert when you do a push.
Alerts created in this fashion can still be maintained using the Agent Alerts manager.
Alert us if you find this feature useful, or have a suggestion to make it even better!
Some of our larger customers have asked for a simple process for managing changes to their decision trees. When there are multiple people involved in making edits, and the final versions need approval, the Zingtree Push Live tool makes this procedure a breeze.
Push Live lets you have two versions of a tree – a development version and a live version. Your team makes changes to the development version, and when these changes are ready to go live, an administrator approves these changes by invoking the Push Live tool to update the live version of the tree.
Using Push Live is optional, and can be implemented at any time.
Here’s how Push Live organizes the publishing process:
An author or authors make changes to a tree.
Once the new tree is approved for release, an adminmistrator invokes a Push Live so that the new tree is available to end-users and agents.
All changes and push events are tracked through the Snapshots tool.
Here’s how to set up a tree for Push Live:
Select your tree from My Trees.
Go to the Settings tool, click the Push Live tab, and check Enable Push Live.
Make sure to click Update All Settings next.
Managing Live and Development Versions
You can switch between the development and live version of your tree from the main Tree Tools screen. Go to My Trees, and select a tree, or use the All Tools option in the Tools drop-down on every page.
Select Development or Live from the Version selector:
IMPORTANT: Use Live Publishing Links
The live version of a tree has different links than the development version. Make sure you are using the Publishing Links code for the live version of your tree by switching to the live version before using the Publishing Links tool.
The tree ID for the live version of a tree is the same as the development version, except that it adds 000 to the end of the ID. For example: If your tree ID is 123456789, the ID of the live version is 123456789000. So you’ll need to use different publishing links when making the live version of your tree available to others.
Pushing Changes Live
In order to update the live tree, you need to have Administrator rights on that tree.
Once you’re ready to “go live”, invoke the Push Live tool from the main Tools page, or the Tools drop-down. You’ll be asked for update notes on this version, which makes it easy to track what changed.
You can see the history of changes (with the update notes) for each update of the live version using the Snapshots tool (under More Tools).
Using Tree Nodes with Live Versions
If you have several trees under the Push Live process, and you are using tree nodes to link them together, Zingtree will ensure the proper development or live version is linked. When editing in the development version, use tree nodes that reference the development versions for your other trees. When you push live, those tree nodes will go the live versions of the other trees if they exist.
Here are the rules:
Tree nodes in the development version go to development versions of other trees.
When you push live, tree nodes in the live version go to live versions of those trees.
If a live version of a tree node doesn’t yet exist, the development version is used instead.
Give Us Feedback!
Is this Push Live feature useful to you? Do you have any suggestions to make this process work even better for you? Let us know!
We’ve had several requests to create a final, single page document based upon answers to decision tree questions. Zingtree’s Document Nodes makes this powerful document generation capability a reality.
With the help of Document Nodes, you can now complete tasks like:
Hint: Once the content from an answer node is inserted, it won’t be inserted again.
Use a node that shows your variables while you are testing. The What Computing Devices do I Need example tree uses Node #10 as an ending piece in the Document Node so you can see the value of all of your variables.
The What Computing Devices do I Needtree demonstrates a simple tree with a Document Node at the end. This tree helps an end-user decide whether they need a phone, tablet or desktop PC, based on the answers to some questions.
As end-users are using your Zingtree decision trees, you can add any information collected during the session into a MailChimp mailing list. Zingtree has a handy MailChimp App for just this purpose.
Here’s how to add data from Zingtree to a MailChimp list.
In Zingtree, go to Account, My Apps, and click add Add MailChimp. The MailChimp configuration screen appears:
Enter a name for this App. For example: “Add to Mailing List”.
Enter the MailChimp API Key. To find your API Key, log into MailChimp, and select Account, Extra, API Keys. Generate an API key if you haven’t done so already.
Enter your MailChimp List ID into the configuration. In MailChimp, click Lists, then select Settings from the drop-down next to your list. The List ID will be at the bottom of the page.
Click Add MailChimp App when finished.
Edit the node where you want to add to a MailChimp list. Look under Show Advanced Options, Send Message To App. Pick the name of the app you just created: “MailChimp: Add to Mailing List”.
Important: The field names you are using in Zingtree must match the merge tag names in MailChimp. So if you have merge tags NAME and ADDRESS in MailChimp, you would use variables named NAME and ADDRESS in Zingtree. You can find the merge tags for each field in MailChimp from List, Settings under List fields and *|MERGE|* tags. They will appear like this:
In Zingtree, the email address of the end user should be a variable named either EMAIL or email.
Once the end-user reaches the node you built in step 6, MailChimp will receive the information collected by Zingtree and add all matching fields to the list for email.
Do you have a cool application for this feature? Let us know on our Feedback page.
If you’re using Data Entry Fields or Merge Variables to bring data into your decision tree session, you may want to perform basic math operations on these variables. Zingtree offers a stock webhook option that lets you assign a new variable to the results of an addition, subtraction, multiplication or division operation. Here’s how to set it up:
Edit the node where you want the new variable (the result of the math operation) to be calculated.
Click on Show Advanced Options.
At Send message to app, choose Webhook: Zingtree Math.
In the Message, you’ll need to provide the operation, the two variables or values to calculate, and a variable name for the result. In the example above, we’re assigning a variable named result to the sum of variables a and b. Variables must be enclosed in # characters.
Here are some message examples:
Sets variable c to 5+3
Sets variable net to the difference of variables gross and expenses.
Sets variable days = weeks * 7.
Sets variable weeks = days / 7.
You can use the following in the op= parameter:
The Zingtree Demo gallery has an example. You can try it and examine it.
If you’re a Zendesk user in a Contact Center environment, you’ll want to be using our Zendesk Agent Scripting app. This makes it easy to guide, train and onboard agents and is a huge productivity booster for everyone.
The Agent Scripting app appears as a button in the right-hand panel:
Click Open Script, and you’ll see your decision tree in a pop-over like this:
If another agent picks up the ticket, they return to the last viewed node, and can see each step taken previously by opening the History:
Benefits of the Zendesk Agent Scripting App
Standardization: Show a guided path for each ticket, so that Agents follow the proper operating policies or troubleshooting procedures.
Pause and Resume: If a ticket is transferred, the supervisor or new agent is taken to the last place in the script, and can see the history of the previous steps taken.
Automatic Script Selection: The Agent Scripting App can choose a script based on the Zendesk brand, Zendesk ticket tags, or the value of a custom field.
Agent Feedback: Agents can send feedback directly to the authors of the decision trees with a single button click. Feedback is delivered to each author’s email, and includes the tree ID and node number where the feedback was sent from.
Zendesk Ticket Data in your Scripts: Values in any custom field, as well as Zendesk ticket tags and user tags, are transferred into your script so you can echo them, or use these variables to branch via Logic Nodes.
Automatic Ticket Updating: Tags and custom fields in the ticket can be updated from actions in the script – either via buttons clicked in the script, or from data entry collected.
New Features in Version 10
If you’re using a previous version of the Zendesk Agent Scripting app, you may want to upgrade to take advantages of these new benefits:
Pop-overs: Scripts now appear as pop-overs, rather than being constrained to the right-hand panel.
Ticket Updating: Your tickets can automatically update by navigating the script, or by entering data into Zingtree Data Entry Fields. For example, the start of your script could offer the agent a choice of a product, and the “product” field in your ticket will be automatically selected when the agent makes a choice.
Note: Don’t remove the current version of Agent Scripting until you are ready to make the switch. Versions 9 and earlier may not be updated going forward.
This two minute video shows you how Agents interact with the Agent Scripting App:
Here are the basic steps to get up and running:
Build an interactive decision tree script with Zingtree (or use one of our demos to start).
Install the Agent Scripting App (version 10) into Zendesk.
Configure the Agent Scripting app within Zendesk.
If you want to have your decision tree scripts update your Zendesk tickets, you’ll need to add variables and/or tags to your Zingtree tree to match your Zendesk setup.
If you want to enable automatic script selection, you’ll need to add tags to your trees in Zingtree and configure the Zendesk Agent Scripting app properly.
Installing the Agent Scripting App into Zendesk
Download and configure the Zendesk Agent Scripting App version 10 like so:
In Zendesk, click the Admin icon and go to Apps > Manage.
Click Upload Private App.
The Upload App page appears.
Enter “Zingtree Agent Scripting” for the App Name.
For App File, locate the filezingtree-agent-scripting-v10.zip you downloaded in step 1.
Click Upload, then confirm if necessary.
Configuring the App
Once you’ve uploaded the app, click App Configuration to see the configuration screen:
Here’s what each item does:
Tree ID: This is the default tree that appears when agents click “Open Script”. (You should always have a default tree.)
Hide Integration Setup Info: When you are setting up Agent Scripting for the first time, you may need some information about your Zendesk setup to take advantage of automatically updating ticket fields. An “Integration Setup Info” link appears by default when you first install the app, and ticking this option hides it.
Match Tree Tags to Zendesk Brand: If this option is checked, the subdomain of the selected brand will be matched to a Zingtree tree tag. Any matching tree or trees will appear. For example, if the brand subdomain is xyz.zendesk.com, any trees tagged as xyz (using the Zingtree Settings tool) will appear.
Match Tree Tags to Zendesk Ticket Tags: If checked, the values in the Zendesk ticket tags will be matched with your Zingtree tree tags (set via the Zingtree Settings tool) to show one or more matching scripts.
Match Tree Tags to values in a Custom field: If you want to use a custom field value to show matching scripts, enter the Zendesk custom field identifier here. The field name can be found using the Integration Setup Info link that first appears in the sidebar when you install the app.
Zingtree API key: Each organization in Zingtree has an API key, which is used to match scripts. If you’re using one of the tag matching options, this is required. Your API key can be found at zingtree.com under Help, API.
Enabling Automatic Script Selection
Automatic Script Selection works by matching tree tags you set in Zingtree to values in the Brand, Tags, or a custom field in a Zendesk ticket. For example, if a tree is tagged with “astrology”, and the ticket tags include “astrology”, then that tree appears. If several trees match, then they will all appear, and the agent can choose one.
To open a script based upon Brand:
Add tags to your trees for each brand you want to match. So if one of your brands is xyz.zendesk.com, use xyz as a tree tag in Zingtree for all the trees you want to show.
Make sure Match Tree Tags to Zendesk Brand is checked in the App Configuration.
To open a script based upon Zendesk ticket tags:
Add tags to your trees for each tag you want to match. So if one of your ticket tag possibilities is “billing”, use billing as a tree tag in Zingtree for all the trees you want to show.
Make sure Match Tree Tags to Zendesk Ticket Tags is checked in the App Configuration.
To open a script based upon a custom field:
Add tags to your trees for each possible custom field value you want to match. So if one of your custom field values is “billing”, use billing as a tree tag in Zingtree for all the trees you want to show.
Make sure the proper Zendesk field variable name is entered for Match Tree Tags to values in a Custom Field is checked in the App Configuration.
Adding tags to a tree in Zingtree is done like this:
Select a tree from My Trees.
Go to the Settings tool.
Click the Organize tab.
Enter or select a tag from the Tree Tags field.
Click Update Settings.
How to Configure to Update Ticket Fields
As agents navigate through your trees, their use of the decision tree scripts you create can automatically update any custom fields in that ticket. This can be done in two ways:
By clicking a button in a script
By entering data into Zingtree data entry fields.
The key is to use variable names in your Zingtree that match the ones used in Zendesk.
First of all, determine the names of the variables in Zendesk by clicking the Integration Setup Info link in the Agent Scripting app. You’ll see something like this:
You’ll see the label for the field as it appears in Zendesk’s ticket form, and the Zendesk variable next to it. In the above example, the Product custom field variable is custom_field_22899289. This is a drop-down selector, and the Zendesk values for the field options are astrology and insurance.
For the rest of this example, we’ll use custom_field_22899289as the custom field variable.
To make a button selection update a custom field, you’ll set it up in your Zingtree as follows:
Go to the Overview tool, and edit the node whose button selections will update the ticket.
Click Edit Buttons (or Add Buttons if you don’t have any buttons defined). The button editor appears:
Make sure Assign Button Click Variable is checked. This makes the other options appear.
For the Button Click Variable, enter your custom field variable from Zendesk (custom_field_22899289 in the example).
For each button option, enter the value of the variable under Score/Value. If this is a drop-down list in your Zendesk ticket, you’ll need to make sure the Score/Value entered matches one of the drop-down option values as shown in the Integration Setup Info.
Click Save Changes when you’re done configuring buttons.
Bonus: Adding Tags via button clicks:
Button clicks can also add tags to a ticket. In the above example, clicking Something Else adds the tag other_tag to the ticket. Just include the tag name with two colons after the button text. So entering a button like Something Else::other_tag will add the tag other_tag to the ticket if this is clicked, but agents will only see Something Else as an option.
Using Zingtree Data Entry Fields to Update Tickets
Just like the above example, you can also use Zingtree for data entry, and have that data automatically transferred to your ticket. The key is to use the same variable name in Zingtree as you used in Zendesk. The Integration Setup Info link in the sidebar will give you those Zendesk variable names.
Example: If you have a text entry field in Zingtree you want to update into the Zendesk field custom_field_1234, you would set up the variable name as follows:
Try It with Example Data
You can use trees from the Zingtree Gallery to see how the Agent Scripting app works.
For a single tree, enter ’14’ as the Tree ID. This will show an Astrology website troubleshooter example.
For multiple trees, see how a tree can be selected by tag by doing the following:
Enter 6a103737e44e4aa6e1e4b6b0bcb46f83 as the API key.
Make sure Match Tree Tags to Zendesk Ticket Tagsis checked.
Try entering one or more of these tags into a ticket: “zingtree”, “astrology”, “pet_rock”.