Form

Prev Next

Available in Classic and VPC

Form is a feature that provides a conversation component requiring responses from predefined options to enable more effective conversation when the chatbot responds. To structure a conversation that prompts users to select one of several options, use multi-link or form. With multi-link, you can only navigate to a URL link by clicking the corresponding button. Form provides multiple-choice or open-ended questions based on the user's query, and you can continue the conversation by providing feedback based on the response. You can use forms in various ways, such as navigating to specific options based on user selections or retrieving specific results.

To apply a created form to responses:

  • When registering a response, enter the name of form to be loaded when the response type is set to multiple-choice.
  • When registering a response, enter # or #2 in the input window while the response type is set to default response. Enter # or #2 to display the form list, and select the desired form. Or, enter the form name in the format of #{FormName}, #2{FormName}.

Types of form

There are two types of forms.

  • Multiple-choice form: Type where users select 1 option from multiple choices.
  • Open-ended form: Type where users directly input text to provide answers to the chatbot's questions.

Multiple-choice Form
Multiple-choice forms are a type where users select1 option from multiple choices. For example, you can create a multiple-choice form for customers to answer yes/no questions, then use it in various ways. Or, you can set up a multiple-choice form for selecting menu items.
There are two types of multiple-choice forms: V1 and V2.

  • If you select V2, even after the multiple-choice button click turn has passed, you can scroll up and click the button for that turn. Then the form always responds to the associated conversation. Unless it's a special case, we recommend using V2.
  • If you select V1, it remains identical to the existing multiple-choice form. If you scroll up and click the button after the click event has passed, it will re-search for the button's name to retrieve the response. Therefore, after that turn has passed, it may not always respond with the same response.
    chatbot-chatbot-3-5_form01_ko(1)

Open-ended Form
Open-ended forms are a type where users directly input text to provide answers to the chatbot's questions. In the open-ended form, when the user first asks a question about a specific topic, the pre-set guidance message for the open-ended form is displayed as a response. When the user enters their response, the chatbot responds with the response from the open-ended form.
You can add an action method when entering responses in the open-ended form. A message encoded in UTF-8 is delivered with the key X-KAA-USERMSG in the header of the action method.
chatbot-chatbot-3-5_form02_ko

The response flow for the open-ended form is as follows:

