OVERVIEW
Virtual Assistants
Kore.ai Platform
Key Concepts
Natural Language Processing (NLP)
Accessing Platform
VIRTUAL ASSISTANTS
Virtual Assistant Builder
Virtual Assistant Types
Getting Started
Creating a Simple Bot
SKILLS
Storyboard
Dialog Task
Introduction
Dialog Builder (New)
Dialog Builder (Legacy)
User Intent Node
Dialog Node
Entity Node
Supported Entity Types
Composite Entities
Supported Colors
Supported Company Names
Form Node
Logic Node
Message Nodes
Confirmation Nodes
Bot Action Node
Service Node
Custom Authentication
2-way SSL for Service nodes
Script Node
Agent Transfer Node
WebHook Node
Grouping Nodes
Connections & Transitions
Manage Dialogs
User Prompts
Knowledge Graph
Terminology
Building
Generation
Importing and Exporting
Analysis
Knowledge Extraction
Build
Alert Tasks
Introduction
Ignore Words and Field Memory
How to Schedule a Smart Alert
Small Talk
Digital Views
Overview
Configuring Digital Views
Digital Forms
Overview
How to Configure Digital Forms
NATURAL LANGUAGE
Overview
Machine Learning
Introduction
Model Validation
Fundamental Meaning
Introduction
NLP Guidelines
Knowledge Graph
Traits
Introduction
How to Use Traits
Ranking and Resolver
Advanced NLP Configurations
INTELLIGENCE
Overview
Context Management
Overview
Session and Context Variables
Context Object
How to Manage Context Switching
Manage Interruptions
Dialog Management
Sub-Intents & Follow-up Intents
Amend Entity
Multi-Intent Detection
Sentiment Management
Tone Analysis
Sentiment Management
Event Based Bot Actions
Default Conversations
Default Standard Responses
TEST & DEBUG
Talk to Bot
Utterance Testing
Batch Testing
Record Conversations
CHANNELS
PUBLISH
ANALYZE
Overview
Dashboard
Custom Dashboard
Overview
How to Create Custom Dashboard
Conversation Flows
NLP Metrics
ADVANCED TOPICS
Universal Bots
Overview
Defining
Creating
Training
Customizing
Enabling Languages
Store
Smart Bots
Defining
koreUtil Libraries
SETTINGS
Authorization
Language Management
PII Settings
Variables
Functions
IVR Integration
General Settings
Management
Import & Export
Delete
Versioning
Collaborative Development
Plan Management
API GUIDE
API Overview
API List
API Collection
SDKs
SDK Overview
SDK Security
SDK App Registration
Web SDK Tutorial
Message Formatting and Templates
Mobile SDK Push Notification
Widget SDK Tutorial
Widget SDK – Message Formatting and Templates
Web Socket Connect & RTM
Using the BotKit SDK
Installing
Configuring
Events
Functions
BotKit SDK Tutorial – Agent Transfer
BotKit SDK Tutorial – Flight Search Sample Bot
Using an External NLP Engine
ADMINISTRATION
HOW TOs
Creating a Simple Bot
Creating a Banking Bot
Context Switching
Using Traits
Schedule a Smart Alert
Configure UI Forms
Add Form Data into Data Tables
Configuring Digital Views
Add Data to Data Tables
Update Data in Data Tables
Custom Dashboard
Custom Tags to filter Bot Metrics
Patterns for Intents & Entities
Build Knowledge Graph
Global Variables
Content Variables
Using Bot Functions
Configure Agent Transfer
Update Balance Task
Transfer Funds Task
RELEASE NOTES
  1. Home
  2. Docs
  3. Virtual Assistants
  4. Bot Settings
  5. Bot Management
  6. Bot Management

Bot Management

The topics dealt with in this section include Importing and Exporting Bots, Deleting Bots, and viewing Bot change logs.

You might want to refer to Bot Variables and how these can be managed. Refer here for more.

Importing and Exporting Bots

