Templates

New here? It’s a good idea to read this article first: Learn About Workflow

What are templates?

Flow templates are predefined examples of popular flows that can be used together like building blocks across all of your workflows. Gnatta is designed to break down common contact centre scenarios into these repeatable functions, to ensure your solution keeps up with business changes.

Below are a few examples of workflows built using some of the templates listed in this article. Note that each workflow is triggered by an event, and then the flows would be executed in sequence:

Group 16202.png
Using ‘New Chat Create’ and ‘Queue Interaction’
Group 16200.png
Using ‘Find or Create’, ‘Detect and Update’ and ‘Queue Interaction’

Templates directory

Below, we’ll explore each template and the expected use cases. However, we’d strongly advise logging into your Gnatta domain and experimenting with the template you’re looking at in the builder - we’ve attached a variety of useful notes to each action in the flow to make it easier to figure out what’s happening, and why.

Account Create

[back to list]

What is it?

You can use this template on multiple New Message Received events to globally manage how interactions from a range of channels are created, within one flow. By checking the Account ID (Rule.MediaAccount.Id) you can branch the flow to correctly map media accounts to the right queue. For example, you can route inbound chats to a Chat queue.

Remember to leave interactions in a Created state for now, so you can manage assignation in a separate flow. More on interaction states here: Interaction State vs Status Fields

Which event should I use it on?

This should be used on New Message Received events.

What can I use with it?

Followup this template with a ‘Queue Interaction’ template to complete the routing and ensure the interaction reaches an agent.

Add Customer Profile

[back to list]

For a detailed walkthrough of this template, check this article: Creating Customer Profiles

What is it?

A customer profile is a collection of interactions, accumulated over the course of your history with that customer. Each interaction is representative of a single issue. Using a customer profile allows you to gain a greater understanding of the customer, and handle the current issue accordingly. It also unlocks incredible reporting and BI possibilities!

This template is aiming to connect the current interaction to an existing profile, or create a new one. There are a number of variations on this template, covering each channel:

  • Chat

  • Email

  • Facebook

  • Instagram

  • Telephone

  • Trustpilot

  • WhatsApp

Make sure you’re using the right template for each channel, as the way in which the customer profile data is collected is different in each one.

Which event should I use it on?

The event these templates should be used on varies depending on the channel in question.

  • Chat > Chat Started

  • Email > New Message Received

  • All others > Data Updated

This is because an email address is collected by default with chat and email, so the profile can be created straightaway. For all other channels, you’ll need to wait until an email address is added to a custom data field - and therefore profiles should be added or updated on a Data Updated event.

Advanced Chat Fallback Create

[back to list]

What is it?

Use this template to group chat fallback forms with the chat they initiated on, and log the data from the form in custom data fields on the interaction.

Remember to leave interactions in a Created state for now, so you can manage assignation in a separate flow. More on interaction states here: Interaction State vs Status Fields

To use this template, first navigate to Settings > Advanced > Account > Webchat > Your account name > Fallback and enable Contact Grouping. This will mean Gnatta is automatically grouping related chats and fallbacks received from that web visitor. With that toggle enabled, the flow template can jump straight into a Decision action to check if an interaction already exists.

Which event should I use it on?

This should be used on the Contact Form Received event.

What can I use with it?

  • Detect & Update - to capture any extra data from the message body using RegEx

  • Queue Interaction - queue the fallback form for assignation to an agent as soon as one becomes available (if the form was received out of hours, that might be at the start of the next shift).

Advanced Chatbot Flow

[back to list]

What is it?

Building a chatbot is one of the most complex functions in any contact centre, and protecting the customer experience needs to be at the forefront of your chatbot design. This advanced flow is structured to manage a journey by tracking the customer’s progress with a ‘Step Checker’, which builds out the journey horizontally, instead of down an isolated path where customers can become trapped and change management becomes tricky. This flow will make sure the customer can exit the journey to reach an agent or infinitely restart the journey as required.

