...
Name: Specify a name for the bot.
Description: Add a description, indicating the purpose/purpose of the bot.
Bot Template: Select one of the available bot templates to start building your bot, or select Empty Bot if you want to create your bot from scratch. The available templates contain examples of different types of nodes and allow you to have conversations with customers for three specific use cases:
Appointment Scheduling: generates a conversation for scheduling an appointment for a specific service. It contains a node that queries available appointment schedules through a web service and displays them to the customer for selection.
Prospect Capture: Generates a conversation for capturing prospects for your company. Captures and stores different prospect data (name, type of document, email, etc.).
Satisfaction Survey: Generates a conversation to conduct a customer satisfaction survey. It asks the customer to rate the service received (on a scale of 1 to 5) and collects comments.
Use an existing bot as a template: Activate this option if you want to use a bot previously created on the platform as a template for your new bot. Upon doing so, a selector with available bots will be displayed. Choose the bot you want to use, and its published version will be duplicated and automatically loaded as a template for the new bot.
Once the requested information has been entered, click Continue to access the bot builder. Here, you will find the screen divided into three (3) main sections:
...
...
The The top bar will include the bot's basic data , of the bot and will allow you to edit it them by clicking the Edit button on the left side of the bar. Also, it will include the different saving options of the bot, such as Save version, Publish version, etc.It will also display a list of all available versions of the bot and various options for saving the bot: Save Version and Publish Version.
The panel on the left corresponds to the work area, and will show the different nodes that make up the bot and the connections between them. This graphical visualization of the bot will help you better follow the flow of the conversation. In this work area you can use your mouse to zoom in and out, and also to select a specific node or its connections and move its position within the work area.
The panel on the right side of the screen
...
allows you to add new nodes and edit the
...
configuration of existing nodes. By clicking
...
the Edit button of a specific node,
...
its configuration will be displayed in this panel
...
, allowing you
...
to make
...
necessary modifications.
...
...
Additionally, clicking the "Conversation Preview" button will open a window in this panel where you can send a message. The bot will initiate the conversation flow, allowing you to validate its correct functioning.
...
Building the Bot: Nodes and Connections
...
Name: It is the name of the node.
Description: Is the description and/or purpose of the node within the flow.
Intent: It is the specific intention of the end customer when entering the node. It is recommended that the intentions of each of the nodes are unique and different, since this value will be used to obtain statistics and analyze the bot's conversations.
Pattern: This is the pattern or regular rule that must match the incoming messages sent by your customer for the bot to execute the node's logic. This pattern can be an exact text string (for example, if the given pattern is "Hello", the node logic will execute when the customer types "Hello", or a regular expression that encompasses several options. More information about regular expressions and patterns here: https://developer.mozilla.org/es/docs/Web/JavaScript/Guide/Regular_Expressions
Node Type: This is the type of node and must be selected according to the purpose of the node (giving a message to the customer, asking the customer for information, querying an external web service, etc.). The available node types are (find the detailed description of each node type below):
Ask
Say
Capture: By selecting this field type, the following additional fields will be displayed in the form:
Expected: Type here a regular expression to validate the response sent by the customer.
List: By selecting this type of field, the following additional fields will be displayed in the form:
List: Specify here the list of values to be shown to the customer for selection. In case the tickets come from a previous node of Web Service type, use the nomenclature {{webhook.response}}.
Fallback: When selecting this type of field, the following additional fields will be displayed in the form:
Bot: Select here the bot to which the conversation will be moved in case of exceeding the maximum attempts.
Bot Node: Select here the bot node to which the conversation will be moved in case the maximum attempts are exceeded.
Maximum Attempts: Specify here the maximum number of attempts that the customer will have to retry the previous step to this node.
Scheduled Node: When selecting this type of field, the following additional fields will be displayed in the form:
Start Date: Specifies here the start date of the period/range during which this node will be applied.
End Date: Specify here the end date of the period/range during which this node will be applied.
Validator: When selecting this field type, the following additional fields will be displayed in the form:
Condition Type: Specifies here whether the validation rules will be applied with the conditional and (or - all of the rules comply) or with the conditional or (or - some of the rules comply).
Validation Rules: Add one or more validation rules, specifying a variable, an operator, and a value.
Web Service: When selecting this field type, the following additional fields will be displayed in the form:
Request Type: Select one of the available HTTP request types (GET, HEAD, POST, PUT, DELETE, CONNECT, OPTONS, TRACE, PATCH).
URL/Endpoint/IP: Specify here the URL/endpoint/IP address to access the webservice. For example, https://mywebservice.mybusiness.com/getCustomerInfo/4224563
Headers: Specify here the headers that should be added to the HTTP request to consume the web service. For example, { "Authorization": "AccessKey GoCsdWE5rR2x7oXTQ4cPn4fTb5R"}.
Body: Specify here the body of the HTTP request. Generally, this body should have a JSON structure. For example, {"first name": "Jane", "last name": "Doe}.
Timeout: Specify here the maximum time Sagicc will have to wait when consuming the web service. If this time is exceeded, the request will be considered failed.
Dialog Flow
Go to
Bot: Select here the bot to which the conversation will be moved.
Bot Node: Select here the bot node to which the conversation will be moved.
Use template: Activate this option if the message you want to send in the node corresponds to a previously created template in Sagicc. By activating it, you will be able to select the desired template.
Message: This is the message that will be sent to the customer in this conversation node. It can be a customized message with variables, emojis 😀😎😋, links (), specific formatting (hello, hello,
hello), and can include variables associated with the case, customer, and other entities in Sagicc. Use the Variables option to copy variables and include them in the message."Action: corresponds to an action that will be executed in Sagicc when the conversation between the bot and the customer passes through this node. The available actions are:
Transfer to agent: Transfers the conversation with the customer to a human agent of the campaign, modifying the user assigned to the ticket generated for the conversation.
Transfer to a campaign: Transfers the conversation with the customer to a different campaign.
End conversation: Marks as closed the ticket generated for the conversation with the customer.
Release conversation: Removes the user assigned to the ticket generated for the conversation (Sagicc System) and leaves the ticket free so that any human agent can take it and continue the conversation with the customer.
Enabled: Specifies whether the node is enabled or disabled in the flow.
Node Types
Node Type | Description | Campos Adicionales | Ejemplo de Uso |
---|---|---|---|
Say | This type of node will allow you to say (send) a specific message to the customer and immediately move on to the next node in the flow. | None |
|
Ask | This type of node will allow you to ask a specific question to the customer and wait for an answer. The answers accepted in this node, such as words, numbers or phrases, must be defined in the following nodes to define the flow depending on the answer given by the customer. | None |
|
Capture | This type of node will allow you to say (send) a message, wait and capture the response from the customer to store it in a Sagicc variable. It is possible to add a regular expression to validate the response sent by the customer, and specify the variable in which the response will be stored. Important: It is recommended to configure at least 2 child nodes for this type of node: one for the tickets where the customer's response does comply with the validation pattern, and one for the tickets where the response does not comply with the pattern. |
|
|
List | This type of node will allow you to show the customer a list of options to select from. These options can be static, or they can be previously consulted with a Web Service type node. Important: It is recommended to configure at least 2 child nodes for this type of node: one for the tickets where the customer selects a valid option, and one for the tickets where the customer selects an invalid option. |
|
|
Fallback | This type of node will allow you to execute a specific action in case the bot does not recognize the customer's intent. The node will allow you to say (send) a message to the customer, and return to the previous node for the customer to try to continue the conversation. This behavior will be repeated a specific number of times, and in case of reaching the maximum number of attempts, you can move the conversation to another node or specific bot. |
|
|
Scheduled Node | This node will allow you to execute an action in a specific period/range of time (for example, send your customer a message during the holidays). This node takes into account a start date and an end date, to define whether the logic of the node is applied and the message is sent to the customer. If the node is not applicable, the bot will skip this node and move to the next one. |
|
|
Validator | This node will allow you to perform advanced validations of the input variables captured by the bot. It is possible to configure one or more validation rules in this node. Important: It is recommended to configure at least 2 child nodes for this type of node: one for the tickets where the input variable meets the validation rules, and one for the tickets where the input variable does not meet the validation rules. |
|
|
Web Service | This type of node will allow you to integrate with services external to Sagicc, consume APIs or web services and process information to be used by the bot. This node makes a request to a REST type web service, and stores the information obtained in the variable {{webhook.response}}, which can be used in the following nodes. Important: It is recommended to configure at least 2 child nodes for this type of node: one for the tickets where the request to the web service is successful and information is obtained, and one for the tickets where the request to the web service fails or an error occurs. |
|
|
Dialog Flow | This node will allow you to easily integrate with the Dialog Flow service (Google) and connect your projects with the bot (more information about Dialog Flow here https://dialogflow.cloud.google.com/). Remember that you need administrator access to the Dialog Flow account to get the project credentials and configure this node. |
|
|
Go to | This node will allow you to send the conversation with the customer to a specific node of the bot or move the conversation to another Sagicc bot. |
|
|
Save and Publish the Bot
...