Exception used to break out the flow and restart the conversation.
Exception used to break out the flow and fork at a previous step.
The tracker will be reset to the selected point in the past and the conversation will continue from there.
Exception used to break out the flow and undo the last step.
The last step is either the most recent user message or the most recent action run by the bot.
Exception used to abort the interactive learning and exit.
Send a user message to a conversation.
Request the next action prediction from core.
Retrieve the domain from core.
Retrieve the status from core.
Retrieve a tracker from core.
Log an action to a conversation.
Log an event to a conversation.
Format a bot response to be displayed in the history table.
Return most recent user message.
Check if the conversation is in need for a user message.
Get a list of the possible intents names from the domain specification.
This is its own function as intents are non-trivial to unpack and this warrants testing.
Read messages from the command line and print bot responses.
Add routes to serve the conversation visualization files.
Start the interactive learning with the model of the agent.
Calculates a wrapping width that also works for CJK characters.
Chinese, Japanese and Korean characters are often broader than ascii characters: abcdefgh (8 chars) æˆ‘è¦åŽ»åŒ—äº¬ (5 chars, roughly same visible width)
We need to account for that otherwise the wrapping doesn't work appropriately for long strings and the table overflows and creates errors.
params: text: text sequence that should be wrapped into multiple lines monospace_wrapping_width: the maximum width per line in number of standard ascii characters returns: The maximum line width for the given string that takes into account the strings visible width, so that it won't lead to table overflow.