Using VoIP for Alarm Notification

VoIP configuration is done using the Alarms Tab of the Edit Properties Page.
Scroll to the end of that topic.

Definitions:

VoIPClosed Voice over Internet Protocol stands for Voice over Internet Protocol. "VoIP" is sometimes used as a generic reference to any phone connection via the Internet. VoIP is not a protocol itself; it is a collection of related protocols that support voice communication over the Internet. Those who are familiar with the technology can skip this collection of definitions.

For customers who are new to VoIP, the following may help guide you through the large set of related acronyms as you choose and install a system. There are several excellent references online that will be useful as you search for a VoIP solution, but also many that add more confusion than explanation. Hopefully, the following will help you get started.

SIPClosed Session Initiation Protocol. Used in connection with Voice over Internet Protocol.

Stands for Session Initiation Protocol. This protocol refers only to how sessions are connected. It does not specify how messages (including voice) are transferred. There are many methods of implementing VoIP, but nearly all rely on SIP for the initial connection.

Most of your VTScada configuration tasks related to VoIP specify how to connect to your provider using SIP.

FXO

Foreign Exchange Office, which in the case of telephone communications refers to an interface that connects an adapter to the telephone line coming from a "plain old telephone system". (POTS - or simply the standard telephone outlet on the wall.)

If you choose to implement a system using a VoIP ATA adapter (defined next) be sure to purchase one that has an FXO port.

ATA Adapter

Analog Telephone Adapter. Connects a VoIP-enabled device (such as a VoIP telephone or your VTScada server) to an old fashioned telephone system.

There are also ATA adapters that will connect an old fashioned telephone to a VoIP service. Those have an FXS port and are not relevant to this topic.

PBX

Private Branch Exchange. A private telephone switchboard.

Soft Phone

A program or application for making telephone calls over the Internet. (ex MicroSIP)

Requirements:

Before beginning, you must have a way to send and receive calls. This can be implemented using one of three methods:

  • A VoIP ATA adapter with an FXO port connected to a physical phone line and to your internal Ethernet network.
    You do not need a VoIP provider for this solution. You do need an account with your local telephone service.
  • An existing local exchange that supports SIP.
    This would be of interest in an environment with Internet-connected phones.
  • An Internet-based service that supports SIP and can make calls over the Internet such as VoIP.ms

Ensure that you have access to the relevant configuration details, either from your phone system administrator or the device manuals.

Trihedral has not tested alarm notifications with every VoIP provider and cannot guarantee that it will work with yours.

Microsoft does not permit Windows services to access SAPI (the built in Windows text-to-speech engine). This means that if you are using the VTScada Alarm Notification System and you configure your application to run as a Windows service, then outgoing alarm calls via voice modem are silent. VOIP and Twilio calls may work, but Microsoft is inconsistent with which versions of Windows will allow services to access SAPI. We cannot guarantee operation of VOIP when running VTScada as a service.

When configuring VoIP in more than one application, using separate accounts for each VTScada application is recommended. Some VoIP providers support creating separate sub-accounts, which can also be used for this purpose. Using a single VoIP provider account, which is typically linked to a single phone number, across multiple VTScada applications at the same time can lead to incoming calls/SMS being routed incorrectly with some VoIP providers.

Setup.INI properties for VoIP

EnableVOIPLog

Set to 1 by default, meaning that VOIP logs are saved to the folder TraceFiles\VOIPLogs.

VOIPPort

Do not change from the default value unless necessary.

If you have a VoIP soft phone or similar, there may be contention for the default SIP port of 5060. You can specify an alternate SIP port that VTScada will use via the VOIPPort setting. To change this value, edit your Setup.INI file using a text editor and then restart VTScada. This property affects all running applications.(See: System Properties - Setup.ini )

For example:

       VOIPPort = 5062

VoIP Settings (Alarms panel of the Application Configuration dialog)

Calling and SMS may be enabled separately per-workstation.

Enable VOIP Calls

If this box is selected, your application will use your VOIP settings for voice-based alarm notification. It will not use Twilio or voice modems, even if those are configured.

