TOA IP-A1 Series Sophisticated IP Audio Endpoints Instruction Manual

June 13, 2024
TOA

TOA IP-A1 Series Sophisticated IP Audio Endpoints

TOA IP-A1 Series Sophisticated IP Audio Endpoints

INTRODUCTION

Free PBX Distro is the world’s most popular open-source IP PBX. It utilizes the CentOS Linux Distribution, Asterisk Core Telephony Engine, and the Free PBX Web GUI to provide an all-in one package for building your own IP telephony solution. Free PBX Distro, being Asterisk based, inherits Asterisk’s use of the SIP protocol for its core telephony applications. With the additional use of modules, Free PBX can also be expanded to add RTP multicast broadcast functionality for IP-based paging. This manual will go over the required configurations for SIP and RTP Multicast on a Free PBX implementation in conjunction with TOA N-SP80 and IP-A1 products.

PREREQUISITES

FreePBX Distro Version

This manual is based on stable release version SNG7-PBX16-64bit-2208-2 which is based on these components:

FreePBX Web GUI 16
CentOS 7.8
Asterisk 16, 18 or 19

This version is available on the FreePBX Website for download.
https://www.freepbx.org/

Future updates may change the layout settings and features from what is shown below.\

INSTALLATION

For the Full FreePBX installation procedures, and the required specifications for your PC, please
refer to the FreePBX Installation on Wiki.

https://wiki.freepbx.org/display/PPS/FreePBX15-16+installation

The outline of the procedure is as follows:

  1. Download the Free PBX Installation ISO.

  2. Create a bootable USB drive using the Free PBX Installation ISO.

  3. Insert the USB to the PC you wish to install Free PBX and boot from the USB drive. Note that installing Free PBX will wipe the memory and files of the device.

  4. Upon booting from the USB, select “Fully Automatic Installation”.
    Installation
    Select “Output to VGA” if your server or appliance comes with a display port (VGA, HDMI, etc.) Select “Output to Serial” if your device only has a console cable. Refer to the Serial port connection guide for instructions on how to connect using this method. For our discussion, we will use the “Output to VGA”.

  5. Installation will begin. Wait till the installation prompt finishes.
    Installation

  6. When the installation is complete, the device will reboot. Make sure to boot to the hard drive upon restart (either by removing the USB or adjusting the BIOS boot settings). Also, connect the device to a LAN with DHCP so it automatically gets provisioned an IP upon reboot.

  7. Upon successful reboot, you should see a screen shown below.
    Installation
    Login using the default credentials provided by FreePBX. For our testing, we had the default username and password:
    Default Username: root
    Default Password: Sangom a Default Password

  8. Upon successful login, the screen will display the Network Information for the Device Network Adapters.
    Installation
    Note, the IP Address shown here. You will access the Web-Based GUI using this IP address later. By default, FreePBX is set to DHCP. You can configure this to a Static IP Address via the Web GUI.

ACTIVATION

To fully utilize FreePBX, you will need to activate your FreePBX Deployment. This is required to get full access to required settings, features and module updates. Our recommended method is via the Web GUI.

  1. On a separate PC connected to the same LAN as your FreePBX deployment, open a web browser and enter the IP address noted above. This will open the FreePBX Web GUI. You will be required to set your username and password.
    Activation

  2. After entering the required credentials, click “Setup System”. This will load this page. Click “FreePBX Administration”.
    Activation
    You will be requested to select the languages for the system and sound prompts. Adjust as needed and click “Submit”.
    Activation

  3. You will now see the Web GUI Dashboard page.
    Activation
    To activate the deployment, go to “Admin” > “System Admin”. This will load the Activation Menu. On this page click “Activation”
    Activation
    Select the “New Activation” tab and click “Activate.”
    Activation

UPDATES

Before we add SIP endpoints for our TOA equipment, it is critical to update the main system and the individual modules to the latest stable versions. Here we will show how to update via the Web GUI.

System Updates

To update the main system, perform the following steps.

  1. Click “Admin” > “Updates”.
  2. Click the “System Updates” tab and click “Check Online”. This will search the online repository for available updates. If they are available, click “Update System” to begin the updates. Upon completion of the updates click the red “Apply Config” button on the top right of the screen to apply the update.
    Updates

Module Updates

To update the modules, perform the following steps.

  1. Click “Admin” > “Updates”.

  2. Click the “Module Updates” tab. Click “Check Online” to check available updates.
    Updates
    This will show modules that have available updates.
    Updates

  3. Check the “Show only upgradable” check box.
    Updates
    Select the updates that do not have dependencies then click “Process”. After this is done, the red “Apply Config” button will show again on the top right. Click this and wait till it refreshes the system. This will reload the available updates page again.
    Updates

  4. Repeat step #3 several times until all updates are installed. This method ensures that primary modules (modules that have other modules dependent on them) are installed prior to dependent modules.

Network Setup

