Dialogue Studio User Guide

Introduction

Anywhere365 Dialogue Studio provided nodes for Node-Red. Node-RED is a tool for designing and programming flows. In online communities a lot of information can be found on how to use Node-Red, this guide will focus primarily on the Anywhere365 Nodes.

To use Dialogue Studio navigate to the url that it is installed on. Default the port 1880 is used for Dialogue Studio but this can be easily changed.

 

The Basics

You will now see by default an empty canvas with a lot of options in the right side bar, these options are called "nodes". To start drag it is possible to drag and drop one of these nodes to the canvas. Anywhere365 is delivering a set of these nodes to control certain actions in the UCCUCC stands for Unified Contact Center and consists of a queue that can be handled by Agents Each Contact Center has its own settings, interactive voice response questions and Agent with specific skills. Agents can be member of, or sign up to, one or more Contact Centers.. The empty canvas you see is called a "flow", you can see the active flows in the bar on top just beneath the black header. Add/create a new flow by clicking the plus sign in the bar with flows and next to it is a button to get a list of all the flows.

When you want to know what a node is doing, accepting or passing on you can select it and look in the right bar, make sure you select the "node information"-tab as shown below. There is also a tab over here to see debug and error messages, it is indicated by a button with a bug on it.

After you complete or change a flow the button in the right top will be turned red. It is called "Deploy" and will confirm the changes you made so they are live.

Warning Do not deploy on a production environment when customers are calling. The calls that are in node-red at that time will be lost.

 

Anywhere365 Nodes

You know the way around the UI now and lets talk about the Anywhere365 nodes will trigger your flow and when they trigger.

Icon

Description

Incoming call

The incoming call node triggers when a conversation (both audio and chat) enters the Unified Contact Center (UCC). This is the starting point of a flow.

InDialogue

The InDialogue node triggers when a conversation is connected to an agent. There are always two participants (the customer and the agent). Use this node in your flow to whisper to an agent (or customer) and to trigger actions like transcribing, translating or any other.

PostDialogue

The PostDialogue node triggers when one of the participants disconnect. It can be used to send a after conversation message to a customer or an agent. Also, you can initiate any other actions or confirm anything. After a message or a action the No Action node should be used to finish the PostDialogue phase of the session.

QM Q​uestion

The QM Question node triggers for each quality monitor question configured to use the Dialogue Flow Plugin after the PostDialogue is ended. Use the QM Answer node to send an answer and continue to the next question or the next phase in the conversation.

​​Event Bus

The Event Bus node triggers for all events received from the UCC. ​

 

Create your first flow

​Let's start by dragging one of the trigger nodes to the canvas, the easiest to use and best for your first flow is the Incoming call node. Drag the incoming call node to your canvas. If you want to know more about the node check the node information as told in the begin of this chapter.

​Next you need to configure the nodes behavior. Go to the settings of the node you dropped in the canvas by double clicking it. Now a settings windows slides in, settings like this can be opened for every node in Dialogue Studio. The content of the setting depends on the node. For the incoming call node it will look like this:

You can change the settings and use the button done to confirm or cancel to cancel and forget your current changes. If you don't want to use the node anymore, you can remove it by pressing the delete button. You can also delete a node by selecting it in the canvas (single click) and hit you delete button on the keyboard.

Almost all nodes and configuration will have a Name field. This field is only to change the name of the node to make it easier to find. It is not necessary to fill it in, but with more nodes it gets difficult to find them. By filling in a name that is logical it will be easier to find a node in a list or in the canvas.

For all the trigger nodes you need to setup the server to connect to the UCC server. Let's configure this connection, each trigger will need a configuration like this. Luckily we can create the configuration for your UCC once and re-use it in all the necessary nodes. Behind server select "Add new any-red-config", which probably already is selected and click on the edit-button (pencil) behind the selection box. A new window will open where you can configure

Setting

Description

Name

