Skip to main content

Learn about the components Evaluate Answer, Intents, and Assignment.

Learn about the Evaluate Response, Intentions, and Assignment components

In this article, you will learn how these components are used and how they work so you can apply them to your flows.

Evaluate Response Component

Intentions Component

Assignment Component

Evaluate Response

This component is used to validate the client's response in interactions with the Template and Message components.

Purpose and utility:

  • If used in a Template or Message with buttons, an execution branch will be generated for each button, allowing you to configure different actions.

  • If used in a Template or Message without buttons, a single execution branch called "Other" will be created by default.

  • It is possible to manually add more branches to those already generated by default and configure the evaluation of the client's response.

Evaluation of the content entered by the client:

  • Add a branch manually and choose the type of value entered by the client, or you can also compare the information in the message body with the value of an information field dynamically, such as date of birth, email, etc.

  • The value to compare can be Multimedia or Message Body, but keep in mind that the dynamic comparison can only be done by selecting Message Body.

Types of values to evaluate:

Multimedia

  • You can select between formats such as image, audio, video, document, etc.

  • If you need to store the file in another repository, you must activate the advanced configuration to save it and use it later with the HTTP Request component.

  • To save the file:Select the format (default Base64 or URL).Assign a name to the file.Use the HTTP Request component with the POST method with the URL corresponding to the repository where we will save the image (CRM, Database), and in the body of the request, you must invoke in json format, the field to be saved through the option to add parameter, in this case "base64", as seen in the image:

  • Select the format (default Base64 or URL).

  • Assign a name to the file.

  • Use the HTTP Request component with the POST method with the URL corresponding to the repository where we will save the image (CRM, Database), and in the body of the request, you must invoke in json format, the field to be saved through the option to add parameter, in this case "base64", as seen in the image:

Message Body

  • It is any text entered by the client. It also has various validation conditions:Starts withEnds withIs equal toGreater than / Smaller thanContains / Contains date / Contains timeMatches regex(regular expressions)Is empty or has not been established

  • Starts with

  • Ends with

  • Is equal to

  • Greater than / Smaller than

  • Contains / Contains date / Contains time

  • Matches regex(regular expressions)

  • Is empty or has not been established

  • The value to compare must be completed in the "Result" field.

  • You can use Keywords or the Magic of Atom (AI).

Keywords (keywords)

  • Allows you to define keywords to direct the query to the correct option.

  • Example: If a user wants to make a payment, you can configure keywords such as "pay" or "make payment".

  • Keywords apply to the conditions starts with, ends with, is equal to.

  • If you click on the "+" symbol, you will see the "Save field" option, and in the dropdown you can select what type of field you want to store.

Magic of Atom (AI)

  • By activating this option, a field is enabled where you must describe the analysis scenario for the AI to process it.

  • Example:"Here the user is probably looking to pay their bill."

Other component settings:

  • Configure a timeout for a response. You can set a period that is minutes, hours, days or weeks

  • Save the client's response in an information field.

  • If you activate the "Timeout" configuration parameter, an additional branch will be generated on which you can attach the behavior you consider.

Tip:Keywords do not filter exact numbers, so it is recommended to use regex in these cases. Example: ^(1)$.

🚨 Advanced considerations and frequent configuration errors

As flows and integration with third parties become more complex, it is key to consider certain scenarios that can generate intermittencies or unexpected behaviors.

🤖 1. Unrecognized keywords: the flow does not start

In bots trained with platforms like Dialogflow, if a generic welcome message is not included or the keywords are not configured properly, the bot does not respond to new contacts until it receives an exact word. This can cause:

  • The user thinks there is an error.

The user thinks there is an error.

  • The bot does not activate any flow until the second or third interaction.

The bot does not activate any flow until the second or third interaction.

✅ Recommendation:Add an initial message that guides the user, even if the flow requires a keyword. For example:

Hello 👋 To help you better, write "I accept" or tell us what service you need: gasoline, current, tire, etc.

🔁 2. The bot promises an action (e.g. assignment) but does not execute it

When a message is configured as:

"You will soon continue conversing with an agent..."

...but the assignment component is not included, a false expectation is generated. If the assignment API fails or the configuration is not correct, the user is left unattended.

✅ Recommendation:

  • Make sure that each message that promises an action is supported by a functional component.

Make sure that each message that promises an action is supported by a functional component.

  • If there are doubts about the stability of the connection with third-party APIs, add a previous validation or conditional message.

If there are doubts about the stability of the connection with third-party APIs, add a previous validation or conditional message.

🔌 3. Silent failures due to errors in external APIs

In integrations with external APIs (such as assignment, identity validation, etc.), if the API is down or rejects the connection, the bot may continue its course without indicating that there was an error.

✅ Recommendations:

  • Implement fallback routes:If the API call fails, derive to a message that indicates the failure and try again or derive to another action.

Implement fallback routes:If the API call fails, derive to a message that indicates the failure and try again or derive to another action.

  • Configure automatic retries when possible.

Configure automatic retries when possible.

  • Validate with the technical team if there are logs or reports of failures in outgoing connections.

Validate with the technical team if there are logs or reports of failures in outgoing connections.

📌 4. Post-configuration validations

After configuring response and assignment evaluators:

✅ Check that all branches are complete.✅ Verify that the time without response is defined (to avoid blocked flows).✅ Confirm that there are no promises without technical support (e.g. messages that indicate something that does not happen).✅ Use internal test campaigns to test behavior in the first interaction.