Which event should I use it on?

This flow can be used on Chat Started, New Message Received or Response Received events.

What can I use with it?

We’d recommend placing an Automation Create flow before this one, to ensure chats are held in an automation state and not accidentally assigned to an agent before the customer is ready.

Automation Create

[back to list]

What is it?

This very simple template will create an interaction that is ready for automation in a chatbot journey. It’s critical the interaction is created in an ‘Automation’ state, as this will ensure it is excluded from other assignation logic flows and keep the customer in the chatbot journey until they’re ready for an agent.

Which event should I use it on?

This flow should be used on Chat Started or New Message Received events.

What can I use with it?

This flow should be followed with the Advanced Chatbot Flow template.

Call Recording

[back to list]

What is it?

This straightforward flow template will start call recording - automatically! If you’d like to add a text-to-speech notification to the customer, click into the action and check the box to enter your message.

Which event should I use it on?

This template is designed to be used on the Interaction Assigned event, so call recording begins as soon as the call is assigned to an agent (not during an IVR process).

Benefits

  • Helps with quality assurance processes

  • Protects customers and agents during difficult calls

Chat Fallback Create

[back to list]

What is it?

This flow will create a new interaction when you receive a fallback form from chat, and log the data from the form against the interaction. You would use this template if you don’t want to group Fallback Forms with the chat they originated on, as in the Advanced Chat Fallback Create template.

Remember to leave interactions in a Created state for now, so you can manage assignation in a separate flow. More on interaction states here: Interaction State vs Status Fields

Which event should I use it on?

This should be used on Contact Form Received events.

What can I use with it?

  • Detect & Update - to capture any extra data from the message body using RegEx

  • Queue Interaction - queue the fallback form for assignation to an agent as soon as one becomes available (if the form was received out of hours, that might be at the start of the next shift).

Chatbot Planner

[back to list]

What is it?

This template is designed to help you visualise your chatbot journey without complex logic getting in the way. Create the branching paths of your envisioned journey using Decision and Send Autoresponse actions. When it’s ready, let us know and we’ll help you convert it into a fully functioning, live chatbot using an Advanced Chatbot Flow - with all the bells and whistles added.

Which event should I use it on?

This flow template is not designed to function on its own - you’ll need to send it to Gnatta Support so we can get your chatbot live!

Check Timer

[back to list]

What is it?

This flow will check an existing timer, stop it, and then start a new one. This can be useful if something important changes on the interaction and you no longer want to trigger the first timer - such as a new response in a chat!

You need to have an existing timer setup to use this flow. Check the ‘Simple Timer’ template!

Which event should I use it on?

This flow is best used on Message Sent and Response Received events.

Detect & Update

[back to list]

What is it?

Use this template to automatically detect key data from customer messages, and store it in custom fields with the Find Text action. Examples include:

  • Email addresses

  • Phone numbers

  • Postcodes/ZIP codes

  • Order/membership numbers

  • Tracking numbers

This template can help you find any unique data type.

Which event should I use it on?

This template is most often used on New Message Received or Response Received events.

What can I use with it?

You might use this template in a sequence like:

  1. Find or Create

  2. Detect and Update

  3. Queue Interaction

Benefits

  • Reduce handling time by removing the need for advisors to find and store this data

  • Increase potential for further automation by using this information in other templates/events

Email Sender Create

[back to list]

What is it?

Use this template to split inbound messages based on the email address of the sender - for example, splitting out contacts from 3rd party’s and suppliers to ensure those interactions are routed to back-office teams, not frontline agents.

Remember to leave interactions in a Created state for now, so you can manage assignation in a separate flow. More on interaction states here: Interaction State vs Status Fields

Which event should I use it on?

This should be used on a New Message Received event.

What can I use with it?

It’s best to followup with a ‘Queue Interaction’ template, to ensure the interactions you’ve created can reach an agent!

