Understanding IVR Parameters

The use of parameters in an IVR can be very powerful for live changes in the call flow, displaying key information to answering agents, and/or including valuable data in historical call logs. However, they can be a little overwhelming before you understand what they are and how to use them.

What is a Parameter?

As Xima is using them, parameters are values that accompany a call as it enters your phone system and may also include values added to the call as it flows through your IVR and beyond. A simple and common example would be the caller's phone number or caller ID.

What parameters are attached to most calls as they enter an IVR?

Many useful parameters are attached to an inbound call as provided by the carrier sending the call and by the UC phone system. These include "Standard Parameters" and "SIP Headers"

Standard Parameters

Standard Parameters are common values many of our customers use for routing and reporting. They may not always be included depending on carriers and regions.

Today, they include:

  • External Number - The caller's phone number
  • Caller ID - The caller's name as the carrier provides it (if available)
  • DNIS - What number did the caller dial?
  • Tag - A value appended to the call by the UC system
  • Location - The region the caller is from (if available)

SIP Headers

SIP Headers are another type of parameter that are tied to a call prior to reaching an IVR. It includes the standard parameters in their original form. However, a SIP header may include many more values, including custom values added by the UC system administrators.

Here is a redacted example of the payload we get in SIP Headers:

Custom headers may be added and the criteria in Xima CCaaS can be adjusted accordingly.

Here are the default SIP Header values we can utilize:

  • From
  • From (Caller ID Only)
  • To
  • Contact
  • P-Asserted Identity
  • User-Agent
  • Referred-By
  • *custom header

When utilizing SIP headers for actions, conditions, or screen pops you'll have the ability to use operators to filter out the value you need. As an example, you can use a value of "From", an operator of "Contains" and a value of "5551234" to ensure a SIP header of "From:<sip:18005551234 @ 67.1.8.41>"

What parameters can be attached to a call once in an IVR?

Though many conditions and subsequent actions can be built using the pre-existing parameters, there is much more power in what can be added to the call once in an IVR. These parameters added to the call during the live session are appropriately called Session Parameters

How are Session Parameters added to a call?

Numbers collected with a Collect Digit action

If you add a Collect Digit action to an IVR, prompting a customer for an account number for example, you'll be able to define the session parameter name and add it to the call. Using the account number example, it may be defined as a "AccountNum" for later selection.

Learn more about the Collect Digit action here.

Values collected during a Data Dip action

If a Data Dip action is configured and assigned in an IVR, each returned value will have it's own session parameter name. Those names will match the field/column name returned with the data dip. This is a great way to add many session parameters to a call in milliseconds.

Learn more about Data Dip action here.

Using a Set Parameter action

This function serves as a more customized way to add a session parameter to a call. It is typically tied to a condition but may also be based on other session parameters. To best explain how this can be used, let's look at a few examples.

Example 1: You have multiple IVRs and many of them need to have a message conveying that the call may be recorded. However you don't want the same caller who may need need to go through multiple IVRs to keep hearing the message. You could set a parameter for "HeardRecNotice=True" following the announcement and configure each IVR to not play the announcement when the session parameter is already in place.

Example 2: You set up a social media campaign with a different phone number for each social media channel used. You'd like to flag the incoming calls with their social media source for enhanced reporting and identifying which campaigns are working best. You could use parameter conditions with multiple operators to differentiate between the Instagram and Facebook sources then set a parameter for "Source".

Example 3: Your clients are truck drivers who may provide either their DOT number (8 digits) or their MC number (6-7 digits). You can use a parameter condition to identify the number of digits provided and then set two parameters so the numbers provided are logged correctly as DOT or MC numbers.