User Guide
eva 3.4.1
eva 3.4.1
  • Home and Support
  • What's new
  • Changelog
  • Using eva
    • Overview
      • Virtual Agents
      • Main Concepts of eva
      • Glossary
    • Developing virtual agents
      • Quick Start with eva
      • Dialog Flows
      • Dialog Cells
        • Intent Cells
        • Entity Cells
        • Answer Cells
        • Service Cells
        • Input Cells
        • Jump Cells
        • End Cells
        • Code Cells
        • Rule Cells
      • Training task
      • Export and import agents
      • Create virtual agents from templates
      • Create and manage users
    • Channels
      • Integrating Existing Channels
    • Testing Virtual Agents
      • Test a virtual agent
      • Automated Test
    • Natural Language
      • eva NLP
      • Training with eva NLP
      • Training with eva Automated Learning
      • Using other NLP engines
    • Analytics
      • External analytics platforms
    • Experience
      • Context Management
    • Advanced Options
      • Parameters
      • Intent Navigator
      • PII Data masking
    • How Tos
      • Creating variable answers with Code and Rule cells
      • Videos
  • for technicians
    • eva server Installation guide
    • API Guidelines
      • Conversation API
      • Cloner API
      • Webhooks
    • Supported/verified third-party software
    • Appendices
    • Data Extraction
Powered by GitBook
On this page
  1. Using eva
  2. Developing virtual agents
  3. Dialog Cells

Code Cells

PreviousEnd CellsNextRule Cells

Last updated 2 years ago

Code Cell works with information available in eva’s system that doesn’t depend on APIs. It also allows creating variables, that's why it provides immense advantages in a virtual agent flow creation process.

Code cells are very useful in various scenarios, for example:

  • In ecommerce, the Code cell would be responsible for almost the entire process, such as calculating the number of items or calculating the purchase, etc. Only the chosen products availability search and the finalization of the purchase would be in charge of the Service cell.

Below, to insert in a Code cell, there is an example of code to calculate the value of the purchases in a shopping cart:

var total = 0.0;
if (visibleContext.shoppingCart != null && visibleContext.shoppingCart.items != null) {
    for (i in visibleContext.shoppingCart.items)
        total += i.price;
}
  • You can also create a simple variable:

hiddenContext.myvar = 5;
  • Or validate user login after a service call:

hiddenContext.logged = true
  • In a game, you can simplify a lot the creation of quiz bringing together in a single cell all the questions and answers:

hiddenContext.questions = {
    "1": {
        "question":"What is the name of the first chatbot ever?",
        "answer":"ELIZA"
    },
    "2": {
        "question":"When was ELIZA created?",
        "answer":"1966"
    }
};.
  • Manipulate objects

  • Anticipate executions and actions

  • Perform services without the need for APIs

  • Save time

  • Reduce services costs

How can you create a Code Cell?

Just insert a code snippet in JavaScript as shown in the image below:

The variables below can be used in eva on the Insert code field:

Value
Function

input

information that users write to the virtual agent and fed into eva

opencontext

information that is open to channels to alter its values

visiblecontext

information that is open to channels, but its values cannot be changed

hiddencontext

information that is closed to channels, being visible only to eva and the services called

intents

information registered in eva that means all about what the user wants to get out of the interaction

entities

information registered in eva that means knowledge repositories used by the virtual agent to provide personalized and accurate responses

channelType

channel's type (if it's web, Facebook, Alexa, etc..)

channelName

Channel's name registered in eva

botName

Unlike the , which connects data from a company via an API, Code Cell performs many activities (such as calculations and validation) without the need for this connection. This gives you the following advantages:

Important: With and cells, you can create . 😉

You can use JavaScript’s variables (if you wanna know more about this language, ) and program any code in it, as long as it’s executable within 100 milliseconds.

Service Cell
Code
Rule
Variable Answers
access this page
Code cell field