External Reporting

[back to list]

What is it?

This template will use an HTTP Request action to send data to an external system - such as PowerBI, or Google Looker!

This is an advanced template - you’ll need a basic understanding of how an HTTP request works, and the ability to write your request in JSON. If you can’t write it yourself, you could try using ChatGPT, or get in touch and the Gnatta Support team will help write it for you!

Which event should I use it on?

This flow can be used on New Message Received, Response Received or Interaction Closed events.

What can I use with it?

This action is best placed at the end of a flow sequence, to ensure it is triggered last and data isn’t changed after it is sent.

Find or Create

[back to list]

What is it?

This is a powerful flow designed to check if an inbound message is brand new or related to an existing interaction. In a nutshell, it will do the following:

  1. Check for an existing interaction

  2. If it finds one, check if it was closed in the last 7 days

  3. If it was in the last 7 days, it’ll connect the conversation to that interaction

  4. If the existing interaction was older than 7 days, it’ll create a new one

Remember to leave interactions in a Created state for now, so you can manage assignation in a separate flow. More on interaction states here: Interaction State vs Status Fields

Why 7 days?

The 7-day check is based on an assumption that customer messages sent within 7 days are more than likely related to the same issue. Interactions are designed to contain all conversations relating to just one issue - so if the interaction is older than that, it’s best to create a new interaction altogether to avoid muddying the waters with resolved issues!

You can adjust this 7-day window to suit your business needs.

Which event should I use it on?

This should be used on a New Message Received event.

What can I use with it?

You may want to follow this up with an ‘Add Customer Profile’ template, to connect multiple interactions together and create a bigger picture about the customer.

You should also follow it up with a ‘Queue Interaction’ template, to ensure the interaction is ready to be assigned to an agent.

Benefits

  • Reduce overall contacts by merging contacts together and solving multiple queries in one place

  • Remove multi-handling of one customer to numerous advisors

  • Reduce handling time by having everything in one place

  • Increase customer satisfaction by having a much clearer picture of their overall query

IVR Starter Flow

[back to list]

What is it?

This advanced template is everything you should need to start an IVR (interactive voice response) journey for your call queues. Before the journey commences, we’re checking your opening hours to make sure there’ll be an agent to assign to when the caller completes the IVR. Then, we’re using DTMF tones to collect the number the caller presses, and branch the flow accordingly. You can use these branches to route interactions to particular agents, or to store useful data on the interaction - such as the reason for contact.

If you’d like to use audio files instead of text-to-speech in your IVR Input actions you can upload these to your Gnatta domain, or store them on a public link of your own. Check allowed file types here: Permitted File Types

Which event should I use it on?

This should be used on Call Started events.

Junk Checker

[back to list]

What is it?

Use this template to remove unwanted messages from being assigned to your advisors. This is usually used in a couple of ways:

  1. Using keywords (for competition posts or spam)

  2. Removing ‘tags’ from Facebook (where someone has only tagged a friend into a post and there’s nothing for an advisor to answer)

Which event should I use it on?

This is best used on a New Message Received event.

Keyword Create

[back to list]

What is it?

This template will help you to split inbound messages depending on the contents. For example, split queries containing the word ‘Refund’ into a Refunds queue, and queries containing the word ‘Tracking’ into a ‘WISMO’ queue.

Remember to leave interactions in a Created state for now, so you can manage assignation in a separate flow. More on interaction states here: Interaction State vs Status Fields

Which event should I use it on?

This template is best used on New Message Received events.

Benefits

  • Prioritise interactions based on their contents to minimise escalations

  • Improve customer experience by matching customers with the right agent for their query

  • Save agents time transferring queries to other departments

Keyword Update

[back to list]

What is it?

This template, much like the ‘Detect and Update’ template which finds complex data like an email address, aims to match simple keywords from the customer’s message and then update the interaction accordingly. For example, you might want to scan customer messages for the following keywords:

  • Delivery

  • Tracking

  • Refund

  • Payment

