Using Twilio for Alarm Notifications

As an alternative to voice modems, VTScada supports the Twilio messaging system, enabling you to send spoken alarm notifications to operator's phones. At least one of your VTScada servers must have an Internet connection. VTScada will continue to support voice modems for sites where this is not an option.

You can use Twilio or you can use a voice modem. You cannot use both.

VTScada must be able to receive status notifications directly from Twilio using the HTTPS protocol. Therefore, Twilio is an option only for sites that are able to allow Twilio to post HTTPS requests to the VTScada Thin Client Server with a fixed IP address or domain. (Connections are made in both directions.)

If the only outside connection to your server is via a VPN, then you cannot use Twilio to send alarm notifications.
Learn more about configuring your Thin Client Server in the topic, Thin Clients: Mobile and Internet

The current Alarm Notification server must be accessible from the Internet at the IP or domain specified in the Twilio settings. In a fully redundant system, this means that the Twilio settings must be workstation specific. Use the workstation selection tool in the Twilio Account Settings to choose the workstation you are configuring.

There is no requirement that the specified IP address be the current VTScada Thin Client Server or that the Alarm Server be on the Thin Client Server List.

The voice to be used by Twilio can be configured on a language-by-language basis using the #TwilioVoice setting in each languages *.csv file. The default is:

#TwilioVoice,alice

 

You will require a Twilio account. Obtain one from Twilio at https://www.twilio.com/try-twilio. Add the SID and the Auth Token for this account to the configuration of your application. See: Twilio Account Settings (Alarms Tab of the Edit Properties Page).

If running multiple applications (for example, hosted systems) then you cannot share modems, SMS devices, or Twilio accounts between applications. You must have independent modems or Twilio accounts for each application.

To connect, send a message, and disconnect, VTScada must be able to receive status notifications from Twilio. These are sent via HTTPS, therefore you must configure a VTScada Thin Client Server and a Realm and secure that using an X509 certificate. See: Configure a VTScada Thin Client Server and Configure a Realm.

Do not use a realm defined for Realm Filtering or a security account limited to such a realm.

 

Use care with special characters in account names and passwords. While valuable from a security standpoint, some characters may cause problems with certain Alarm Notification devices.
In particular, it has been reported that many symbols other than letters and numbers in a password will not work with the Twilio® interface. To be safe, use only alpha-numeric symbols in account passwords if you are using Twilio.

Note that if an operator hangs up within one second of pressing 1 in the menu system, data related to the call progress that would normally be logged can be lost. There is no significant harm to this, because the end-of-call status can be inferred.

Troubleshooting

If operators have trouble verifying their ID with Twilio, use the following to diagnose the problem:

  • Ensure that the option, Speak digit after phone key press, is selected in the Alarm tab of the Application Configuration dialog. This provides an audible confirmation so that operators can know that each digit was indeed pressed.
  • For security purposes, keypresses are masked in the Twilio logs unless the property TwilioShowCredentials is set to 1 (one) in the application. Set that property to 1 only while debugging a problem.
  • The Twilio logs are written once per day or after 1000 entries, whichever comes first. While troubleshooting, you can increase the frequency of logging intervals in order to check for problems more often. Refer to the properties, TwilioTraceInterval and TwilioTraceMax.