These are detailed scripts that define conversations between users and your bot within Botium. These form the foundation of Botium scripting.
Example Conversation - CONVO EDITOR
Understanding the UI
-
Conversation Name: The name of the conversation or test case is shown top-left of the editor and can be updated at any time by simply clicking anywhere on the text.
-
Sending Messages: User steps can be easily identified on the interface with the following icon . These lines are what you (the user) will say to the chatbot.Tip: To specify a channel (like in Slack), use:
#me #private
or#me #general
. -
Expecting Responses: Bot steps can be easily identified on the interface with the following icon . These lines are what you expect the chatbot to reply.Tip: To specify a channel (like in Slack), use:
#bot #private
or#bot #general
. -
Utterance Matching:
- If there are specific phrases (utterances) registered with your chatbot, they will be expanded into multiple conversation tests.
- If a response is optional, start the line with
?
. - If a response should not match a phrase, start the line with
!
. - Combine optional and negation with
?!
.
-
Reference Partial Conversations: Use the + Partial Convo action from the Actions menu at the bottom of the editor to insert a pre-defined partial conversation into your current convo.
This will add a new step at the bottom of the editor. Click the Edit icon for the step to bring up the dropdown menu where you can select your partial convo.
-
Other Actions: Along with the + Partial Convo action there are two other actions available when creating your bot interactions:
- + Begin Step is used at the start of a conversation for setting up (e.g., logic hooks).
- + End Step is used at the end of a conversation for cleanup tasks (e.g., assertions).
Example Conversation - SOURCE EDITOR (Botium Script)
Call Me Paulie
#me
hello
#bot
Try: `what is my name` or `structured` or `call me Paulie`
#me
call me Paulie
#bot
Got it. I will call you Paulie from now on.
#me
who am i
#bot
Your name is Paulie
Understanding the Syntax
Let's break down the rules step by step:
-
Conversation Name: The first line is the name of the conversation or test case.
-
Description Text: The second line (until a special tag like
#me
,#bot
, etc.) is optional and can describe the conversation. -
Sending Messages:
-
#me
lines are what you (the user) will say to the chatbot.Note: Example:#me hello
- To specify a channel (like in Slack), use:
#me #private
or#me #general
.
-
-
Expecting Responses:
-
#bot
lines are what you expect the chatbot to reply.Note: Example:#bot Got it. I will call you paulie from now on.
- To specify a channel (like in Slack), use:
#bot #private
or#bot #general
.
-
-
Utterance Matching:
- If there are specific phrases (utterances) registered with your chatbot, they will be expanded into multiple conversation tests.
- If a response is optional, start the line with
?
. - If a response should not match a phrase, start the line with
!
. - Combine optional and negation with
?!
.
-
Partial Conversations: Use
#include
to insert a pre-defined partial conversation into your current script. -
Special Tags:
-
#begin
is used at the start of a conversation for setting up (e.g., logic hooks). -
#end
is used at the end of a conversation for cleanup tasks (e.g., assertions).
-