CSML Studio
  • Introduction
  • 🦜Getting started
    • Create Your First Bot
    • The Dashboard
    • AI & Natural Language Processing
      • AI Rules
      • Configuring a NLU Provider
    • Apps and Integrations
      • Authoring Custom Apps
      • CSML Integrations
      • Tools and utilities
      • Preprocessing
    • Livechat
      • Chatwoot
    • Bot Configuration Options
    • Authenticating Users
    • πŸ’»CSML Language Reference
  • πŸ”ŒStudio API
    • Getting Started
    • Authentication
    • Studio CLI
    • API Reference
      • Chat API
      • Broadcasts API
      • Bot API
      • Conversations API
  • πŸ“±Channels
    • Introduction
    • Assistant
      • Installation
      • Configuration
      • Customization
      • Widget
      • Message Formats
    • Workplace Chat
      • Installation
      • Uninstallation
      • Configuration
      • Features and message formats
    • Microsoft Teams
      • Installation
      • Features
    • Google Chat
      • Installation
      • Features
    • WhatsApp
      • Installation
      • Features and Limitations
    • Telegram
      • Installation
      • Features
    • SMS (with Twilio)
      • Installation
      • Features and Limitations
    • Slack
      • Installation
      • Message formats
      • Features
    • Callbots (with Twilio)
      • Installation
      • Features and Limitations
    • Amazon Alexa
      • Installation
    • Google Assistant
      • Installation
    • Messenger (legacy)
      • Installation
      • Configuration
      • Features
      • Message formats
    • Instagram (legacy)
      • Installation
      • Configuration
      • Features
    • Webapp (legacy)
      • Installation
      • Configuration
      • Customization
      • Chatbox
      • Message Formats
Powered by GitBook
On this page
  • Build your chatbot with CSML Studio
  • Create your own conversational experiences
  • Manage interactions
  • Memory and local variables
  • Connect apps and execute your own functions
  • Deploy your chatbot

Was this helpful?

Export as PDF

Introduction

NextCreate Your First Bot

Last updated 3 years ago

Was this helpful?

CSML (Conversational Standard Meta Language) is an open-source programming language dedicated to building chatbots.

It acts as a linguistic/syntactic abstraction layer, designed for humans who want to let other humans interact with any machine, in any setting. The syntax is designed to be learned in a matter of minutes, but also scales to any complexity of chatbot.

CSML handles seamlessy and automatically short and long-term memory slots, metadata injection, and can be plugged in with any external system by means of or , as well as consume scripts in any programming languages using built-in parallelized runtimes.

To learn more about CSML, you can read this .

Build your chatbot with CSML Studio

The easiest way to develop CSML chatbots is by using the , using a sample bot available in your library or by creating your own.

Each bot gives you a full access to the CSML framework - a set of specialized tools to make and customize your chatbots : code editor, chatbox, apps, functions and files library, analytics and channels.

Create your own conversational experiences

A flow is a CSML file which contains several steps to be followed during a conversation with a user. The first instructions have to be placed in the start step, then you can move from a step to the next one using goto stepname, and finish the current conversation using goto end. Each step contains instructions on how to handle the interactions within the step: what to say, what to remember, where to go...

  • to display a message: text, questions, urls, components (image, video, audio, buttons…)

  • to simulate behaviors, such as waiting time (Wait) or message composition (Typing)

Manage interactions

Like a human, a chatbot is supposed to understand and react to messages sent by the user.

In a conversational logic, CSML allows the chatbot to wait for a user answer using the keyword hold, and interpret the expected user input (called event) to trigger an action.

Here is an example of a simple interaction where the bot is asking if the user likes guitar and waiting for two specific answers in order to trigger actions.

Memory and local variables

The memories are assigned as followed use the keyword remember and can be reused in every step or in a future conversation, while the local variables are executed within one step, assigned with the use keyword.

You can output any variable into a string value with the double curly braces.

Connect apps and execute your own functions

Deploy your chatbot

Ready to experience CSML?

You can create your own conversations by modifying an existing flow or .

For the bot to say a sentence, you just need to use the keyword say followed by the you want to send.The keyword say allows:

is essential in the CSML logic. When two people are chatting, they constantly memorize and update information to be reused in future discussions. CSML provides two types of variables: local variables, with a very short life cycle, and persistent variables, called memories.

You can select an existing integration in the apps library or add your own function coded in any language. Find a few examples in our and how to use functions in our

Once your function is uploaded, you can test it and call it in a CSML flow. !

Once your chatbot is ready to chat with your users, you can select the channel you want to connect on. For example, using the you can connect your bots to Slack, Messenger, Whatsapp and other channels, or use the to receive requests.

creating your own
type of message
Memory
GitHub repository
documentation.
Read more about functions and apps here
CSML Studio
CSML Client API
channel integrations
custom APIs
article
CSML development studio
Some of the Chatbot Templates available in CSML Studio