Chat Workflow
This article provides an overview of the available node types, generic properties of workflows, and introduces the new designer toolbar, among other topics.
To access the new chat workflows, follow these steps:
- Navigate to the Buzzeasy Portal > Chat section.
- Click on "Workflows."
To open the workflow designer, click on one of the workflow options. If you need to make changes to the workflow settings, including its Name, Idle Timeout, and Timeout Message, simply click on the Details button located on the top left side of the designer interface.
Workflow generic properties
Workflow Name
The workflow name is a required parameter, as it serves as a selection identifier for a specific channel. To ensure effective naming, we recommend following these best practices:
- Include the media type in the workflow name (e.g., Facebook - Page name).
- Indicate the business process or function that the workflow supports (e.g., Webchat - Support page).
- Create duplicate workflows for testing purposes before making changes to customer-facing workflows.
- For different variations of the same use case (e.g., different messages), create separate flows.
- Avoid using "Workflow" in the name, as it adds no meaningful information.
- Refrain from using generic names like "Test flow," "main flow," "main channel," "primary flow," or "New workflow," as these names lack specificity and clarity within your organization.
Idle timeout
By default, the idle timeout is configured to 1440 minutes, which is equivalent to 24 hours. If no activity occurs within the specified time frame, the system will automatically terminate the conversation.
For instance, if a workflow has an idle timeout of 10 minutes and neither the agent nor the customer sends any messages during this period, the system will close the conversation after the 10 minutes have elapsed.
It's important to note that the idle timeout parameter has a maximum value of 10080 minutes (168 hours or 7 days) and a minimum value of 10 minutes.
When setting up a workflow, be mindful of the idle timeout to ensure it aligns with your desired conversation management.
Timeout message
When the idle timeout is triggered and there has been no activity in the conversation, a timeout message will be sent to the customer. This message serves as a notification that the conversation is being closed due to inactivity.
It's important to note that specifying a timeout message is optional. However, it is advisable to provide a timeout message, especially when using short idle timeouts. This helps prevent potential customer escalations and provides clarity regarding the closure of the conversation.
Timeout warning
The timeout warning serves as an alert to both parties involved in the conversation, notifying them that the conversation is about to time out due to inactivity. You have the option to specify a timer, which represents approximately the elapsed minutes of idleness before the warning message is sent.
It's important to note that the warning timer should not exceed your actual idle timeout. In other words, the warning message should be sent before the idle timeout period is reached to provide ample notice to the users.
Warning message
Provide a text message that will be sent to the agent and the customer when the timeout warning threshold is reached.
Workflow designer
After you've provided the generic properties for a workflow and clicked "Create," you enter the workflow designer. This is where you build and customize your workflow to meet your specific needs.
Node types
Start Here
The "Start Here" node is the default starting point in your workflow. It serves as the initial step from which your workflow begins. To use this node, click on the black dot and drag it in any direction to open a context menu. From this menu, you can choose other available nodes to build and customize your workflow.
Check opening hours
This node is responsible for verifying your Channel's opening hours and enables you to make routing decisions based on the verification results. The available outputs are as follows:
Open
: The Channel is currently within business hours and not on any holidays.Closed
: The channel is currently outside of business hours and not on any holidays.Holiday
: The channel is closed due to a set holiday.
Feel free to customize the name of the "Check opening hours" node to suit your needs.
Check queue state
The Check Queue State node allows administrators to pre-check a queue and perform routing decisions as it has similar outputs as the queue. The benefit is that the customer does not have to navigate through the entire complex flow, but instead can be routed elsewhere based on the result of the check.
Input: Queue to check. Select the queue you wish to check.
Outputs:
- Size Limit Reached. This can be used if the queue has a Max queue size set.
- EWT limit reached. This can be used if the queue has an EWT limit set.
- No agent logged in. This can be used if the queue has the No Agent logged in output set.
- No staffed agent logged in. This can be used if the queue has the No Staffed Agent logged in output set.
- No available staffed agent. This can be used if the queue has the No available staffed agent output set.
- Pass. The conditions for the outputs were not met or the outputs were not set, as such, passing through.
Conversational bot
Use this node to engage your customer with a subject matter expert AI-based conversational bot.
Carefully type the Instructions for the bot. Instructions help it understand its role, responsibilities and tone.
Note
Please carefully read and follow the bot instruction guidelines. This is critical for proper bot operation.
Optionally use one or more preconfigured external custom service integration APIs that can offer additional insight, deliver precise information, or execute external tasks. Select them from the Integrations dropdown. You can select any number of preconfigured integrations, the bot will consider all.
Associate an available Knowledge base to the bot. This can dramatically enhance the relevance and contextual quality of its responses.
Advanced configuration:
Temperature: use this to control consistency and predictability of the texts the bot generates. A value of zero provides maximum consistency, while a value of 1+ provides maximum creativity and randomness. On a general level, keep it lower and test any increase extensively.
Max output token count: a circuit breaker to control the maximum amount of text generated by the bot. Setting it too low will abruptly cut the result text. Test any change extensively.
Outputs:
Failed
: The bot could not comprehend or answer the customer request, or lower level technical problems were encountered with the AI model.- Optionally define additional outputs by supplying further AI instruction prompts for various business topics this node is not the expert of. Use them to list the various business topics this node is not the expert of. Having multiple different conversational bots each being an expert on different business topics and jumping between them as the customers' requirements change can greatly expand the flexibility of your workflows and the customer experience. Each output needs a unique and short Name so their label on the node can be distinguished, and a Description. All common AI prompt engineering principles you used when crafting the Instruction field apply here too.
Custom bot
You can use this node to incorporate your custom bot integration into a workflow. Learn more about custom bots.
The "Add property" feature enables integrators to transmit data to the custom bot through the AssignConversation request, including configuration data, which allows for the reusability of the custom bot.
This node has the following outputs:
Success
: Indicates that the custom bot has completed its task successfully.Failed
: Indicates that an issue occurred with your custom bot integration.
Custom integration
This node serves as an exit point from the workflow to a third-party solution that supports custom integration. It necessitates the provision of a URL and an API Key.
Custom question
You can specify a custom question, provide suggested actions, store the answer in a Workflow property key for later use, apply regex validation to the answer provided by customers, set a retry count, and define a repeat message. Additionally, you may use workflow or customer data in the message or suggested action. See the Reference data chapter below.
You can format your message using the space key, enter key, or tab key. Additionally, you can include emojis, bullet points, and other Unicode characters. You may also use the Windows-built-in character map to find the specific character you need.
The regex pattern, retry count, and repeat message are all optional.
Read the Reference data chapter on how to use customer or workflow data in this node.
Outputs:
Success
: This output indicates that the question was answered, and the answer is valid (if a regex pattern is set).Invalid
: By default, this output is disabled. It becomes enabled when a regex pattern is added, and it is triggered when the retry count reaches the maximum allowed value.
WhatsApp limitations in Custom Question
- A maximum of 10 suggestions. Note that the customer chat UI switches to Interactive Lists from 3 items upward.
- A maximum length of 20 characters per suggestion.
Customer satisfaction
You can prompt the customer to offer a generic feedback on their overall satisfaction with the outcome of the conversation. The node offers an announcement message to the customer, inviting them to provide a 1-5 numerical rate satisfaction result.
You can apply labels to each feedback option.
You can repeat the message and offer an explanation message to let the customer know they failed to provide their feedback.
Customer satisfaction feedback is stored in reporting data.
- Message: The message to describe the satisfaction survey to the customer and inviting them to offer their feedback by pressing a digit between 1-5.
- Retry count: When set, controls how many tries the customer has, to offer their feedback.
- Retry message: Optionally provide an explanation message as to why the node is going to repeat the message and feedback collection.
Outputs:
Collected
: Use this output for when the survey feedback was successfully collected from the customer but the dedicated output for the digit is not in use.RetryExhausted
: This output is triggered when the customer failed to provide a result within the set conditions.1 - 5
: The individual outputs for the legitimate feedback options. When used, theCollected
output is not triggered.
Tip
Hook this node up to the AgentDisconnect
output of the Queue node so the customer is offered the survey question after the agent disconnects from their conversation. Drop the Sampling node in between these nodes to offer surveys to a percentage of conversations.
End conversation
Use this node to wrap up and conclude your workflow. When a customer reaches this point, the conversation will be terminated.
Identify customer
Use this node to identify the customer by asking them to provide various properties like their phone number, email address or even names. You can query any number of these to attempt to match the customer to a known profile—to perform the identification.
You can cater for typos and other non-match situations by setting repeats. You can specify a country code for the phone number so the node could validate the entered value against it's formatting rules.
Enable the Match customer checkbox to mark the phone number and/or email address properties as something to base the customer profile match on. When unset, the node will not try to find an existing customer record based on that property, but creates a new one and store the collected data in that. For example, when it is set for phone number but unset for email, the node will search the customer database using the provided phone number only. If however you asked for the email address, and the customer provided that too, then it will be stored in the found (or new) profile.
Outputs:
Success
: the data provided by the customer to the node questions was successfully matched to an existing customer profile.Failed
: the customer could not have been matched to a valid customer profile, even after the specified retry attempts were all exhausted.
Menu selection
The Menu Selection node allows you to create a question and provide suggested actions. The system automatically validates these suggested actions. If a customer types a message that is not within the provided options, the Menu Selection node will not exit and will continue waiting for the correct answer without repeating the question.
You can format your message using the space key, enter key, or tab key. Additionally, you can paste emojis, bullet points, and other Unicode characters. The Windows-built-in character map can help you find the character you're looking for. You may use workflow or customer data in the message or suggested action. See the Reference data chapter below.
You can also use the left-right arrows to rearrange your suggested replies without the need to remove and re-add them.
Read the Reference data chapter on how to use customer or workflow data in this node.
Outputs:
- Each suggested action has its output, allowing you to define routing decisions based on the customer's selection.
WhatsApp limitations in Menu Selection
- The maximum length of the message is 500 characters.
Queue
Used to load the conversation into a queue of agents.
Queue routing
When creating a queue, you must choose a routing mechanism: automatic or manual. This choice cannot be changed later for a given queue, but you can delete the queue and recreate it with a different routing mechanism.
Automatic Queue
: The system uses intelligent routing to find the first available skilled agent.Manual Queue
: Skilled agents can manually pick items from the queue. Agents assigned to manual queues can view all items in their team's queue, including items in manual queues, in their agent performance dashboard.
Queue parameters
Emergency
: When activated, this feature ensures that conversations arriving into this queue are prioritized over others if the agents assigned to it are also in demand by other queues, as long as those other queues aren't marked as "emergency" as well. If multiple queues are set to "emergency" within the same tenant and share the same agents, conversations in these queues will be treated equally, following a first-come, first-served agent routing policy.Agent Assistance Configuration
: Specify the Question Answering knowledge base configuration for agent assistance. Learn more about Question Answering.Queue Treatment
: Select the queue treatment for chat. Learn more about queue treatments.Max Queue Size
: Set the maximum number of parallel conversations allowed in the queue.Route to customer's preferred agent
: When enabled, Buzzeasy attempts to route the conversation in the queue to the agent who is marked to be the preferred one for this customer.Preferred agent timeout
: The amount of time Buzzeasy will wait for the preferred agent if they happen to be unavailable.Queue Timeout
: Displays the queue timeout for the selected queue treatment (read-only).Connect Message
: Stream a personalized message to the customer when connected to an agent using special parameters like {Agent.Name} and {Agent.DisplayName}.SLA Threshold Time
: Enable SLA (Service Level Agreement) for the queue. If SLA-based routing is enabled, this information will be used to determine the priority of the conversations.Estimated Wait Time Limit
: Specify the MAX estimated wait time. Once the estimated wait time limit is breached, further conversations will no longer be queued, the Estimated Wait Time Limit Reached output will be used instead.Agent Workspace
: Choose an agent workspace for this queue. Learn more about agent workspaces.Attribute Requirements
: Specify the required skill attribute and its value to route conversations from this queue to agents.
Queue outputs
AgentDisconnect
: Define next actions for when the agent closes the task, such as survey questions.Timeout
(Optional): Specify actions for queue timeout.Size Limit Reached
: Define actions for when the maximum queue size is reached.No Agent Logged In
: Define actions for when no agents are logged in across the tenant.No Staffed Agent Logged In
: Check if there are agents with proper attribute assignment as well as workitem thresholds logged in to handle conversations from this queue, if not, define next action.No available staffed agent
: Check if the staffed agents for this queue are also available, if not, define next action.Estimated Wait Time Limit Reached
: Define actions for when the estimated wait time limit set on the queue is reached.
Queue entry logic
Before a conversation enters the queue node, the following outputs are evaluated, in this order:
No Agent Logged In
: Check if any agents are logged in across the tenant. If yes, proceed to the next check; otherwise, use the output flow.No Staffed Agent Logged In
: Check if the logged-in agents are skilled and have the appropriate work-item thresholds. If yes, proceed to the next check; if not, use the output flow.No Available Staffed Agent Logged in
: Check if the staffed agents are also available, if yes, proceed to the next check, if not, use the output flow.Max Queue Size
: Check if the conversation would exceed the specified limit. If yes, use the output flow; if not, the proceed to next check.Estimated Wait Time Limit
: Check if the current wait time is higher than the specified limit, if yes, use the output flow; if not, then the conversation enters the queue.
Send message
The Send message node allows you to send a message to the customer and then proceed with the action. Read the Reference data chapter on how to use customer or workflow data in this node.
You have the flexibility to format your message using the space key on your keyboard, enter key, or tab key. Additionally, you can paste in emojis, bullet points, and other Unicode characters. You may also use the Windows-built-in character map to locate specific characters.
Outputs:
Then
: Specify what should occur after sending the message.
QnA bot
This node allows you to choose one of your pre-configured Language Custom Question integrations within Buzzeasy. Learn more on question answering in Buzzeasy.
Additionally, you have the option to set Exit conditions, which function similarly to the Menu Selection node. These conditions will be presented as suggested actions to the end user only if the answer to a question does not already have follow-up prompts configured in Language Studio.
Outputs:
No answer
: If the QnA confidence score drops below the specified threshold, the conversation exits this node. You can specify the next course of action.- Any exit condition set on the node.
WhatsApp limitations in QnABot
- A maximum of 10 suggested actions. Note that the customer chat UI switches to Interactive Lists from 3 options upward.
- A maximum length of 20 characters per suggested action.
Set data
The Set Data node allows you to define workflow data that can be reused later, either in a Switch node or in a customer message. Here's an example:
Let's say you have a Set Data node with the Property key set to openHours and the Property value set to Open.
If your message node is: Your contact center is {Workitem.openHours}
, then the customer will receive the following message: Your contact center is Open
.
Read the Reference data chapter on how to use customer or workflow data in this node.
Outputs:
Then
: Specify what action should follow after setting the data.
Sampling
The Sampling node offers chance-based flow management. You set the sampling percentage and the node "throws the dice" at every conversation to activate its Sampled
or Not Sampled
outputs based on whether the current conversation hits the set probability or not. This can be used to engage branches of the workflow in a probabilistic manner, for example to offer customer surveys for a portion of the total number of conversations, etc.
Note that the probability is not measured and applied on a defined time scale, the node calculates it in a fully random fashion at every conversation. Therefore Buzzeasy does not guarantee that the set ratio will be honoured in any particular time frame. It is expected to honour it in general, on large enough number of conversations.
Outputs:
Sampled
- The conversation falls within the designated sampling rate.Not Sampled
- The conversation is not marked for sampling, it falls outside of the designated ratio.
Switch
The Switch node enables workflow designers to assess specific parameters of a conversation or a customer and make routing decisions based on these conditions. These parameters are stored in variables.
First, you need to choose whether you want to use Workflow data, which includes data set through the Set Data node or various bots and custom integrations in your flow, or Customer details.
You can define up to 5 conditions, and each condition will have its corresponding output. Additionally, there is a default output option provided.
This node can be effectively paired with the Set Data node, and you also have the option to utilize custom fields defined per tenant or business unit.
Read the Reference data chapter on how to use customer or workflow data in this node.
Outputs:
- Each condition property has its own output, allowing you to determine the course of action based on these properties.
Default
: Serves as a failsafe, specifying what should happen if no condition is met.
Reference data
You can reference the following customer data in Switch, Set Data, Menu Selection and Custom Question nodes:
{Customer.FirstName}
{Customer.LastName}
{Customer.Email}
{Customer.CustomerId}
{Customer.PhoneNumber}
{yourSetData}
<=>{Workitem.yourSetData}
- both options will work.
In addition to the above, the following can be referenced in a Queue node:
{Agent.Name}
=> This will display the actual agent's name to the customer, as configured in the Agents section of the portal.{Agent.DisplayName}
=> This will show the display name to the customer, as configured in the Agents section of the portal.
Custom bots can also set workflow data. These fields depend on the implementation of the custom bot itself unless overwritten by the Set Data node.
Using the designer toolbar
The designer toolbar is located at the bottom left corner of the screen and provides several useful tools:
Plus
+
sign: Zooms in to the current focus area, which is centered on the screen. You can achieve the same result using your mouse's scroll wheel.Minus
-
sign: Zooms out from the current focus area, centered on the screen. You can also use your mouse's scroll wheel for this.Fit View button: Automatically adjusts the zoom level to fit all nodes on the screen. This is helpful for visualizing the entire workflow. The fit view adapts to the available screen space, taking into account monitor size, resolution, accessibility options, or browser zoom settings.
Toggle Interactivity button: Disables node editing, allowing you to scroll through the flow without accidentally modifying nodes or their positions. You can navigate within the design by clicking and holding anywhere on the screen, moving your mouse to explore the workflow while preventing unintentional edits.
Validation Error Icon: Indicates the presence of one or more validation errors in your workflow. The designer continuously checks your workflow for errors. Click the triangle icon to navigate to the first encountered error, which automatically adjusts the zoom and focuses on the problematic node.
We welcome your feedback and creative ideas for additional designer tools!
Saving a workflow
You can save your work in the new workflow designer at any time, except when validation errors are present, in which case the save button is disabled.
Validation errors are indicated by a warning triangle icon located in the header of improperly configured nodes. The same triangle icon is also displayed in the designer tools located at the bottom left corner of the screen. Clicking on this icon will take you directly to the node with the issue.
The user interface uses visual cues to highlight mandatory parameters with a red asterisk (*) or a red circle around mandatory outputs. Additionally, hovering over the warning triangle will display a tooltip that provides information about what is not correctly configured.
We are planning to implement further improvements to the saving mechanism to notify you of any unsaved changes before you navigate away from your work.
Edit workflow generic properties
To edit the generic properties of existing workflows, follow these steps:
Click on the workflow you want to edit from the list of workflows.
Locate the pen icon in the top left corner of the screen and click on it. This will open a modal window (commonly known as a popup).
In the modal window, you can make modifications to your workflow's name, idle timeout, timeout message, timeout warning, and warning message.
After making the desired changes, click the "OK" button. It's important to note that clicking "OK" does not save your changes; it simply closes the modal.
To save your workflow with the updated properties, use the dedicated save icon located at the top left corner of the screen.
This process allows you to efficiently edit and save changes to your existing workflows.
Other designer features
Cloning a workflow
To clone a workflow, follow these straightforward steps:
Click the "Clone" button associated with the workflow you want to duplicate.
When prompted, provide a new name for the cloned workflow.
All nodes and settings from the original workflow will be replicated in the cloned version.
You will be automatically redirected to the newly cloned workflow.
Please make sure to save any changes in the current workflow before initiating the cloning process to ensure a smooth transition.
Cloning a node
To clone a node, follow these straightforward steps:
- Locate the node you want to clone within your workflow.
1 Click the "Clone" button associated with that specific node.
A new node will be created with all the properties of the original node.
Please note that the input and outputs of the cloned node will not be set, and you may need to configure them manually.
You can repeat the process and clone a node as many times as needed.
Be cautious when cloning the same node multiple times, as the clones may overlap in the workflow.
Multi-select nodes
To select multiple nodes, you have a few options:
Shift Key: Hold down the shift key on your keyboard and then, using your mouse, drag a square over the nodes you wish to select.
Delete Option: After selecting multiple nodes, you can drag them as a group or press the backspace key to delete them together.
CTRL Key: Alternatively, you can hold down the CTRL key on your keyboard and click individual nodes to select multiple nodes individually.
These methods make it easy to manage and manipulate multiple nodes within your workflow.
Deep link nodes
You can easily share a link to a specific node in your workflow with your coworkers and colleagues. Here's how:
Click the three dots menu (usually represented as "...") on the node you want to share.
Select the "Copy Link" option from the menu.
Paste the copied link into your communication with your colleagues.
When your colleagues click the link, it will redirect them to the specific node you shared. Please ensure that they have access to the tenant and the appropriate role-based access control to view workflows.
This feature makes it convenient to collaborate and discuss specific parts of your workflow with your team.
Search for a node
Designing large workflows can be challenging when you need to match the outputs and inputs of nodes. To simplify this process, the workflow designer offers a helpful tool:
When you select an output, a search field will appear.
Use the search field to find an existing node within your workflow.
Selecting a node from the search results will automatically establish a link between the output and the input of the searched node.
This feature streamlines the process of connecting nodes in complex workflows, making it easier to manage the flow of your design.