It is important to set a static IP for the FreePBX Deployment. Set as follows.

  1. On the Web GUI, click “Admin” > “System Admin”. On the “System Admin” Page click the “Network” Tab.
    Network Setup 

  2. Select the Network Interface you wish to configure. If you have one network adapter, this will usually be “eth0”. On the IP Assignment click “Static” and then provide the Static IP you wish to use, the Subnet Mask, and Gateway. Select “Yes” on the “Start Automatically” field. Click “Save Settings”. Then click the red “Apply Config” button on the top right of the page.

  3. Reboot the system by going to the “Power Options” tab on the “System Admin” Page and click “Reboot”.

SIP PROVISIONING

We are now ready to provision SIP extensions for your TOA IP-A1 or N-SP80 devices. But before this, we must make sure that we use the same codec as our endpoint devices.

SIP Codec

SIP Codec used between devices must be the same. TOA IP-A1 and N-SP80 devices by default use the G722 Codec for SIP and Multicast RTP broadcast. We recommend setting FreePBX Deployment to also use this Codec.

  1. On the Web GUI click “Settings” > “Asterisk SIP Settings”. This will load the SIP settings Page.
    SIP Codec

  2. Scroll down to the “Audio Codecs” Section and check G722 and move it up the priority as shown below.
    SIP Codec

Creating Extensions for Endpoint Devices

We are now ready to provide extensions for devices. To provision extensions for the IP-A1 and N-SP80 Series products, proceed as follows.

  1. On the Web GUI click “Applications” > “Extensions”. This will open the extensions page.
    Creating Extensions for Endpoint Devices
    Click “Add Extension” and on the dropdown menu select “Add New SIP (chan _ pjsip) Extension”. This will add a PJSIP type extension to our PBX. We recommend PJSIP because it is faster and more stable than the legacy SIP implementation in FreePBX.

  2. On the Add PJSIP Extension Page set as follows.
    ADD EXTENSION:
    • User Extension:
    This is the extension number dialed when calling this user.
    • Display Name:
    This is the name displayed in the FreePBX menus, logs, and utilities.
    • Outbound CID:
    This is the caller ID displayed when this extension calls another user.
    • Emergency CID:
    This is the caller ID displayed when this extension does an emergency call via a trunk line.
    • Secret:
    This is the “password” used to provision the endpoint device for registering.
    LANGUAGE:
    • Language Code:
    Sets the language used.
    USER MANAGER SETTINGS:
    • Select User Directory:
    Sets directory where this user is stored. This is useful if you have multiple independent departments.
    • Link to a Default User:
    Links this extension to a User created on the User Module. Useful if this extension is to be tied to a particular individual, department, etc. For our purposes, we will leave this as Create New User. This will automatically create a corresponding new user that has the same Display Name unless specified otherwise in the Username tab below.
    • Username:
    If this checkbox is checked, it will allow you to customize the username and password if you select Create New User in the Link to Default User dropdown menu.
    • Password for New User:
    Sets the custom password for this new user that is different than what is specified in the Secret field.
    • Groups:
    Specify the groups that this user is associated with.
    Creating Extensions for Endpoint Devices
    After filling out the respective fields, click “Submit” and then the red “Apply Config” button on the top right.

  3. Click the “Advanced” Tab and scroll down to “Device Settings” Section. On the “SIP DTMF Signaling” Field, make sure that RFC2833 is selected then click “Submit”. TOA IP-A1 and N-SP80 series products use RFC2833 for DTMF signaling. It is an out-of-band protocol that is more robust than In-band methods. Failure to verify or set this up might lead to unwanted behavior such as phones not hanging up properly, paging zone selections not working, etc.
    Creating Extensions for Endpoint Devices

  4. On the top right of the page, click the red “Apply Config” button to apply the changes.

Endpoint Device Provisioning

You are now ready to provision the endpoint device. Please consult the manual for the respective product on how to set and register the device. The general procedure is outlined below:

  1. On the Username enter the “User Extension” as provisioned above.
  2. For the Password, enter the “Secret” as provisioned above.
  3. Specify the SIP Server IP as the FreePBX Static IP and set the port to 5060 (default PJSIP Port).
  4. Click save and reboot the device as needed. The endpoint device should successfully register with the server upon reboot.

PAGING AND INTERCOM MODULE

The FreePBX Distro contains a paging and intercom module that allows simultaneous paging broadcast to several endpoint devices. However, there are important details that should be discussed regarding this module.

Paging And Intercom Module

Versions of the Paging and Intercom Module

The Paging and Intercom module comes in two forms. First, there is the free version that comes with the FreePBX Distro installation. There is also a commercial version called “Paging Pro” that is unlocked by purchasing a license online at https://www.freepbx.org/add-on/paging-pro/

This commercial unlocks a different set of features on the Paging and Intercom Module. We will discuss this in more detail. Outlined below are the sections of the Paging and Intercom Module that are free, and the section unlocked upon purchase of the license.