Enable VOIP SMS

If this box is selected, your application will use your VOIP settings for SMS-based alarm notification. This feature works only with providers who support SMS and have enabled the MESSAGE extension for SIP. It does not work with Grandstream devices.

Workstation

Use when configuring systems that have multiple, workstation-specific options for connecting to a VoIP device. This allows you to configure the unique VoIP connection details for each Alarm Notification server.

SIP identity

The unique SIP uniform resource indicator URIClosed Uniform Resource Identifier) that identifies the application. The scheme for this URI is defined in RFC 3261.

If you have an internal VOIP PBX or virtual PBX, your phone system administrator must assign this to you. It will typically take the form, sip:11235551234@sip.myorg.com:5060

The port specification (:5060) is optional unless you have changed the property, VOIPPort, in your Setup.INI file.

If you are using a VoIP-to-FXO device, the identifier before the "@" sign may be configured arbitrarily. (For example: sip:bob@bob.mydomain.com). You would use this same URI to configure incoming calls from the VoIP-to-FXO device.

In all cases, the fully qualified domain name (FQDN) of the server that VTScada is running on must follow the "@" symbol.

SIP server

If you are using an internal VOIP PBX, ask your phone system administrator for this information.

If you are using a VoIP-to-FXO device you may be able to leave this blank. (SIP INVITE requests go directly to the device instead of via the server.)

If populated, this field should be a SIP URI. For example, if your administrator indicates that the SIP Server is an IP address (e.g. 192.168.2.21) the SIP Server field should contain "sip:192.168.2.21". If your administrator indicates that the SIP Server is an FQDN (e.g. "voip.mynetwork.com") Then the SIP Server field should contain "sip:voip.mynetwork.com". If your administrator has specified a port on the server to use (e.g. 5060, or 5090) it can be appended to the URI (e.g. "sip:voip.mynetwork.com:5090")

SIP proxy

If you are using an internal VOIP PBX, ask your phone system administrator for this information.

If you are using a VoIP-to-FXO device you may be able to leave this blank (SIP INVITE requests go directly to the device instead of via the proxy)

If populated, this field should be a SIP URI. For example, if your administrator indicates that the SIP Proxy is an IP address (e.g. 192.168.2.21) the SIP Proxy field should contain "sip:192.168.2.21". If your administrator indicates that the SIP Proxy is an FQDN (e.g. "voip.mynetwork.com") Then the SIP Proxy field should contain "sip:voip.mynetwork.com".

If your administrator has specified a port on the server to use (e.g. 5060, or 5090) it can be appended to the URI (e.g. "sip:voip.mynetwork.com:5090") If your administrator has not specified a proxy, you can enter the same information that you entered in the SIP Server field.

SIP domain

If you are using an internal VOIP PBX, ask your phone system administrator for this information. Typically this is the domain part of your SIP URI. For example, if the SIP URI is "mailto:sip:11235551234@sip.myorg.com:5062", the domain field is "sip.myorg.com".

If you are using a VoIP-to-FXO device this is the IP address of the device.

The domain field is used by VTScada to decorate phone numbers in the roster to turn them into SIP URIs for making outbound VOIP calls. For example, if the number of a roster contact is "19025551234", and the SIP domain field contains "192.168.2.21", VTScada will attempt to call using the following SIP URI: "sip:19025551234@192.168.2.21". If you are using VOIP for alarm notification, you can also just use the contact's SIP URI directly in the roster phone number field. If you are using a naked phone number, you should include the country code and the area code in the number, without spaces or extra characters. In North America this will be eleven digits in all.. the one digit country code ("1"), the three digit area code, and the seven digit local number.

SIP login user ID

If you are using an internal VOIP PBX, ask your phone system administrator for this information.

If you are using a VoIP-to-FXO device this might be blank, depending on the device. Refer to the device documentation.

SIP password

If you are using an internal VOIP PBX, ask your phone system administrator for this information.

If you are using a VoIP-to-FXO device this might be blank, depending on the device.