Learn more about using the Keyword Filter action in this article: Keyword Routing

Which event should I use it on?

This template is most often used on New Message Received or Response Received events.

Log Chat Survey

[back to list]

What is it?

With this template, you can ensure the feedback a customer leaves in a post-chat survey is logged in the custom data fields on the interaction so it can be used in your reporting and dashboards - without this step, post-chat survey data will only be stored against the chat conversation.

Which event should I use it on?

This should be used on the Chat Survey Completed event.

Manual Conversation Update

[back to list]

What is it?

When an agent manually creates a new conversation, you may want to update the interaction to move it into a new queue. For example, if a webchat agent has sent an email followup to the customer, you may want the replies to be handled in an email queue.

Which event should I use it on?

This template should be used on the Conversation Created event.

Multi-Timer

[back to list]

What is it?

This flow is designed to schedule a timer depending on the length requested by the agent who handled the interaction. The agent defines their request by setting a custom field with the relevant length. Before using this timer, you’ll need to head to Settings > Advanced > Dynamic Data and create two new fields:

  • Timer Length

    • Type: String

    • Presentation: Single Select

    • Add an option for each timer length, i.e. 1 hours, 6 hours, 12 hours etc.

  • Current Timer

    • Type: Timer

    • Presentation: Editor

The flow will then be able to check that Timer Length field for the agent’s request, start the appropriate timer then store it in the new Current Timer field.

Which event should it be used on?

This template should be used on a Data Updated event.

New Chat Create

[back to list]

What is it?

