Versions Compared

Key

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

Orbita introduces a Free Text input field in a Chatbot. You can type any text in this input field, which will not be processed by the natural language processor (NLP).

As an admin user, you You might want to take feedback or suggestion from the chatbot user. These responses from the user should skip the NLP and handled separately.

Sample flow:

...

Table of Contents
excludeRelated

Function node

Place the following code in the function node as shown in the previous image.

Code Block
if(msg.payload.originalDetectIntentRequest && msg.payload.originalDetectIntentRequest.payload && msg.payload.originalDetectIntentRequest.payload.orbitaFreeText) {
 msg.payload.request.intent.slots = {freeText: {value: msg.payload.originalDetectIntentRequest.payload && msg.payload.originalDetectIntentRequest.payload.orbitaFreeText}};
}
return msg;

...

Directive

The Free Text input option is available in the Single Input control of Flow studio.

  1. Open the Directive tab in Single Input control.

  2. Select Textbox in the Input Type dropdown.

  3. Click Save.

    Image Removed
  4. Choose the input type option: Hidden, Single Line, Multi Line

Warning

The Free Text input will not work in with Alexa, it will work with voice-based bots. It only works in phone applications and Chatbots. The same is displayed in the warning text.

...

Changes in Dialogflow

The following event should be present in the OrbitaFlowMessages intent in Dialogflow.

FlowMessageFreeTextEvent

...

Changes in Orbita Intent

OrbitaFlowMessages intent in Orbita should also contain the same event.

...

In the Chatbot, you can view the Free Text input box as shown in the following image.

...

If you want to hide the Free Text input box and let users type in the text input area.

Place the following code in Bot out parser in the Bot provider V2 node.

Code Block
if(msg.payload.orbitaPayload.payload && msg.payload.orbitaPayload.payload.flowInfo && msg.payload.orbitaPayload.payload.directive && msg.payload.orbitaPayload.payload.directive[0].type ==='textbox') 
{ 
 msg.payload.orbitaPayload.payload.directive[0].hidden = true
}

...

The Free Text Input box will not appear in the chatbot. You can type your free text directly in the text input area.

...

Input Options:

  1. Keyboard checked and selecting hidden - bottom text entry

    Image Added

  2. Keyboard un-checked, single line input
    The bottom keyboard is hidden, and a small text field for typing something like a phone number

  3. keyboard un-checked, Multi-line input
    The bottom keyboard is hidden and a Text Area is an input.

Intent FreeTextIntent

Note Events: needs to be set to FlowMessageFreeTextEvent

No utterance

...

Slot freeText value

...

The results can be found at
msg.payload.request.intent.slots.freeText.value

In this mode:

Previous

Code Block
['previous','previous question','go back', 'skip back', 'back up']

If the utterance matches one of these items the Flow manager will back up to the Previous question

Repeat

['repeat','repeat again','repeat the question','tell me again', 'say again', 'could you repeat that']

If the utterance matches one of these items the flow manager will repeat the question.

Related Articles

Filter by label (Content by label)
showLabelsfalse
max5
sorttitle
showSpacefalse
cqllabel = "flow-studio"