Kore.ai allows you to export and import a bot’s tasks and associated configurations into another bot. This feature helps you in the migration of bot definition, cloning of bots, or for maintaining a periodic backup of bot definitions. It is particularly helpful to test various versions of your bot at different stages of the development process before it is released for end users. The articles in this section help you understand how the Export and Import features work and how to perform them.

NOTE: Post v8.0 release, the enableNegativePatterns flag will be included in ‘NLP Settings’ under ‘NLP Data’ in the exported and imported bot definitions. This flag is used to check if the Negative Patterns are enabled/disabled in the Bot. Prior to this patch, this flag was part of ‘NLP Settings’ under ‘NLP Data’ in the imported bot definitions and ‘Bot Setting’ under ‘Setting’ in the exported bot definitions. This change is aimed at streamlining the functionality and might result in the failure to the incremental import of a bot from an export file generated before v8.0.

Exporting a Bot

You can export a bot’s definition and configuration using the Export option. When you export a bot, it downloads a zipped file with the following:

  • botDefinition.json: Includes bot metadata, tasks, bot and task-level synonyms, utterances, patterns, knowledge graph, standard responses, flows, and IDPs. You can select specific items to export from bot tasks, NLP data – NLP settings, utterances, standard responses – and Settings – bot settings, variables, IVR settings- while exporting the bot.
  • config.json: Includes bot settings, bot variables, and IVR settings.
  • Icon.png: Includes the bot icon.
  • <Custom ScriptFile Name.js> (if available): Includes a script file with JavaScript functions. When you upload this file to a bot, you can access the functions in the file from anywhere in the bot.
Note: The bot and its components are given unique Reference IDs during export. These IDs help the platform to identify matching tasks in the target bot and update them.

Export Modes

You can export bots in two modes: Published and Latest Version. Depending on the mode that is selected, the corresponding versions of the bot tasks are exported. You can select specific bot components to export from the bot tasks, NLP data, and bot settings in both the modes. Further individual Bot Tasks can also be selected.

Published Mode

When you export a bot in the Published mode, only the published versions of the bot tasks are exported, regardless of any other existing versions. For example, if a bot consists of a published version of a task and also version in Upgrade in Progress, only the published version gets exported.

Refer to the table below to understand which versions of the tasks are exported in the Published mode:

Task Status
In Progress Not exported
If a task is in progress for development, it isn’t exported in the Published mode.
Configured Not exported
If the task configuration is complete but not published for use, it doesn’t get exported in the Published mode.
Published Exported
All published bot tasks get exported
Upgrade in Progress Not exported
Task upgrade configurations that are in progress do not get exported. Only the published configurations get exported.
Rejected Not exported
Task configurations rejected by admins do not get exported.
Suspended Not exported
Suspended tasks do not get exported.
Note: In Dialog tasks, only the nodes in the Published status get exported.
Latest Version

When you export a bot in the Latest mode, the latest versions of the bot tasks get exported, regardless of their publishing status. For example, if a bot consists of a published version of a task and also the version in Upgrade in Progress, the Upgrade in Progress version gets exported, whereas if it just has a Configured version, the configured version is exported.

Refer to the table below to understand which versions of the tasks are exported in the Latest mode:

Task Status
In Progress Exported if it is the only available version
Not Exported if a later version exists
Configured Exported if it is the only available version
Not Exported if a later version exists
Published Exported if it is the only available version
Not Exported if a later version exists
Upgrade in Progress Exported regardless of any other task version in the bot
Rejected Not exported
Task configurations rejected by admins do not get exported
Suspended Not exported
Suspended tasks do not get exported

