Adding an IVR Application for Disruptions

You can use this example disruption IVR to retrieve a list of active disruption events and associated audio prompts or say-as definitions from the database and then play them to the caller. You can find the file used in the example (Example_Disruption_IVR.xml) in the Examples and Templates folder of your Sinch Contact Pro installation..

Principle

In this example, the application asks the caller to enter a value that it then uses to match the WHERE items’ ExternalId fields. If the user does not enter a value, the application returns all active events.

The events are sorted newest first.

Each event’s audio or IVRTalk prompts are played in order WHERE – WHY – WHEN.

After the application has played all active messages, the flow proceeds to state Done. By editing the IVR application, here you can, for example, ask for a new filter value or make it possible to forward the call to customer service.

Definitions

The database function is called by DisruptionEvent.GetActiveEvents(self.CALL, params) in the form GetActiveMessages. The params variable is a Python dictionary that can contain the following items:

Table 1.
KeyExplanation
DisruptionSetDisruption set’s ExternalId. Mandatory
WhereFilter

Search pattern for filtering disruption events. Optional

Wildcard characters are the same as in SQL:

  • %: replaces any characters

    For example, to search for strings that begin with “90”, enter “90%”. This will find, for example, “90210”.

  • _: replaces one character

    For example, by searching for “9_21_” you will find “90210” and “91215”.

LanguageThe language to use for retrieving say as attributes. If not given here, the IVR language is used.

Procedure

  1. On the System Configurator main screen, choose IVR Management > Custom IVRs > Add New.

  2. In the Basics view, enter a suitable name and description.
  3. In the IVR Numbers view, enter the appropriate IVR number.
  4. To import the example file, click Import in the IVR Application Versions view, and choose Example_Disruption_IVR.xml.
    Note: Import notifies you of validation errors, but this is because there are no audio prompts defined in the example VXML.
  5. Save your entries.
  6. Make at least the following changes in IVR Editor:
    1. Assign the correct audio prompts or remove prompts if they are not necessary.

      Audio prompts in the example are:

      FormPrompt contents (suggestion)
      FilterOrAll"Type in your area code ending with #. If you want to hear all active disruption messages, press #."
      NoMessages"No active messages found"
      Error"There was an error..."
      Done"All done!"
    2. Go to form GetActiveMessages and set the correct DisruptionSet ExternalId to the params variable. For more information, see Definitions. No other changes inside forms GetActiveMessages or PlayActiveMessages are needed.
    3. Go to form SetAreaSelection and modify the search pattern in variable wherefilter depending on the format of the DisruptionItem ExternalId of your installation. Check if the user input digits are valid.