Integrated Notification System


Main features

Getting started

Download fully functional evaluation copy


Main features

The Integrated Notification System is a highly configurable IVR (Interactive voice response) software, designed to send messages through your computer and lets your computer handle incoming calls.
INS works with professional voice boards, through VoIP, or as well as with low cost, voice-enabled modems.

INS schematics

Using the Integrated Notification System you can

The Integrated Notification System consists of the following applications:

Message Service

Message Server

Message Center


Send Message  




Receiving voice calls
By using the intuitive but powerful graphical workflow Designer you can create interactive phone applications (Also called Interactive Voice Response IVR Systems), where the caller uses the phone keypad to enter values and navigates through a script. Applications like Credit Card verifications, Fax-On-Demand, SMS-On-Demand or Voice-Mail may be designed within minutes.
All values entered by the caller are available for further processing in the script or can be exchanged with any other application like Excel or Visual Basic.

Receiving SMS/E-mail
By using the intuitive but powerful graphical workflow Designer you can create scripts that react on incoming messages. The message (SMS or E-mail) is queried for the specified values and format and then you can react on its contents. SMS/Email forwarding, SMS/Email auto reply, SMS on demand, etc, may be designed within minutes. All values received are available for further processing in the script or can be exchanged with any other application like Excel or Visual Basic.

Receiving FAX
By using the intuitive but powerful graphical workflow Designer you can create scripts that react on incoming FAX messages. The FAX can be stored in a file and then processed further. FAX-to-Email forwarding, local storage, etc, may be designed within minutes. All values received are available for further processing in the script or can be exchanged with any other application like Excel or Visual Basic.


Sending Messages

Using the Message Center utility, you can define a database of contacts to which you may send your messages. Messages can be sent by

When sending a message you can decide to send it using a pre-specified communication link or to let Message Server choose the most appropriate link. If you let Message Server choose the link, it will automatically adapt the message to suite the selected communication link.
The messages can be sent through the Message Center interface or using the command line interface of Send Message.
Check-It allows you even to query other applications for values and send alarm messages if those values exceed the defined limits. This feature makes the suite invaluable for SCADA applications, where you need to monitor factory floor data.
Network administrator may set up events to monitor the loss of communication and sent alarm messages to the support group.



Typical hardware layout of an IVR System using INS

Hardware/Operating System
INS runs on any Windows compatible desktop or server. As operating system you can use any 32/64 bit Windows OS.
Please note however that on 64 bit Windows OS, TAPI is not longer supported. Hence on those you will need to use SIP VoIP or a Dialogic voice board.

Typical hardware layout of an IVR System using INS


Getting Started

How to...

…set up the application initially

To set up the application initially please use the Tools->Quick Setup option in the MsgCenter utility, found in the main directory. This will lead you through a set of screens which sets up you modem, script and other settings.
To change other parameters of the suite you can use the Tools->Preferences option. This however is not necessary in most cases.


…run a voice script to answer calls, FAX or respond to SMS/E-Mail events with a script

Scripts can either be voice scripts (started when a call comes in) or text scripts (started when a new e-mail or SMS is received, or at predefined timer intervals).
Once you have set up the suite you may use Designer.exe to edit the selected script file. Designer is a graphical script interface, which allows you to create and modify answering scripts. All voice script files have the extension VSC and all text script files the extension TSC.
The flow of the script is usually from top to bottom, starting at the cell with the red caption until it reaches an end point. The end point should be a HANGUP or EXIT cell.
By double clicking on a cell you may open a pop up screen which allows you configure the behaviour of the cell.
Once you have designed the script you need to select it in the appropriate place.

For voice scripts:

  1. Define a new line under MsgCenter->Tools->Preferences->Communication as type "VOICE: Incoming Voice/Fax calls"
  2. Select the script under "Script"
  3. Make sure that a communication device under "Connected to" is correct.


For Timer activated scripts:

  1. Define a new line under MsgCenter->Tools->Preferences->Communication as type "Timer"
  2. Select the script under "Script"
  3. Set the scan interval to a non zero value