Almost all nodes and configuration will have a Name field. This field is only to change the name of the node to make it easier to find. It is not necessary to fill it in, but with more nodes it gets difficult to find them. By filling in a name that is logical it will be easier to find a node in a list or in the canvas.

Server

For all the trigger nodes you need to setup the server to connect to the UCC server. Each trigger will have a server field, luckily we can create the configuration for your UCC once and re-use it in all the necessary nodes.

Let's configure the UCC connection for our incoming call. Behind server select "Add new any-red-config", which probably already is selected and click on the edit-button (pencil) behind the selection box. A new window will open where you can configure the server connection. a name field is present but use is optional. Fill in the service URL to "http://localhost:<configuredPortNumber>" and change localhost if node-red is not running on the same server as the UCC. Press done to confirm.

In the settings of the node we will set the Filter to Audio, this will only pass audio calls for now. Press done to confirm. The flow will not be triggered yet. To upload it to node-red and make it active instantly press the Deploy button on top.

Warning Do not deploy on a production environment when customers are calling. The calls that are in node-red at that time will be lost.

​​This makes our first node working, but when we call you hear and see nothing because node-red is not using any actions. Next we will drag a say node to the canvas behind the incoming call node, double click it and ​enter "Welcome, we will disconnect you in a moment" in the message field. Then start dragging at the little square that is the output of incoming call and drag it to the input of the say node as displayed in the image below.

​A line will now be connecting your two nodes. Let's also drag a disconnect node to the canvas behind both nodes. When you double-click the node you notice there is only a name to be set, so we don't have to configure anything for this node.

Your flow will now look something like this:

You completed your first working flow. When you now call your UCC, you hear the text you typed earlier and after it is finished the call will disconnect.

 

​​How to continue?

The sample above is very simple and not using questions, skills or other intelligent behavior. To learn more you should start playing with and extending this flow. To get you started we have added some samples to the dialogue studio. You can find the samples by going to the menu on the top right. Then click on Import.

In the window that opens, click Examples and then select Anywhere365-red to see samples using the UCC. They are mentioning if they are using chat or audio.

After opening a sample you will see some comment nodes to explain actions you need to do to get it working, this is to guide you through necessary changes in the UCC or the flow to get everything to work. For sample you always need to configure your UCC connection before it will work.

For bigger and more advanced scenarios it is possible that a new flow is added to your Dialog Studio. It will be added to the flow-bar discussed earlier. When this is the case you can double-click the flow and we will fill the description of the node with some guidelines on how to use the flow or more background to the scenarion. You can use this combination with comments in the flow itself to get it up and running.​

Remember to check the node information for a node if you get stuck with settings or in-/outputs.​

 

Advanced information

​​When you are up for it, let's get into some more information. Lets first navigate through the column that Dialogue studio is showing on the right.

Not all the tabs are always visible, if the column is to small you can press an arrow to show the rest of the options. The options Node Information and Debug we already discussed and we will give some more information over here.

Node information

The node information is showing information about a node or flow you are currently selecting, click another one and it will change to that node. First there is some information about the project followed by the identifier of the node, the name it has and of what type it is. Next part gives a description which can be added by the user. Double click a node and go to description tab (description_icon.png) to add or edit this part. In example it sometimes filled to describe what a node is doing and you can add it for that same reason.. Then in the last part some Node Help can be found, this is added by the developer of a node to guide you through the process of using the node, mostly helpful information about how to use the node.

​Debug

The debug tab will show errors when they happen and you can use the debug node to show information about a message passed along​. Just add a inject-node and connect a debug node to test this, after deploying when you press the inject button some information will be shown in the debug tab.

Configuration nodes​​​

The Configuration you will mostly access through a node, but sometimes references get lost or settings are wrong. You are always able to find the configuration nodes in this tab. So they are never lost.

Context Data

​Context data will show you the ​data that is saved in your a node, a flow and/or in the complete application (global). It is possible to save information with nodes like function and change. By using this tab you can check all the currently available data:

If nothing is showing press the little refresh-button. You also can delete context data in this view.