Paging And Intercom Module

Free Version: SIP-Based Paging

The free Paging and Intercom Module that comes with your FreePBX Distro works via SIP. It accomplishes Paging by initiating individual SIP calls to selected SIP endpoints selected on the Device List field. These calls can be set to unidirectional (i.e., the endpoint cannot talk back, they just receive). The endpoints are then “forced” to answer the SIP calls so that the broadcast can pass through.

The procedure of creating and adding a paging group this way is as follows.

  1. Go to the Paging and Intercom by clicking “Applications” > “Paging and Intercom”. On the “Paging and Intercom” Page click “Add Page Group.
    Paging And Intercom Module

  2. On the “Page Group” page, specify the paging extension number on the “Paging Extension” field. This is the extension called to initiate a page to this group. You can then select the devices you wish to add to this group on the “Device List” field.
    Paging And Intercom Module

Limitation of the Free Version

This way of accomplishing paging broadcasting is sufficient for a certain number of recipients. However, this begins to put an extensive load on the FreePBX hardware the more devices are added since it must individually send data to each device. By default, the module caps this at 50 units max in the device list. This way of handling paging also adds a substantial load on the Network because it must handle individual unicast traffic. As a result, this feature is not feasible as a paging solution for medium to large SIP systems. You will start to run into networking and other technical issues the more you increase the Device List size. Some issues noted include network timeouts, devices not hanging up, devices not answering at all, etc. The designers of this module knew this and implemented a better solution for Broadcast Paging via RTP Multicast.

Commercial Version: RTP Multicast

By purchasing the Page Pro license, you will unlock the capability to use Multicast RTP on FreePBX. Multicast resolves all the issues noted above by directing the paging broadcast to a prescribed multicast IP. The endpoint devices are then configured to “listen” to this multicast channel. The network then takes care of automatically delivering the network packets to the endpoint devices that are set to “listen” to the multicast IP.

In FreePBX, you can set the system to broadcast to multiple multicast channels. However, we discourage integrators from doing this. The best practice is to have one multicast channel corresponding to one broadcast zone.

Linux Network Configurations for Multicast

In Linux systems, for your network card to be able to broadcast to a multicast IP, that specific multicast IP address must be added to the network card routing table. Failure to add the multicast IP address to your Linux routing table will result in that network adaptor NOT BROADCASTING at all to the multicast channel.

To check if your network adapter is configured to broadcast to the required multicast IP address, enter the following command line on the Linux terminal of your FreePBX deployment:

ip route -n

To add a multicast address to the routing table, execute the following command.

ip route add [Multicast Address] dev [network adapter name]

For example:

ip route add 239.239.14.1 dev eth0

Every single multicast broadcast address that is used must be added to the routing table. Otherwise, RTP broadcasting to that multicast channel will not work.

An Important Warning

During our testing, we noted a behavior in FreePBX where adjusting and saving a change to the network settings via the Web GUI will reset the network card’s routing table. As a result, this resets the routing table to its default after a reboot of the system. To account for this behavior, we recommend doing the following.

  1. Create a bash script containing all the commands for adding all multicast IP addresses used to the routing table. For example, if you use and broadcast to multicast address 239.239.14.1 and 239.239.14.10 you will have to create a bash script containing the following commands.
    ip route add 239.239.14.1 dev eth0
    ip route add 239.239.14.14 dev eth0

  2. Enter the following command on the Linux Terminal. This will set it so that the bash script created will run on startup.
    chmod +x [File Directory] For example, if this bash script, named rc.local, is in the /etc/rc.d/ directory you will have to enter this on the Linux command line.
    chmod +x /etc/rc.d/rc. local By creating a bash script and running it at startup, we ensure that the multicast addresses are always added to the network routing table of your adapter. For more reference on creating bash scripts please refer to online tutorials on creating and enabling bash scripts on startup.

Adding the Multicast Channel for Broadcasting

We are now ready to configure the multicast channels for broadcasting. The procedure is as follows.

  1. Perform the same procedure as done in the SIP Paging section above. However, this time DO NOT ADD ANY DEVICES ON THE DEVICE LIST.

  2. On the RTP multicast field of the “Page Group” page, enter the multicast address and the associated port used in the following format.
    [Multicast Address]:[Port] For example:
    239.239.14.1:42000
    Adding the Multicast Channel for Broadcasting

  3. Click “Add Address” then “Submit”.

  4. Finally, click the red “Apply Config” button on the top right.
    This adds the multicast address to the paging extension. Now, you can call this extension to initiate a multicast paging broadcast to all endpoint devices listening to this multicast address. For information on how to set individual IP-A1 and N-SP80 devices for multicast listening, refer to the respective device manuals.

Customer Support

TOA Corporation
www.toacanada.com
sales@toacanada.com

Logo

References

Read User Manual Online (PDF format)

Read User Manual Online (PDF format)  >>

Download This Manual (PDF format)

Download this manual  >>

Related Manuals