For SMS scripts:

  1. Define a new line under MsgCenter->Tools->Preferences->Communication as type "SMS: Incoming SMS through Handset"
  2. Make sure that a communication device under "Connected to" is correct.
  3. Set the inbox scan interval to a non zero value
    (The system will download the messages every scan and then execute the script)

For E-mail scripts:

  1. Define a new line under MsgCenter->Tools->Preferences->Communication as type "E-MAIL: Incoming E-Mail"
  2. Make sure that a valid e-mail profile is selected under "Connected to".
  3. Enter the correct POP settings if necessary
  4. Set the inbox scan interval to a non zero value
    (The system will download the messages every scan and then execute the script)

For FAX scripts:

  1. Define a new line under MsgCenter->Tools->Preferences->Communication as type "FAX: Incoming Fax calls"
  2. Select the script under "Script". If you do not select a script, the FAX is received and stored, but no further action is taken.
  3. Make sure that a communication device under "Connected to" is correct.

Then start the MsgService application. This Windows service handles all calls from and to your system.
Message Service will go through a start-up routine where all settings are checked. If during the start-up errors are encountered, an error message is displayed for 5 second and the icon on the right side of the taskbar blinks. Clicking on the icon opens a menu, which allows you to open the different logs or to close the application. The SYSTEM LOG reports all events during the current session, so it is a good idea to leave it open at beginning. If there were no errors during start-up and there is a valid script configured, the SYSTEM LOG will display "Running script [scriptname]".
Now you are ready to call the line to which your modem is attached to and watch the script running. The SYSTEM LOG will always display the current cell name, the keys entered by the caller and any other event occurring during the call.
When a text script (SMS or E-mail) is selected the system will periodically (Scan time) download the new messages and the run the script on the new messages.

…send a message to a contact

After the initial set up through MsgCenter select the Contacts icon in the explorer window. Select the default MAW entry and right click on the icon. Then select Duplicate. Enter your name and change the appropriate settings. If applicable select your SMS services. In the CONTACT TIMES part you may configure during what time which device can be used. If you only wish to receive SMS messages just select SMS as first link and as first preference.
Then choose File->New->Message and select the created contact as Recipient. Under Send Via you can select if the message will be sent by the user defaults (entered in contacts) or through a pre-selected communication link.
The advantage of specifying multiple communication links for a contact is that a message may be sent using the most appropriate communication for the time.
Then enter a message and press SEND. This will add the message to the outgoing message queue and MsgService will send it using the appropriate communication device.
Start MsgService as described above.
Depending on the selected device the message will be adapted. Please search the help file for "Message adaptation" for more information on how MsgService can adapt your message to suite a particular communication device.


…send a message from a web site  

There is a sample on C:\INS\SampleScripts\TextScripts\SMSFromWeb that shows on how to set up a web site that gets user input and then sends it via e-mail to a predefined e-mail address. With Message Server you can then read this e-mail and from a text script do the required functions to return a desired logo, or other information.


…configure Check-it to scan Excel for values

Start CheckIt.exe. The application will run minimized and only appear as icon on the right side of the task bar. Click on the icon to open the configuration screen.
The example event will scan Excel every minute for the value of cell A1 (R1C1). If the value in this cell exceeds 10, an alarm message will be sent to the contact MAW.
In order for this example to work Excel needs to be running in the background.
Also Check-It needs to be minimized to start scanning the values.


…install INS as a service under Windows

(See under MsgService)


…get more information

All applications have on-line help. So please use F1 anywhere in the applications to get context sensitive help.


Message handling

Message Server is capable of sending messages using the following communication types:

Type Capacity
SMS (to pager or mobile phone) Alphanumeric messages up to 160 characters
Pictures (72 x 28 pixels)*
Ring tones*
Logos (72 x 14 pixels)*

*Only with supported mobile phones and a SMS central that supports this feature

Facsimile Alphanumeric messages with no limits on number of characters, use of cover page
E-mail Alphanumeric messages with no limits on number of characters, use of cover page and attachments
Voice recipients Alphanumeric messages, read either character by character or using pre-recorded words or TTS (Text-to-speech), use of cover voice files and script before.
Scripts Scripts as designed with Designer which will start to execute as soon as the called person answers the phone.

