Configure keypad input for meeting invitations
This topic describes how to configure a bot to collect information from keypad presses.
The following figure shows the meeting invitation script.

1. Scenario management
Navigate to the Scenario Management feature and click New Scenario.
Set the scenario name.
Click Save. After the scenario is saved, select the new scenario and click Enter.

2. Configure the conversation flow (script)
2.1. Create a new conversation flow (specific script configuration)
After you enter Scenario Management, navigate to the Conversation Flow Management feature and click New Conversation Flow.

Set the conversation flow name, which is also the script name, and click OK to create the conversation flow.
2.2. Configure the script
Select the conversation flow that you created and click Edit to open the script configuration panel.


2.3. Configure the outbound call trigger
Click the Start node to configure the intent that triggers the bot's outbound call mechanism (Required).

A dialog box appears on the right side of the canvas. Edit the user branch.

Click Edit to set the name of the intent that triggers the branch.


After you set the branch name, hover over and click the Intent - Yes text box.

Click New Intent. Set the intent name and intent code. The names can be the same.

Click OK. In the dialog box that appears on the right, find the User Utterances section and set the starting user utterance.


In the text box, enter "start" and click Add.

After you add the utterance, click Save.

After the intent is saved, the branch is associated with the start intent. Click OK.

Confirm and save the current Start node information.

2.4. Configure a standard node (announcement content)
Drag a Standard Node from the left pane to the canvas.

Drag the Standard Node onto the canvas.


Click the Standard Node to configure the announcement content.

In the preceding figure, ${envVars['VENDOR_PARAM']['name']}, ${envVars['VENDOR_PARAM']['time']}, and ${envVars['VENDOR_PARAM']['area']} are external variable references. The basic format is ${envVars['VENDOR_PARAM']['variable_name']}. External variables are used because the contact information for each call is different. You can use variables and pass values to them to handle this inconsistent information.
After you set the announcement content, find the Speech Configuration option in the node.

Click Speech Configuration, find Keypad (DTMF), and enable the keypad feature.


After you enable the keypad feature, select a keypad mode as needed. In this example, select the mode for entering a specific number of digits.

After you configure the speech settings, find User Says and create a new user branch.

Set the branch name. Select the built-in AnythingElse intent to collect keypad input.


After you select the AnythingElse intent, click OK and save the node information.

2.5. Configure a service node to evaluate keypad input
Drag a Service Node from the left pane to the canvas.



Click the Service Node and select Node Branch Configuration to evaluate the keypad input.

Click Add Branch. Set the branch name and create a condition for when the user presses the "1" key.

For Condition Group, select Conversation Environment Parameter and find CURRENTQUERY.


The CURRENTQUERY parameter is associated with the AnythingElse intent. The AnythingElse intent collects all user expressions or inputs. CURRENTQUERY then outputs the information that the AnythingElse intent collected.
Use the CURRENTQUERY conversation environment parameter to create the condition for when the user presses the "1" key.

After you set the condition, click OK.
Add conditions for the other branches: when the "0" key is pressed, when the "3" key is pressed, and for incorrect input. For incorrect input, use the default branch. The flow follows the default branch if no other conditions are met.

After you finish the configuration, click Save Node.
2.5.1. Configure the final response for key 1
Drag a Standard Node from the left pane to the connection line for the "key 1" branch.


Click the node to configure the announcement script.

After you configure the script, find the Subsequent Actions feature in the node and select Hang Up.


After setting the Hang Up action, you can also output the result to a report. To do this, select Subsequent Actions again, find Variable Configuration, and configure the output.

After you select Variable Configuration, click Add Variable. Set the variable name and assign a value. You can use any variable name. Assign a value based on the actual result.


After you set the name and value, select the Output to Report checkbox and save the node information.

2.5.2. Configure the node for key 0
Drag a Standard Node and connect it to the "key 0" branch.

Click the Standard Node to configure the announcement content.

Find Subsequent Actions and add the Hang Up and Variable Configuration (tagging) actions.




Set the variable name and value, and save the node information.

2.5.3. Configure the node for key 3 (replay)
According to the flow design, when the user presses "3", the content is replayed. To do this, click the node and repeat the configuration of the first announcement node.
Set the announcement content.

In Speech Configuration, enable the keypad and set the digit collection mode.

In User Says, create a new user branch and select the AnythingElse intent.


After you save the node, click the arrow shown in the figure and select Jump to Node. Then, jump to the service node.


After you make your selection, click OK.

2.5.4. Configure the node for incorrect input
This branch is for when the user does not press the correct number key as prompted. Drag a Standard Node and configure the announcement content.


After you configure the announcement content, find Speech Configuration and enable the keypad.

After you enable the keypad and set the mode, create a new user branch in User Says and configure it with the AnythingElse intent.


After you save the node, click the arrow and select Jump to Node.



The entire conversation flow is now configured.
