Keyword Finder

Use the keyword finder node to route the call according to data matched from a caller's unstructured input.

In addition, you can use the keyword finder node to extract information like an email address or account number from a caller's unstructured input. If you want to extract information without routing the call, use the Variable node instead of the keyword finder node. The functionality is replicated by both node types.

Name

Give the node a name.

Text Detail

Select the variable that contains the caller's unstructured input.

For a voice task, this is usually the variable used to store the caller's transcribed responses in the Cloud STT node. For a messaging task, the variable may store an SMS message.

Extract Words

From the Results tab, use Extract Words to extract information from the caller's unstructured input and save that information to a variable.

  1. In the Variable field, select the variable to store the extracted information.

  2. In the Word Rule field, define the extraction rule.

    1. Click the pencil to the right of the field to open the rule builder.

      The rule builder is a limited version of the Expression Builder.

    2. Select a function.

      For more information on these functions, refer to the Expression Builder.

      • String Operations
        • Extract Email from String
        • Extract Number (fixed) from String
        • Extract Number (min-max) from String
        • Extract Letter (fixed) from String
        • Extract Letter(min-max) from String
        • Custom Regex
      • Logical Operations
        • Match Regex
      Example:

      Suppose an order Id matches the following criteria. It starts with the letter "Z." It is 10 characters long. The second and third characters are digits. The remaining seven characters are alphanumeric. The regular expression to match the order Id is Z\d{2}[A-Za-z\d]{7}.

      The caller could say, "My order Id is Z34abcdefg."

      The custom regex Z\d{2}[A-Za-z\d]{7} extracts Z34abcdefg from the speech-to-text transcription of the caller's speech.

    3. Fill in the fields appropriate to the selected function.

      The rule builder includes the following expression builder features.

      Feature

      Description

      {{

      To enter a variable in the operand field, type two open curly brackets {{ and select from the list.

      If the operand needs more screen real estate, click the edit button to the right of the field.

      To evaluate the expression for testing purposes, click the arrow to the right of the expression. If the expression includes variables, you are prompted to enter a temporary value for each variable.

  3. Repeat to add another variable/word rule pair.

Match Keywords

From the Results tab, use Match Keywords to route the call according to matched keywords.

Field

Description

Re-order the keyword list. Studio processes keywords in the presented order.

Keyword

Type the words to match. Matches are case-insensitive. When one of a number of keywords is a match, use a double pipe character || to separate each keyword.

Example Keywords

Description

Address

Matched when the word Address is found.

Open Account

Matched when both words Open Account are found in sequence.

order && status

Matched when both words order and status are found, not necessarily in sequence.

yes || yep || yeah

Matched when at least one of the words yes, yep, or yeah is found.

Goto Node

The call routes to this node when the keyword is matched. Select from the available nodes in the call flow or type a new node name.

Match Whole Words Only

Setting

Description

Whole words and strings within whole words are matched.

For example, if the keyword is no then both "no call" and "another" are matched.

Whole words only are matched.

For example, if the keyword is no then "no call" is matched, while "another" is not matched.

Delete this route. Hover over the row to see the icon.

Otherwise Goto Node

Route the call to this node when none of the keywords (from Match Keywords) are matched. Select from the available nodes in the call flow or type the name of a new node.

This field is required to ensure best practices are followed. It ensures the call flow always has a backup node, even though in some cases that may seem redundant.