The only difference between an incoming script and an outgoing script is that the outgoing script can not have a hangup cell at the end. It is a part of an outgoing call so the hangup will be done by the calling voice message. (After confirmation of the script).

Sending of voice files

When sending a voice file to a contact, the system does sometimes not wait until the call is answered before playing the file.
This problem is due to most voice modems not being able to detect when the other party has answered the phone.
Hence the voice file is played as soon as the number is dialled.

If you use a predefined contact you can define a "script file before", where you loop through a WAV file asking the contact "Please press 1 to start listening to this important message...". So as soon as the contact is ready, he may listen to the message by pressing a key.

You find a sample script under C:\INS\SampleScripts\VoiceScripts\ScriptFileBefore that can be modified and used as "script file before".


Message adaptation

Most of us use different communication tools at different times. It is not uncommon that we receive our messages by e-mail during working hours, but by SMS at home. To make sure that the message finds a way to get to its recipient, you can configure all communication types your contacts are likely to use and define at which times to use what type.

As different communication types have different capacities INS can "adapt" a message to the individual type. Using the Tools->Preferences menu item in the Message Center utility you can influence how messages are adapted.

IE if you check the Speak only CAP characters flag in the voice configuration a message sent to a fax with the reading

PV has reached a value > 30

will become

{P}{V} {higher than} {30}

Voice Engine

The INS Voice Engine allows you to pre-record characters, words or expressions with your own voice and accesses them through text messages.

IE if you pre-record the voice files


a message string with the contents


will be read as
{TEMPERATURE} {ALARM} {T}{T}{4}{2} {VALUE} {is higher than} {2}{3}{point}{4}{5}

The file ASSORTED.CFG contains the mapping for each voice file. This allows attributing a voice file to a particular string. All voice files need to be located in the voice file directory.

IE the entry
plays the voice file ALARM.WAV whenever the string ALARM is found in a message and the entry
plays the voice file STAR.WAV whenever the character * is found.
If the message string contains words that are not defined, they are read back on a character-per-character base.


TTS Engine (Text-to-Speech)

This option used in the Designer Speak String cell, uses a computer voice to play back the written text. You can change the voice settings (character and speed) by going to Start->Control Panel->Speech


The entered string to speak may contain XML formatting identifier to change the volume, rate or pitch.

EG the following string

    "Hello <RATE SPEED = "-5">World</RATE>"

will play Hello at a normal speed and World at a speed -5.
For more information please refer to

