Skip to main content
Version: 8.1

Voice Notification Profile

note

For the Voice Notification Module to work, a compatible Voice Module and Text-to-Speech (TTS) voices must be installed. See the Voice Notification Downloads Knowledge Base article for more information on TTS voices available to download.

Inductive University

Voice Notification Profile

Watch the video

The Voice Notification Module adds the ability to deliver alarm notifications to users via telephone, using most SIP compatible phone system, excluding those requiring Cnonce. Messages are constructed in text and are delivered through a high quality text-to-speech engine. The engine supports multiple voices and languages.

Core Features​

Deliver voice calls through any SIP compatible phone system. No dedicated hardware required. Messages generated by high-quality text to speech, and not a canned set of prerecorded files.

  • Supports multiple languages concurrently, based on user preference.
  • Allows users to acknowledge events.
  • Supports requiring a personal identification number for additional security.
  • Ties into the audit log to audit call events, successful message delivery, and user acknowledgements.
  • Supports message consolidation.

Voice Notification Configuration​

About SIP and VOIP​

The Session Initiation Protocol, is a highly popular specification for implementing Voice Over IP (VOIP) based phone systems. The protocol itself, as the name suggests, is responsible for initiating communication sessions, and then other protocols such as SDP and RTP are used to actually transfer voice data. Ignition has these protocols built in, SIP is a peer-to-peer protocol, where one side talks directly to the other. However, it is possible to have Gateways that repeat and route data between the two parties. Sometimes phone calls on VOIP networks stay purely in software, but often a Gateway will transition the call to a traditional phone line.

By leveraging SIP, Ignition can call physical phones, soft phones, be worked into more complex PBX schemes, while avoiding the high cost of traditional, dedicated voice cards. To get started, though, you’ll need some sort of SIP Gateway. Asterisk is a popular, open source, system that is used by thousands of companies worldwide. If you simply want to connect to a phone line, there are several low cost devices that runs Asterisk.

Hosted SIP Services​

The voice notification module can be paired up with SIP-based services, although there may need to be some manual configuration. See our guide on integrating Ignition with AWS Chime.

Card Image

How to setup Ignition with AWS Chime

How to setup Ignition with AWS Chime

Link to Knowledge Base Article

Gateway Configuration​

To get started with voice notification, add a new profile by going to Config -> Alarming -> Notification in the Ignition Gateway. You are only required to specify the host address of the SIP gateway, though depending on the Gateway, you may be required to enter a username and password.

There are additional settings that dictate how calls are managed, such as timeouts for answering, and the maximum amount of time that a call can take. Additionally, you can choose to link the notification profile to an audit profile in order to record important call lifecycle events.

After saving the profile, you should see the status update from “Unknown” to “Registered”, indicating that the Gateway has successfully registered with the SIP Gateway. If you see an error, verify that the settings are correct, and that the username and password are correct. The system log console can also be useful in determining what is wrong.

note

If you receive errors indicating that an “invalid parameter” has been used, try setting the local and public bind interface settings under the advanced options. These should be set to the IP address of the network card that is being used to communicate with the SIP Gateway. On some systems, especially Linux hosts, the default empty values result in this error.

Configuring Messages​

The message played to the user during the phone calls is defined in the call script. The script dictates the overall structure of the call, defining the phrases and options, and the possible responses. The messages for each alarm are built off of a message template that can reference properties in the alarm. The script can be edited by selecting “manage scripts” next to the voice notification profile. Note: Although the link appears next to a particular profile, the scripts are shared across all voice notification profiles.

The role of each phrase in the script is explained on the settings page. Some parts of the script, such as the phrase requesting the user’s PIN number, will only be used if certain settings are configured on the notification block in the pipeline (in this case, the setting to require a PIN). As previously mentioned, the alarm message (for both active and clear) can reference any property of the alarm. The default message looks like this:

At {eventTime|hh:mm:ss}, alarm named {name} became {eventState} with a value of {eventValue}

In this case, the message refers to the alarm name, the eventState and eventValue (note: eventState is different than state. Event state is just the transition that triggered the alarm, such as “active”, whereas “state” is the full current state, such as “active, unacknowledged”), and the eventTime. Notice that the event time is formatted to only use the time, and not include the current date.

Scripts can be created for different languages. When the system attempts to deliver a notification, it will look to see if the target user has a preferred language. If so, and the language has both a script defined, and a compatible voice installed, the user will be notified in that language.

caution

