Development Environment

Last updated: Mar 24th, 2018

Introduction

Environment

Shown above is an image of the Cuneiform development environment. The development environment consists of the following components.

Intent Menu

Intent Menu

The intent menu shows the list of intents the developer has created in the application. Developers are provided the option to create a new intent, which redirects to the Intent Properties view.

Operations Menu

Operations Menu

The operations menu contains the name of the current intent the developer is working on, and a set of operations.

  • Save () - Saves the current intent code
  • Intent Code () - Toggles the Intent Code menu
  • Intent Properties () - Navigates to the Intent Properties menu
  • Try it Emulator () - Toggles the Try it Emulator

Intent Code Menu

The intent code menu can be seen in the right navigation menu of the development environment. If this menu is not visible, it can be toggled to be made visible and invisible using the icon in the operations menu. The intent code menu contains three tabs.

  • Variables
  • Nodes
  • Functions

Variables

Variables

The variables tab shows the global variables in the selected intent code. Global variables can be accessed and modified by all nodes and functions within the intent.

New variables can be created by providing a name, and a value. A variable can be created without providing a value as well. The variable value can be assigned to a system operation by clicking on the button, and then selecting the system operation from the dropdown menu.

Nodes

Nodes

A Node consists of three attributes

  1. Priority
  2. Preconditions
  3. Action

The priority, and preconditions can be seen on the cards displaying each node in the intent. The action for a node is represented in Cuneiform code. The action code can be viewed by clicking on the Action Code button.

A new node can be created by clicking on the Create New Node button.

Try it Emulator

The Try it Emulator provides the developer with a method to test the conversation flow of the developed application. Once saved, the developer can communicate with the emulator via text, and it would provide responses to the application in a similar way to how it would once deployed.

Emulator

Development View

The development view is the main component of the development environment. The development view consists of two tabs.

  • Graph - Visual representation of the conversation for the intent.
  • Code - Contains the intent code in the Cuneiform programming language.

Intent Properties

The intent properties component of the development environment can be accessed by clicking on in the operations menu.

Intent Properties

This view provides the developer with the facilities to add and modify properties of an intent. An intent has the following three properties.

  • Initiative - The action that initiates the system.
  • Sample Utterances - Set of likely spoken phrases mapped to intents.
  • Slots - Pieces of information passed along user utterances.

What's next?

The next section explores the Cuneiform script.