Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This document explains how to create a working chatbot from scratch.

...

Table of Contents
minLevel1
maxLevel7

Overview

In this short tutorial, we will walk you through the process of creating a basic chatbot.

Prerequisites

  1. Access to an Orbita sandbox

  2. A new or existing project you would like to create this chatbot

Flow Studio Flow

  1. Login to the Experience Manager.

  2. Navigate to the Project Side navigation menu > Create > Agents > Flow Studio.

     

  3. Click on the Create a Flow button.

     

  4. Give a name and description to your Flow studio.

     

  5. Create a conversation using the Flow studio. Refer to Guide to Flow Studio
    or follow the below steps and import the Flow studio conversation.

    1. If you are in an empty flow studio, save it by clicking on the tick icon on the bottom right corner.

       

    2. Select the Flow studio conversation > Verticle ellipses button > Import/export.

       

    3. Select the import tab > Copy the below code and paste it here > click on Import

      Code Block
      {
          "flowData": {
              "class": "GraphLinksModel",
              "copiesKey": false,
              "linkFromPortIdProperty": "fromPort",
              "linkToPortIdProperty": "toPort",
              "nodeDataArray": [
                  {
                      "key": "857428463371497251",
                      "name": "Start",
                      "description": "",
                      "type": "start",
                      "category": "",
                      "loc": "232.52284749830795 70.10354461669922",
                      "size": "80 80"
                  },
                  {
                      "key": "402026513763859450",
                      "name": "End",
                      "description": "Thanks for your time.\nThe conversation Ends here\n",
                      "type": "end",
                      "category": "",
                      "loc": "232.52284749830795 850.0689865401407",
                      "size": "80 80",
                      "multiScreen": {
                          "description": "",
                          "validation": {
                              "valid": "",
                              "invalid": ""
                          },
                          "voice": {
                              "sayText": "<p>Thanks for your time.<br />\nThe conversation <strong>End</strong>s here</p>\n",
                              "rePrompt": ""
                          },
                          "chat": {
                              "chatText": ""
                          },
                          "screen": {
                              "shortTitle": "",
                              "longTitle": "",
                              "body": "",
                              "smallImage": "",
                              "largeImage": ""
                          },
                          "buttons": {
                              "type": "dropdown",
                              "name": "buttons",
                              "choices": []
                          }
                      },
                      "directives": {
                          "micInput": true,
                          "keyboardInput": true,
                          "waitTimeNoAnimation": false,
                          "endSession": false
                      }
                  },
                  {
                      "key": "742436401836062521",
                      "name": "Say",
                      "description": "Welcome to your first conversation flow using flow studio\n",
                      "type": "message",
                      "category": "",
                      "loc": "232.52284749830793 261.8334813484056",
                      "multiScreen": {
                          "voice": {
                              "sayText": "<p>Welcome to your first conversation flow using flow studio</p>\n"
                          },
                          "chat": {
                              "chatText": ""
                          }
                      }
                  },
                  {
                      "key": "417833740235547202",
                      "name": "Rating",
                      "description": "Please rate the document you just viewed.\n",
                      "type": "rating",
                      "category": "",
                      "loc": "107.52284749830794 658.3390498084344",
                      "rateValues": [
                          {
                              "value": "1",
                              "text": "",
                              "data": ""
                          },
                          {
                              "value": "2",
                              "text": "",
                              "data": ""
                          },
                          {
                              "value": "3",
                              "text": "",
                              "data": ""
                          }
                      ],
                      "multiScreen": {
                          "description": "",
                          "validation": {
                              "valid": "",
                              "invalid": ""
                          },
                          "voice": {
                              "sayText": "<p>Please rate the document you just viewed.</p>\n",
                              "rePrompt": ""
                          },
                          "chat": {
                              "chatText": ""
                          },
                          "screen": {
                              "shortTitle": "",
                              "longTitle": "",
                              "body": "",
                              "smallImage": "",
                              "largeImage": ""
                          }
                      },
                      "directives": {
                          "micInput": true,
                          "keyboardInput": true,
                          "waitTimeNoAnimation": false,
                          "endSession": false
                      }
                  },
                  {
                      "key": "649811202072708483",
                      "name": "Yes/No",
                      "description": "Do you like the document?\n",
                      "type": "boolean",
                      "category": "",
                      "loc": "232.52284749830793 460.08626557842007",
                      "yesDataLabel": "Yes",
                      "noDataLabel": "No",
                      "yesData": "",
                      "noData": "",
                      "multiScreen": {
                          "description": "",
                          "validation": {
                              "valid": "",
                              "invalid": ""
                          },
                          "voice": {
                              "sayText": "<p>Do you like the document?</p>\n",
                              "rePrompt": ""
                          },
                          "chat": {
                              "chatText": ""
                          },
                          "screen": {
                              "shortTitle": "",
                              "longTitle": "",
                              "body": "",
                              "smallImage": "",
                              "largeImage": ""
                          }
                      },
                      "directives": {
                          "micInput": true,
                          "keyboardInput": true,
                          "waitTimeNoAnimation": false,
                          "endSession": false
                      }
                  },
                  {
                      "key": "185352052922068022",
                      "name": "Say",
                      "description": "Thats sad. Please leave a comment on the document on what can be improved.\n",
                      "type": "message",
                      "category": "",
                      "loc": "382.52284749830795 658.3390498084344",
                      "multiScreen": {
                          "voice": {
                              "sayText": "<p>Thats sad. Please leave a comment on the document on what can be improved.</p>\n"
                          },
                          "chat": {
                              "chatText": ""
                          }
                      }
                  }
              ],
              "linkDataArray": [
                  {
                      "from": "857428463371497251",
                      "to": "742436401836062521",
                      "fromPort": "OUT",
                      "toPort": "IN",
                      "points": [
                          232.52284749830798,
                          110.15531692504884,
                          232.52284749830798,
                          120.15531692504884,
                          232.52284749830798,
                          147.68120307922365,
                          232.5228474983079,
                          147.68120307922365,
                          232.5228474983079,
                          175.20708923339845,
                          232.5228474983079,
                          185.20708923339845
                      ]
                  },
                  {
                      "from": "742436401836062521",
                      "to": "649811202072708483",
                      "fromPort": "OUT",
                      "toPort": "IN",
                      "points": [
                          232.5228474983079,
                          318.45987346341275,
                          232.5228474983079,
                          328.45987346341275,
                          232.5228474983079,
                          355.9598734634128,
                          232.5228474983079,
                          355.9598734634128,
                          232.5228474983079,
                          383.4598734634129,
                          232.5228474983079,
                          393.4598734634129
                      ]
                  },
                  {
                      "from": "649811202072708483",
                      "to": "417833740235547202",
                      "fromPort": "Yes",
                      "toPort": "IN",
                      "points": [
                          292.63306173170633,
                          526.7126576934272,
                          292.63306173170633,
                          536.7126576934272,
                          292.63306173170633,
                          554.2126576934271,
                          107.52284749830794,
                          554.2126576934271,
                          107.52284749830794,
                          571.712657693427,
                          107.52284749830794,
                          581.712657693427
                      ]
                  },
                  {
                      "from": "649811202072708483",
                      "to": "185352052922068022",
                      "fromPort": "No",
                      "toPort": "IN",
                      "points": [
                          140.9862035163743,
                          526.7126576934272,
                          140.9862035163743,
                          536.7126576934272,
                          140.9862035163743,
                          554.2126576934271,
                          382.5228474983081,
                          554.2126576934271,
                          382.5228474983081,
                          571.712657693427,
                          382.5228474983081,
                          581.712657693427
                      ]
                  },
                  {
                      "from": "185352052922068022",
                      "to": "402026513763859450",
                      "fromPort": "OUT",
                      "toPort": "IN",
                      "points": [
                          382.5228474983081,
                          714.9654419234413,
                          382.5228474983081,
                          724.9654419234413,
                          382.5228474983081,
                          752.4913280776161,
                          232.52284749830798,
                          752.4913280776161,
                          232.52284749830798,
                          780.0172142317911,
                          232.52284749830798,
                          790.0172142317911
                      ]
                  },
                  {
                      "from": "417833740235547202",
                      "to": "402026513763859450",
                      "fromPort": "OUT",
                      "toPort": "IN",
                      "points": [
                          107.52284749830794,
                          714.9654419234413,
                          107.52284749830794,
                          724.9654419234413,
                          107.52284749830794,
                          752.4913280776161,
                          232.52284749830798,
                          752.4913280776161,
                          232.52284749830798,
                          780.0172142317911,
                          232.52284749830798,
                          790.0172142317911
                      ]
                  }
              ]
          },
          "utterances": []
      }
      

  6. A Flow studio conversation similar to the one in the below screenshot will be imported.
    Make sure you copy the FlowID.

    You can copy the Flow studio ID from the verticle ellipses dropdown menu too.

...

  1. Go to the Experience Designer > Launch tab > Launch node > Endpoint.
    Click on the icon to copy the endpoint of the project.

  2. This URL is used as a webhook URL for Alexa and Dialogflow.
    For Dialogflow, go to https://dialogflow.cloud.google.com/ and select fulfillment from the side menu. Enable Webhook and use this URL to link the Dialogflow agent with the Orbita project.

  3. You have successfully connected the project with your Dialogflow agent.

Bot Manager flow

A Bot Manager flow tab is available in every new project you create.

The Bot manager flow allows you to have an endpoint for your chatbot.

...