Howto:White List Service XML Script For Outgoing Calls

From innovaphone-wiki

Jump to: navigation, search


This script allows to create and to maintain a simple whitelist for outgoing calls. Calls to numbers unknown to the Whitelist are immediately rejected by the PBX. The service can also maintain a list of internal user that have unrestricted access to the PSTN.

Numbers and user extensions can be easily added or removed by calling the Whitelist Service object and following the instructions.


Contents

Installation

Download the application packet from HERE.

Extract the archive on your local drive and open the "WhiteLst" folder.

Package content

Inside the folder you will find:

FOLDERS

  • Audio: contains localized (EN-DE-IT-FR) audio files
  • WL_Numbers: contains whitelisted numbers files
  • WL_CGPN: contains internal unrestricted extensions number files
  • Attachments: used for temporary attachment files


FILES

  • WhiteLst.xml: the application script
  • WhiteLst_email.xml: the script handling email notification of whitelisted numbers
  • Default_WL.txt: file containing the number of the Trunk Line object connected to PSTN.
  • Email.txt: file containing a generic email address where whitelisted numbers will be sent to.
  • Email_Code.txt: file containing the code to enter in the app menu to have the whitelisted numbers sent via email.
  • AdminPIN.txt: code to acces the whitelist admin menu
  • Language.txt: file containing the language to be used by the application:
    • DE: German
    • EN: English
    • IT: Italian
    • FR: French

Configuration of application files

Before copying the folder to your preferred web server you should customize the following files:

  • Email.txt: configure a valid email address
  • Email_Code.txt: configure the code to enter in the app menu to have the whitelisted numbers sent via email: i.e. "**99". Without a code the email service is disabled.
  • Default_WL.txt: configure the number of the Trunk Line object connected to PSTN.
  • Language.txt: configure the language to be used by the application: DE,EN,IT or FR.

You may now copy the folder to your web server.

PBX configuration

Create a new Voicemail obj with a name and number and configure the script URL pointing to "WhiteLst.xml" file in the application folder on the web server.

For example if you copied the folder to your Compact Flash/SSD drive:

http://127.0.0.1/DRIVE/CF0/WhiteLst/WhiteLst.xml?$_pbxfwd=true

Enable "Reject ext. Calls" on the Voicemail obj if you want to allow access to the service only from internal extensions.

On the Trunk Line object configure a CFU to the Whitelist voicemail object number.


Email notification service

By entering a custom code in the "Email_Code.txt" file the email notification service is enabled. If a valid email address is configured in the "Email.txt" file or the internal calling user has a valid email address configured in its PBX object, the email code can be entered during app menu announcement to have a list of the whitelisted numbers sent via email as attachment. Due to a Voicemail engine limitation it is possible to send max 20 numbers in one email, for this reason if your white list has more than 20 entries the whole list will be split over multiple emails.

Please follow this article to adapt the script to your local SMTP requirements:

Send_Email_MWI_Notification_From_The_innovaphone_Voicemail

Functionalities

Each outgoing call is now checked by the script.

You can add/remove PSTN numbers or internal extensions by calling the Voicemail obj. number+AdminPIN and following the menu options.

For example if the Voicemail obj. extension is 80 and AdminPIN is **80, you should dial 80**80 to access the White List admin menu.


Note:

Enter PSTN Numbers without Trunk Line prefix

If the dialed number or the CGPN is in the White List the call is sent out to PSTN.

If no match is found the call is released with ISDN cause code 52: outgoing calls barred.

Known Issues

The XML script uses HTTP PUT method to store files in the app's folder. On 3rd party webservers (e.g. IIS, Apache) you might need to enable the PUT method for the app's folder.

Personal tools