This basic flow should be used to ensure the Pre-Chat Survey data you’ve collected is stored on the interaction, where it’s going to be most useful to your agents (and where you can use it for routing possibilities!).

  1. Click on the Create Interaction action, and set the Queue and data group as appropriate.

  2. Click on the Preset data configuration card to begin mapping the Pre-Chat Survey data.

  3. Select the first field from your survey that you’d like to map to the interaction (

  4. Once you’ve selected your field, select ‘Context value' and open the Explore menu.

  5. Search for ‘Chat Data’ in the Explore menu and find the name of your field again and select it.

Doing all of that will insert something into your Preset data field that looks a little like this: WebChatData[8fd89aa2-6921-4e4f-a6a3-83d6e21288e1] That long chain of numbers and letters is a GUID - which is a unique reference for the data field you’ve selected. It’s telling Gnatta to check that field on the chat, and insert the value it finds onto the corresponding field on the interaction.

Remember to leave interactions in a Created state for now, so you can manage assignation in a separate flow. More on interaction states here: Interaction State vs Status Fields

Which event should it be used on?

This template should be used on a Chat Started event.

What can I use with it?

  • Detect and Update - to capture and store any data from the message body using RegEx, if there are open text fields on your survey

  • Queue Interaction - to ensure the interaction is queued for assignation to an agent, after you’ve created it

Queue Interaction

[back to list]

What is it?

This super simple flow template is just one pre-configured action - it’ll automatically change the state of the interaction to ‘Queued’. In other flows, you’ll be setting interactions as ‘Created’ or ‘Automation’, depending on the use case. Placing this flow after those flows will allow you to globally ensure interactions are ready to reach an agent.

Which event should I use it on?

This template is usually one of the last flows on a New Message Received or Response Received event.

What can I use with it?

You might use this flow in a sequence like this:

  1. Find or Create - to match the message to an interaction or create a new one

  2. Detect and Update - to automatically collect customer email address and store it

  3. Queue Interaction - to get the interaction ready for an agent

Reopen Interaction

[back to list]

What is it?

If you receive a new response on an existing interaction, this simple flow will change the interaction status to an ‘Open’ one, depending on the options you’ve defined in your Status field. More on setting up your custom data here: https://gnatta.atlassian.net/wiki/spaces/HELP/pages/2523136001

Which event should I use it on?

This template is best used on the ‘Response Received’ event.

Simple Create

[back to list]

What is it?

This template keeps your routing logic super simple - when you receive a new message, create an interaction and map it to a queue. This works well for small domains with low contact volumes. We’d recommend creating one of these for each channel, so you can ensure contacts from the same channel reach the right queue.

Remember to leave interactions in a Created state for now, so you can manage assignation in a separate flow. More on interaction states here: Interaction State vs Status Fields

Which event should I use it on?

This is best used on the New Message Received event.

What can I use with it?

Follow this template up with the ‘Queue Interaction’ template and your routing is all connected!

Simple Timer

[back to list]

What is it?

This flow will create and store a timer against an interaction. A typical use case for this might be to send an ‘Are you still there?’ message in a chat after the timer elapses, by connecting the timer to another flow that is using a Send Autoresponse action. Storing the timer on the interaction means it can be interrupted and stopped, should something change (such as a customer reply!).

In order to use this template, you’ll first need to head to Settings > Advanced > Dynamic Data and create a new custom field as follows:

  • Name: i.e. My New Timer

  • Type: Timer

  • Presentation: Editor

You’ll then be able to reference this timer field in the flow to store your timer using the Update Interaction action.

Which event should I use it on?

This template is best used on Message Sent or Interaction Closed events, depending on your use case.

What can I use with it?

We’d recommend pairing this with a Stop Timer template placed on Response Received events, so you can check if the timer is still active and interrupt it as needed.

Split Public Interactions

[back to list]

What is it?

In this advanced flow, we’re using logic similar to the Find or Create template, except we’re also adding a check against the message type (using the context: Is Message Private / Echo.IsPrivate) to further split the interactions before we create or update them. This means you can funnel private messages away from public comments on your posts, and ensure they’re handled by different flows and/or teams.

This function is especially useful if your marketing campaigns frequently generate a lot of comments on your posts - you could apply a Junk Checker template to your Public Interactions queue, and stop those interactions from reaching an agent.

Remember to leave interactions in a Created state for now, so you can manage assignation in a separate flow. More on interaction states here: Interaction State vs Status Fields

Which event should I use it on?

This should be used on a New Message Received or Response Received event, mapped to a Facebook account.

What can I use with it?

  • Detect and Update - to scan the message body for useful data using RegEx, such as an order number

  • Add Facebook Customer Profiles - to merge the newly created interaction with your history of interactions stored for that customer

  • Queue Interaction - to place the interaction in a queued state, ready to reach an agent

Stop Timer

[back to list]

What is it?

This flow will check an existing timer field on the interaction and stop it from triggering its flows, if it has not yet elapsed. You’ll first need to have created a timer using the Multi-Timer or Simple Timer templates. Make a note of the field name you are storing the timer in, so you have it to hand to identify your timer in this flow.

Which event should I use it on?

This template should be used on Interaction Closed, Response Received and Data Updated events.

What can I use with it?

You’ll need to use this with Simple Timer or Multi-Timer template, to ensure you have a timer created that you can stop!

TrustPilot Rating Create

[back to list]

What is it?

This template will split inbound reviews for a TrustPilot account based on the star-rating detected, so they can be mapped to a relevant queue. i.e. 1-star reviews into a 1-Star queue, where you’ve assigned your most experienced agents.

Remember to leave interactions in a Created state for now, so you can manage assignation in a separate flow. More on interaction states here: Interaction State vs Status Fields

Which event should I use it on?

This should be used on a New Message Received event, mapped to a TrustPilot account.

User Unavailable

[back to list]

What is it?

Use this template to ensure incomplete work is reassigned appropriately when an agent changes their state to Away as they approach the end of their shift. The flow will remove non-live interactions but continue chats or calls, so they can be wrapped up neatly before the agent logs off.

Which event should I use it on?

This template should be used on the User State Change event.