To download additional characters and/or languages please go to the Microsoft speech web site on
If you want to get the Mike and Mary voices redistributable, you can download them from there.
For third party TTS engines (more naturally sounding, please go to

For the most natural voices in different languages, we recommend using AT&T Natural Voice.
Hear a sample in ENGLISH
Hear a sample in GERMAN
Order AT&T Natural Voice from together with the TextAloud utility.



Speech recognition

Speech recognition is used by the Designer Speech Recognition cell and is installed by default with Windows Vista. For Windows XP it needs manually be downloaded from the Microsoft web site or by any third party provider.
For better accuracy you need to configure and train the engine. Please refer to the Microsoft documentation on how to do this.



Sending of Files vs. sending of text

If a message launched to a voice recipient represents a valid voice file path, the voice file is played and not read character by character. So if the message


is send to a voice recipient the file ALERT.WAV is played when the other party responds, not a list of characters.

The same applies for faxes, e-mails and scripts. If the message represents a valid file, the content of the file is sent rather than the file path.

Valid voice file extensions are
WAV - Windows Audio File
Valid mail file extensions are
*.* - (all files)
Valid fax file extensions are
APF - Fax files
BMP - Windows Bitmap
DCX - Multi page PCX
PCX - PC Paintbrush
TIF - Tagged Image File
TXT - ASCII text file
Valid SMS picture/logo file extensions are
GIF - Graphic Interchange Format
Valid SMS text/ringtone file extensions are
TXT - ASCII text file


FAX reception
Message Server is able to receive faxes either at the start of a voice script or during  the recording of a voice file. To set the number of seconds to wait at the beginning of a script for a fax signal see the settings under I
ncoming Script(s).
If a fax is detected during the recording of a voice file (in the Record Message cell or the Voice Mail cell) Message Server will stop the current script and switch to the fax reception mode. Once the fax transmission has succeeded the fax is available in the inbox of Message Center.



Message confirmation
Message Server
retries to send a message Number of attempts times. A message is considered as sent if

Type Confirmation
SMS SMS central sent ACK
Facsimile Internal Fax application: Fax confirmed by remote station
External Fax application: Application is started
Fax through MsMail: Mail engine reports no error
E-mail Mail engine reports no error
Voice recipients User confirms message by pressing the confirm message key within 10s after the end of the message  
Scripts User confirms message by pressing the confirm message key within 10s BEFORE OR AFTER THE SCRIPT.  


ADODB access to the INS databases

You can access the INS tables by using a Microsoft ADODB connection.

EG in a VBS script :

'Sample to list all field description of the INS messages.db
const adCmdText = 1

Set cnn = CreateObject("ADODB.Connection")
set rst = createobject("adodb.recordset")

cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=c:\ins\database\;" & "Extended Properties=Paradox 5.x;"

rst.Open "Select * From messages", cnn, , ,adCmdText

for each i in rst.fields
    OutString = OutString & & ";"
MsgBox OutString

Please do not delete/modify any data, as the system may not work properly anymore after.



Using alternative databases for INS

It is possible (but not necessary recommended) to replace the default PARADOX database of INS with MySQL, MsSQL or any other database that comes with an ODBC driver.

Using the default PARADOX database max have certain advantages in regards to speed and stability. In some cases in may however make sense to use another database to comply with corporate guidelines. For this purpose the ODBC driver may be used.

To change the default INS database to an ODBC database, please do the following:

1)      Configure an ODBC data access to the desired database.

a.      For MySQL you must first install the mysql-connector-odbc. The connector  you can be download free of charge from

b.      Configure an ODBC session to the desired database. This can be done under Control Panel->Administrative Tools->Data Sources (ODBC).
You can name the Data Source Name of the session as you like, just select the appropriate database driver.
In the configuration below we created a session for the local MySQL database INS. INS just needs to be an empty database and the user
user must have access right to it.
GRANT ALL ON INS.* to 'user'@'localhost' IDENTIFIED BY 'password';


c.      For a session to MsSQL, just select the SQL Server driver which guides you through a wizard.


2)      Then make sure to close all INS applications, open the file c:\ins\database\system.db with a text editor and look for the entry
Now simply replace this entry with the name of the created ODBC session. In our example

3)      Done…






Advanced parameter setting

For advanced users there are some settings that can be entered directly into the c:\ins\database\system.db file to set more features of INS.

Debug mode=1

This will write all sort of debugging information to the session.log. For performance reason you will not see those entries in the application, only if you open the file c:\ins\session.log with a text editor.

This option will create a HUGE number of entries into the session.log, therefore never use it in a productive environment, as it will literally fill up the users hard disk.
You may use it on a customer installation when there is a reproducible problem, just to trace the error and then take the option off again.
When using also always set the system.log file size to >2048kB as otherwise too many files will be created.



AutoStart on watchdog=1

INS will shut down a thread after it stays more than 15 Minutes in the same state, considering it to be blocked. The default behaviour is to restart only the thread affected and leave the other threads unaffected.
If you set the above value to 1, INS will shut down all threads and terminate the entire MsgService.exe application.
By setting the Recovery setting of the MsgServer Service, you may then restart MsgServer.exe automatically after this.

The sample below will try to restart the service twice, before restarting the entire computer.





Order and registration

To order a copy of INS or to check its current price, please go to

After your order has been approved, you will receive from us within 24 hours an e-mail with your serial key that unlocks your evaluation copy into a fully licensed version. This key also entitles you to future upgrades, so please store it in a safe place.


For all support questions please refer to our support forum on

Please note:
- We can not provide phone support for our evaluation copies, please use the forum above
- Always indicate your name and e-mail address whenever you contact us


MAW Software International

Web : (general inquiries)


European Headquarters Switzerland

MAW Software Ltd
Weidstrasse 27

8808 Pfäffikon



UK Support line