Alarms also allow you to define a custom message, relevant to that particular state. If a custom message is defined, it will be used instead of the default message in the script.

The Call Lifecycle​

A call is initiated when an alarm event enters the notification profile block in a pipeline. When this occurs, the target users are collected, based on the defined call roster, and the current schedule. Only users who have phone contact details defined will be selected for phone notification.

The voice system can only call one number at a time, and so it takes the first contact off of the queue and initiates the call. The user is given up to the “answer timeout” to answer. After picking up, the user will be asked to enter their pin number, or press any number to continue. The call is not considered “answered” until this action occurs, so the message will be repeated until the answer timeout expires. By acting in this way, the system is able to confirm that a human has actually answered, and the call will then be audited as successful.

Once past the initial challenge, the user will then hear the alarm messages. After each message, they will be asked to either acknowledge, ignore, or repeat the message. Selecting “acknowledge” will cause the alarm to be acknowledged in the alarming system, likely causing it to drop out of the alarm pipeline (dependant on pipeline settings). Ignoring the alarm indicates that the user has heard the message, but cannot or does not want to acknowledge the alarm.

Once the call has completed, the notification system will check the alarm events against the pipeline fallout conditions, and move on to the next call. The system will cycle through all alarms and all contacts (and all phone numbers for each contact) until everyone has been notified, or the pipeline settings have caused all events to drop out.

Pipeline Configuration​

The voice notification system is accessed through the Notification Block in the Designer's pipeline configuration, like all other notification methods. As with other methods, you select a call roster, and can optionally turn on consolidation. There are only two options which can be set on the notification block:

Require PIN: If selected, the user will be required to enter their personal identification number in order to hear the message. The user’s PIN number is specified on their profile in the user management system. If false, or if the user does not have a PIN specified, the user will only be required to press any key to continue.

Allow Acknowledgement: If true, the user will be given the opportunity to acknowledge the alarm. If false, they will only be able to hear the alarm and continue.

Create a Voice Notification Profile​

  1. Go to the Config section of the Gateway.

  2. Select Alarming > Notification from the menu on the left side.

  3. Click on the Create new Alarm Notification Profile link.

  4. Add Alarm Notification Profile Step 1 window will appear. Select the VOIP Voice Notification radio button and click Next.

  5. On the New Alarm Notification Profile page, configure your settings. Enter the Gateway Address or domain name of your SIP Gateway. You may be required to enter a username and password. There are also some additional call settings that may need to be set up depending on how you want to manage your calls, and based on your preference. Refer to the table below for a description of all settings.

  6. When completed, click Create the New Alarm Notification Profile. Your new Voice Notification Profile will be displayed with a status of Registered with VOIP Host.

Once your Notification profile is created, you can use it in an Alarm Pipeline.

VOIP Voice Notification Profile Settings​

The following table describes the settings on the Alarm Notification Profiles page for a VOIP Voice Notification profile.

Main

SettingDescription
NameName for this alarm notification profile.
DescriptionDescription of the
EnabledWhether the profile is enabled or disabled.

VOIP Gateway Settings

SettingDescription
Gateway addressThe ip address or domain name of your SIP gateway.
Username/AccountUser or account name for this profile.
PasswordEnter a password for the account.
PasswordRe-enter password for verification.
Outbound ProxyThe proxy to use, if any.

Call Settings

SettingDescription
Max Call Duration (minutes) The length of time, in minutes, that any particular call is allowed to take. The call will be terminated if it lasts longer than this limit. (Default is 5.)
Answer Timeout (seconds)How long, in seconds, to wait for an answer before moving on to the next contact. (Default is 60.)
Voice RateAdjusts the desired voice rate. (Default is Normal.)

Auditing

SettingDescription
AuditingIf an audit profile is selected, events such as phone calls and acknowledgements will be stored to the audit system. Note that alarm acknowledgements are also stored to the alarm journal.

Advanced Settings

SettingDescription
Authorization IdSome services require a separate authorization name, in addition to the user/account name. If left blank, the username specified above will be used.
SIP PortSIP Port. (Default is 5,060.)
RTP PortRTP Port. (Default is 8,000.)
Local Bind AddressLocal bind address for the profile.
Backup Local Bind Address
New in 8.1.40
The bind address for backup systems.
Public Bind AddressPublic bind address for the profile.
Media Debug EnabledIf true, call audio will be recorded to the Ignition temp directory. The audio file will be generated after receiving a response from the SIP server. (Default is false.)