(Question about a specific topic) User: Request a quote 
(Form’s guidance message) Chatbot: Enter an email address where you can receive notification emails. The information you entered will be forwarded to the person in charge.
(User's response) User: abc@navercorp.com 
(Form’s response): The email address was delivered to the person in charge. Thank you. 

Create forms

Create multiple-choice forms

To create a multiple-choice form:

  1. In the NAVER Cloud Platform console, navigate to i_menu > Services > AI Services > CLOVA Chatbot > Domain.
  2. Click [Run builder] of the domain you want to run the Chatbot Builder.
  3. In the Chatbot Builder, click Form menu.
    • The form list appears.
  4. # Enter the form name to add in the input field and click [+].
    chatbot-chatbot-3-5_form03_ko
  5. When the form addition window appears on the right side of the interface, enter the information on the form.
Item Description
Type Select the form type
Multiple-choice type Select the multiple-choice type
  • V2: If you select V2, even if you click after the multiple-choice button selection turn has passed, it always performs the same button action. If there is no button action to respond to, a failure message will be displayed.
  • V1: If you select V1, you can use the existing multiple-choice form. If you click after the button selection turn has passed, the associated button action will not be performed. If there is no message to respond to, an expired button will be displayed.
  • Example: You can use V1 when you need to prevent repeated clicks on a button. V1 can be used in payment systems such as LINE Pay/NAVER Pay, and can be used when button click actions are required through entity analysis.
Form name Name of form. Click Edit to edit it.
Button type Menu enabled only when the multiple-choice is selected as form type.
  • Multiple-choice button: Buttons are arranged vertically. The number of buttons supported varies by messenger.
    • LINE, Facebook: Up to 4
    • NAVER TalkTalk, NAVERWORKS: Up to 10
    • Custom: Up to 20
  • Quick reply: Buttons are arranged horizontally. Up to 10 additional buttons can be added.
Response Enter the response to describe the multiple-choice button
Button
  • Enter the text to be displayed on the multiple-choice button. You can connect entities instead of specific phrases,
  • Select the task to perform when the user clicks a button or enters the entity's representative term.
Service integration Select services to integrate
  1. Click [Save].
Note

If you use the LINE Switcher API or LINE Payment action method in a form, it will not be aggregated in the integrated metrics. If it should be included in the integrated metrics, set up the service connection.

Create open-ended forms

To create a open-ended form:

  1. In the NAVER Cloud Platform console, navigate to i_menu > Services > AI Services > CLOVA Chatbot > Domain.
  2. Click [Run builder] of the domain you want to run the Chatbot Builder.
  3. In the Chatbot Builder, click Form menu.
    • The form list appears.
  4. # Enter the form name to add in the input field and click [Enter].
  5. When the form addition window appears on the right side of the interface, enter the information on the form.
Item Description
Type Select the form type
Form name Name of form. Click [Edit] to edit it.
Response Response to describe the multiple-choice button
Response to user response Enter a response manually based on the user response. You can enter a normal message, but for richer conversations, you can also connect to action methods or other forms.
  • To connect an action method, enter $, and then enter the action method to connect.
  • To connect to another form, enter #, and then select the form name to connect to.
Service integration Select services to integrate
  1. Click [Save].

Example of form usage

There are 3 main ways to use forms:

  • Connecting forms consecutively.
  • Creating a conversation that connects form and form response information to an action method.
  • Receiving information from the user via an open-ended form and pass that information to an action method.

Connecting forms consecutively.
The method for connecting forms consecutively is identical to navigating down through submenus within a category on a website. This feature is a simple method where the flow connects based on the quickstart, regardless of natural language processing.
For example, by creating 3 forms and linking them consecutively, you can prompt user selections at each step. However, creating too many forms in this manner can make it difficult to understand the quickstart. Therefore, the Chatbot Builder provides a feature in the Scenario Tab that allows you to follow the form’s flow, making it easy to understand. For specific examples, see Form + form connection.

Creating a conversation that connects form and form response information to an action method.
You can configure conversations to run action methods based on user selection.
For example, you can design a quickstart where the question "Tell me today's weather" provides a form labeled #{CitySelection}, and selecting Seoul triggers the ${weather} action method to provide the response. For an example of implementing this quickstart, see Example of form + action method combination.

Receiving information from the user via an open-ended form and pass that information to an action method.
You can create quickstart that accept open-ended input from users and connect that information to the next turn.
For example, you can design a quickstart where the chatbot asks "Please leave your feedback," providing an open-ended form labeled #{LeaveFeedback}. When the customer submits their feedback, it triggers an action method named ${customerVoc}, which sends all user input to the Backend Service. Based on the server's response, the chatbot then guides the customer accordingly. For an example of implementing this quickstart, see Form + action method connection: open-ended form.

Form + form connection

When you need to guide user selections through a predetermined quickstart, you can either connect forms together or transition from a form to a conversation. In this quickstart, when a user requests service recommendations, the recommendation items are presented in a multiple-choice form. When the user clicks a selection in the multiple-choice form, they are immediately redirected to the corresponding service page.
To connect forms:

  1. Complete the preliminary tasks.
    • Create game service forms
    • Create mobile and web service forms
  2. In the Chatbot Builder, click Form menu.
  3. Enter the form name and click [Enter].
    • Form name: Service recommendation
  4. When the form creation window appears, enter the information.
    • Type: Multiple-choice
    • Button type: Multiple-choice button
    • Response: Enter "Select the type of service you want".
    • Button: Enter any button name, and select a text response.
  5. Enter the form to connect to the text response area in the format of #{FormName}.
    • For the #{ServiceRecommendation} form, you can call it by entering the #{GameService} form or the #{MobileAndWebServices} form.
  6. Click [Save].

Example:
chatbot-chatbot-3-5_ex01_ko(1)

Form + conversation connection

You can connect a conversation to a form. For example, you can call the "Mobile Service" conversation or the "Web Service" conversation from the #{MobileAndWebServices} form.
To connect a form and a conversation:

  1. Complete the preliminary tasks.
    • Create mobile service conversations
    • Create web service conversations
  2. In the Chatbot Builder, click Form menu.
  3. Enter the form name and click [Enter].
    • Form name: Service recommendation
  4. When the form creation window appears, enter the information.
    • Type: Multiple-choice
    • Button type: Multiple-choice button
    • Response: Enter "Select the type of service you want".
    • Button: Enter any button name, and select a conversation.
  5. Select the conversation to connect.
    • If you enter an unregistered conversation name, a new conversation will be created with that name.
  6. Click [Save].

Example:
chatbot-chatbot-3-5_ex02_ko(1)

Form + action method connection: Multiple-choice Form

This is a quickstart when a user asks, "Tell me today's weather," a form labeled #{CitySelection} is provided, and when the user selects a city, the action method ${weather} is executed to provide the response.

chatbot-chatbot-3-5_ex03_ko

To create a form based on the quickstart above:

  1. In the Chatbot Builder, click Entity > [Create Entity], and create a city entity.
    • Entity name: Enter a city.
    • Representative term: Enter "Seoul" and "New York".
    • For how to create an entity, see Entity.
  2. In the Chatbot Builder, click Action Method > [Create Action Method] to create an action method.
    • Name: ${weather}
    • URL: Assume it is developed to send the current temperature value when city=city name is passed via GET method. Create an action method by passing the parameter city=$[city] in the call URL.
    • For how to create an action method, see Action method.
Note

To test the action method, we created a simple serverless function. Click [Call echo] on the right to test it easily.
Example: https://chatbot.ncloud.com/api/v1/actionmethod/echo?city=$[city]

  1. Create a form in the Form menu of the Chatbot Builder.

    • Form name: #{CitySelection}
    • Form type: Multiple-choice
    • Response: Enter 'Select the city where you currently reside.'
    • Button: Enter the city name in each button and enter the action method ${weather} in the text response.
    • If you select Seoul or enter "Seoul" as text, the ${weather} action method is called.
  2. In the Chatbot Builder, click Conversation List > [Create Conversation] to create a conversation.

    • Enter "Tell me today's weather" in the question registration area.
    • Enter #{CitySelection} in the response registration area.
  3. Click Build Conversation Model to build it, and complete the test.

Example:
chatbot-chatbot-3-5_ex04_ko(1)

Form + action method connection: Open-ended Form

An open-ended form is a feature that accepts text entered directly by the user as a response, connecting to the next quickstart or passing the user's utterance to an action method.
This quickstart illustrates how to solicit improvement suggestions from a customer who selects dissatisfaction in their feedback. Design the workflow to first create an action method for user feedback, followed by form creation using that method. The form should be executed if the user responds with "No" in the common message’s feedback menu.
To create an open-ended form based on the quickstart above:

  1. In the Chatbot Builder, click Action Method > [Create Action Method] to create the {PassUserFeedback} action method.
    • This action method encodes the user's message submitted via the open-ended form in UTF-8 and transmits it in the action method header X-KAA-USERMSG.
  2. Click Form menu in the Chatbot Builder to create a form.
    • Form name: #{UserImprovementFeedback}
    • Type: Open-ended
    • Response: "We're sorry. Please leave your feedback so we can continue to improve our chatbot."
  3. When responding to the user, enter the message delivered to the customer along with the action method.
    • "${SendUserImprovementFeedback} Thank you for your valuable feedback."
  4. In Common Message > [Feedback] tab of the Chatbot Builder, create the feedback.
    • Feedback message: Has the problem been resolved?
    • Response when clicking Y/N feedback: Select "Response message available."
    • Select Response message available > No button action as text response, and enter #{UserImprovementFeedback} open-ended form.
Caution

The feedback feature may not be supported depending on the linked messenger. You must verify whether the channel supports the feedback feature. Messengers that do not support the feedback feature are NAVER TalkTalk, NAVER WORKS, Facebook, and CLOVA.