Steps in Exporting the Bot

  1. Open the bot you want to export
  2. Select Deploy tab from the top menu
  3. From the left menu select Bot Management -> Import & Export
  4. On the Import & Export page, select the Export tab
  5. In the Export tab, select either Published or Latest Version exporting mode.
  6. By default, all the bot items are selected for export. Deselect the items that you do not want to export.
  7. For Tasks, you can further choose to export only select tasks. By default All Tasks are selected. Click the All Tasks link to open Select Tasks dialog to choose the tasks you want to export
  8. You can also choose to Include dependent tasks or not for export. The existence of these will be checked before import and the import will fail if the dependent tasks are missing. These dependent tasks include the following:
    • Linked Dialogs i.e. dialog nodes present in the definition of another dialog;
    • Dialogs linked in defining ‘Behavior on Exceeding Retries’ for IVR Properties of any node of the dialog;
    • Dialog linked as part of sub-intent / interruption settings;
    • Any other scenario where a dialog execution could fail if a dependent task is not included;

  9. Click Export. The export happens in the background and the Download button gets activated after it is complete. Click Download to download the file to your local computer.

Exported Bot Components

When you export a bot, the following bot components get exported, depending on your Latest or Published Mode selection:

Bot Tasks
Tasks Only
  • Task Definition (Action, Alert, Information, and Dialog)
  • Synonyms (Task, Field, and Entity)
  • Patterns (Task, Field, and Entity)
Knowledge Graph Knowledge Graph definition along with the associated synonyms and classes.
NLP Data
NLP Settings The Advanced NLP Settings and Ignore words and Field memory.
The Advanced NLP Settings ( Natural Language > Advanced Settings) include the following:

  • Auto-train settings for ML Utterances
  • Multiple intent detection settings
  • Threshold and Configurations settings for
  • Fundamental meaning
  • Knowledge Graph
  • Machine Learning
Utterances All the bot utterances of all the enabled languages
Standard Responses All the standard responses of the bot in all enabled languages
Settings
Bot Settings The following information from Bot Settings page:

  • General Settings
  • Bot name, description, and bot synonyms for each enabled language
  • Language selection time frame (Bot Settings > Language Management)
  • Welcome message
  • Hold and Resume settings (Bot level)
  • Custom Script file
  • Tenancy URLs
  • Error messages
  • Task setup and execution settings (for executing tasks using UI forms).
Bot Variables All the global and content variables present in the bot along with their values.
IVR settings All the IVR settings for the bot (Bot Settings > IVR settings).

Importing a Bot

You can import tasks and configurations of a bot into a new or existing bot using one of these import types:

  • Full import: Replaces the existing bot with the imported bot configurations. Any additional configurations in the target bot that are not present in the import definition will be deleted. An exception to this rule is the webhook channel, which will be retained even if not present in the import bot definition.
    Note: We strongly recommend you exercise caution and take a backup of the target bot before importing a bot using this option.
  • Incremental import: Upgrades the current bot with the configurations available in the import file. Any additional configurations available in the target or imported bot are retained. You can select specific bot components to import from the bot tasks, NLP data, and bot settings. Refer to the Bot Items in the Incremental Import table at the end of the article to learn how the imported bot items replace the target bot’s items in incremental import.

Before you Begin
The config.json file consists of bot variables that need values for the target bot. Share the file with the relevant developers or enter suitable values yourself for the variables before importing the bot definition into a new bot.

Steps in Importing to an Existing Bot

To import a bot, follow these steps:

  1. Open the bot you want to export
  2. Select the Deploy tab from the top menu
  3. From the left menu select Bot Management -> Import & Export
  4. On the Import & Export page select the Import tab
  5. Click the CHOOSE FILE buttons next to the BOT DEFINITION FILE field and BOT CONFIG FILE field, and upload the botDefinition.json and config.json files respectively.
  6. Optionally, upload the custom script file from the imported bot if any.
  7. Select one of these import options: Full Import or Incremental Import.
  8. If you select Full import, the bot definition in the in-development copy will be overwritten with the definition present in the import file.
    • If there are one or more additional tasks or languages in the bot, and if these are not present in the import definition, then these tasks will be marked as deleted and will be removed when the bot is published.
    • You can choose to auto-publish the bot post-import.

  9. If you select Incremental import, you can also choose which bot items to import.

    • ML Utterances can either be Appended or Replaced
      • Append option can be used when the utterances present in the file should be imported into the bot and any additional utterances in the bot should be retained (this is the default behavior)
      • Replace option can be used when the utterances present in the file should be imported into the bot. Any additional utterances in the bot will be removed.
        • In case you are importing Tasks too, the additional utterances related to tasks being imported will be removed.

    • On the confirmation dialog that opens, click Backup to download the existing bot configuration.
      Note: While backing up is an optional choice, we strongly recommend you do so, especially when choosing Full Import, as you cannot recover the bot configurations after the imported bot replaces them.
    • Click Proceed to start the import.
    • After the import is completed, the following success message appears. Click Done.