⏱️ What does the "Time without response" option mean?

With this option, you can define how long the bot will wait before advancing if the user does not respond.

🧭 Where do I find it?

  • In the Evaluate Response component

In the Evaluate Response component

  • The "Time without response" field is enabled.

The "Time without response" field is enabled.

  • Choose the time (for example, 2 minutes).

Choose the time (for example, 2 minutes).

📌 What is it for?

  • 🔁 Redirect the user if they do not respond. Example: perform a Jump Start to another part of the flow

🔁 Redirect the user if they do not respond. Example: perform a Jump Start to another part of the flow

  • 👋 Close the flow in an orderly manner.

👋 Close the flow in an orderly manner.

  • 🧭 Show another option ("Do you want help with something else?").

🧭 Show another option ("Do you want help with something else?").

  • 🧍 Derive to an advisor in case of abandonment.

🧍 Derive to an advisor in case of abandonment.

✅ Good practices with "Time without response"

| ✔️ |

| Recommendation |

| ⏳ Use at least 2 minutes |

| Allow enough reading time |

| 🔁 Redirect to a clear option |

| Such as "Write 'Advisor' if you need help" |

| 🧪 Simulate the interaction |

| Validate that the "no response" route is activated correctly |

| ❌ Avoid loops |

| Do not redirect back to the same message |

💬Practical example:Message with buttons: "Buy" and "More info"If there is no response in 2 minutes → Show:

"It seems you are busy. If you need help later, write 'Advisor'."

🔄 Good practices to avoid unassigned conversations

To ensure that no contact is left unattended within the bot, it is key to configure the Evaluate response component correctly, considering both the expected responses and the cases in which the client does not interact.

✅ Recommended checklist for the Evaluate response component

  • Are all the necessary branches created?

Are all the necessary branches created?

  • Is a "no response" branch configured?

Is a "no response" branch configured?

  • Is the waiting time adjusted in "Time without response"? (Example: 90 seconds)

Is the waiting time adjusted in "Time without response"? (Example: 90 seconds)

  • Does that branch correctly derive to an advisor or a new block of the flow?

Does that branch correctly derive to an advisor or a new block of the flow?

🔎 The "no response" branch is useful when the user:

  • Does not respond in a given time.

Does not respond in a given time.

  • Sends a response that does not match any of the configured branches.

Sends a response that does not match any of the configured branches.

⚠️ Common errors that prevent assignment

  • Lack of the no response branchIf it is not included, the user is paused in the current component. The flow does not advance or assign.

Lack of the no response branchIf it is not included, the user is paused in the current component. The flow does not advance or assign.

  • Assignment group without available agentsIf it is assigned to a group that contains only administrators or inactive agents, the conversation is not derived.

Assignment group without available agentsIf it is assigned to a group that contains only administrators or inactive agents, the conversation is not derived.

  • Number of flow jumps exceededIn jump components, if the user goes through the same branch more times than allowed, the flow ends without assignment.

Number of flow jumps exceededIn jump components, if the user goes through the same branch more times than allowed, the flow ends without assignment.

💡 Additional recommendations

  • Always include a containment branch ("no response") in the evaluators.

Always include a containment branch ("no response") in the evaluators.

  • Review the assignment groups: they must be active and have assigned agents.

Review the assignment groups: they must be active and have assigned agents.

  • Verify the value of allowed jumps in flow Jump components.

Verify the value of allowed jumps in flow Jump components.

  • Test the flow before publishing it in production to confirm that all routes have assigned output.

Test the flow before publishing it in production to confirm that all routes have assigned output.

Assignment

This component allows you to assign customer service to a group or a specific agent.

Purpose and utility:

  • You can configure assignment messages and out-of-hours messages if the agent is not available.

  • Assignments also function as a flow end, reducing the number of branches.

Intentions

This component simplifies customer interaction by identifying their intention without the need for multiple branches in the flow.

Purpose and utility:

  • Allows the customer to quickly access the desired information without going through multiple menus.

  • Instead of creating several branches for each option, you can upload a document with detailed descriptions in PDF, XLSX, CSV, XLS, DOCX or DOC format.

Also to optimize this component, it is necessary to complete the configuration of the Intention, by clicking on the wheel next to the name of the intention:

By clicking there, you will see a prompt guide so that you can complete with the interests of your business and establish those points that cannot be missing in your knowledge base such as restrictions, personality, format.

Remember to click on the save button to store your information.

Knowledge Base: Documents and Catalogs

In the Intentions component, you can upload information to the knowledge base in two ways:

  • Through a document in .XLSX, .CSV, .DOCX or .PDF format, where you include questions and answers about your products or services.

  • Using catalogs in Atom, if you already have catalogs configured.

The Catalogs functionality will be enabled progressively for all industries. If you do not see this option, you may not have catalogs configured yet.

To use the knowledge base with catalogs, you must first activate it and select one or more available catalogs. If you have many, you can use the search engine to find them faster.

What happens after loading the knowledge base?

Once the information is loaded, either by document or catalog, you can focus on the intentions and output events, such as:

  • Talk to an advisor

  • Buy

  • Book

When a user selects an intention (for example, buy or book), they will be automatically derived to the corresponding group of agents to complete the action.

Save Intentions Information

You can store the generated intentions in information fields. To do this, click on the wheel icon and configure the field where you want to save the data, for example, in area_interes to record the user's interest in a specific category.

Did this answer your question?