Note: Bot import would fail if the bot has been restored but not published after the restore.

Creating a New Bot Using the Import Option

To import a bot while creating it, follow these steps:

  1. On the top-right side of the Bot Builder homepage, click New Bot > Import a Bot.
  2. Enter a Name, Target Audience, and Color for the Bot. Refer to Create a New Bot to learn more.
  3. Click the CHOOSE FILE buttons next to the BOT DEFINITION FILE field and BOT CONFIG FILE field and upload the botDefinition.json and config.json files respectively.
  4. Optionally, upload a Custom Script file from the source bot if any, and click Import.
  5. On the success message after the end of importing, click Done to proceed to the Bot Tasks page.

Bot Items in Incremental Import

COMPONENT DESCRIPTION
Tasks with the same Reference ID Imported tasks replace the tasks in the target bot and their status changes to Configured, regardless of their current status (including Suspended and Rejected tasks).
Tasks in the source bot with a different Reference ID These tasks are created in the target bot with the same Reference ID.
Tasks in the target bot with a different Reference ID These tasks stay intact.
Utterances, Patterns, and Task-level Synonyms Imported utterances, patterns, and task-level synonyms replace the ones in the target bot and apply them to the imported tasks. Published models in the target bot stay intact.
Knowledge Graph, Bot Synonyms and Standard Responses Existing knowledge graph, bot synonyms, and standard responses in the target bot are replaced with the imported ones.

Deleting a Bot

You cannot delete a bot if any of the bot tasks are Published. Once you publish a task, the Bots Admin must approve and assign it to users. The developer cannot delete assigned tasks. To delete a published task, the Bots Admin needs to suspend the task.
Also, you cannot delete a bot if it is part of a published flow. You must delete the flow or remove the bot from the flow before attempting to delete it.

Steps to Delete a Bot

  • Open the bot you want to delete
  • Select the Deploy tab from the top menu
  • From the left navigation under the Bot Management menu, click Delete Bot.

Viewing the Bot Change Log

After creating a bot, you may need to edit it for various reasons such as changing its settings, adding tasks, enabling channels, and add flows.

To track all the changes made to a bot, you can view the Change Logs, which show a chronological list of modifications to your bot. It consists of all the changes from the initial save of your bot to the last update.

To view the changelog for a bot, follow these steps:

  1. Select Deploy tab from the top menu
  2. From the left menu click Bot Management -> Change Logs.

    • It consists of the list of changes in reverse chronological order.
    • Each page displays the ten most recent changes and the name of the user that made the change, followed by the change synopsis, and the timestamp of the applied change.
    • Logs of the Publish Event are consolidated for all selected tasks, with the tasks listed in case all tasks are not selected for publishing along with the Publish Comments.

Following actions can be performed on the logs:

  • Using the search text box, you can enter any text and the platform will search for that text in the change description and the logs fulfilling the search criteria would be displayed.
  • The filter option can be used to filter based on:
    • Developer Name collaborating on the bot;
    • Date Range either past 24 hrs, past 7 days, or custom date by specifying the start and end date.
      By default,  changes from all developers in the past 24 hours would be displayed.
  • The export icon can be used to Export the changelog in CSV format. The logs displayed after applying the search and filter criteria would be downloaded.
Menu