GETTING STARTED WITH YOUR ELASTIX OR XORCOM CHANNEL BANK
So you have purchased a new Elastix or Xorcom channel bank and don't know where to start. This guide will quickly get you up to speed on what you need to know.
We will show you how to configure an FXS port in your channel bank to start making calls with an analog phone. Then, you could extend the concept to configuring T1/E1 or FXO porrts. For this tutorial you will need a server running at least Elastix version 1.6-12 aside from the channel bank unit.
CONNECTING YOUR CHANNEL BANK
It does not get any easier than this. Simply connect the channel bank's rear USB port labeled "MAIN" to any USB port in your Elastix server with the USB cable provided.
In order to make sure everything is connected correctly, simply execute the "lsusb" command in your Elastix server (via ssh or console). In the following picture you can see the results of this command before and after plugging in the channel bank to the Elastix server.
In the latter result, you will notice an entry such as:
Bus 001 Device 004: ID e4e4:1162
Make a note of the Bus and Device numbers for the device with ID "e4e4:1162". In the above example, Bus = 001 and Device = 004.
Next, we will find out what kind of channel bank we have connected to our Elastix server. We do this using the command as follows:
# astribank_allow -D /proc/bus/usb/[Bus]/[Device]
In our case, this is how this command will look:
From the output of the command you can see we have a channel bank with 24 FXS ports.
CHANNEL BANK CONFIGURATION
We have already connected everything up. Now we need to make sure Elastix (and Asterisk) recognizes it. For this, we head over to the System -> Hardware Detection tab of the Elastix interface. Currently, we only see a Sangoma B600D (4 FXO, 1 FXS) card detected but no signs of the channel bank. See below.
We know have to click on the "Detect New Hardware" button.
The following is the result:
As you can see, we now have detected all 24 FXS ports of the channel bank. In fact, we have detected 30 ports! Notice that three port modules (8 FXS ports each) are detected. However, the first one has 2 extra "Output" ports and 4 extra "Input" ports. These ports are used to activate door openers or to trigger alarms through the channel bank. We will take a look at these ports in a future How-To.
We are now ready to create extensions for the channel bank's ports and test it out.
We now head over to the PBX -> PBX Configuration tab of the Elastix interface. You will notice from the picture below that we have a few extensions created. Extension 218 is a SIP extension registered to our Elastix system. We will proceed and create a new extension called 217 that corresponds to an analog phone connected to the first FXS port of our channel bank.
In order to do this, click on "Add Extension" and select "Generic ZAP Device" as your Device.
Make sure to fill the "User Extension" and "Display Name". The most important part is to fill in the "channel" number under "Device Options".
We will enter "25" for the first FXS port in the channel bank (See output of the Hardware Detection above for the right port number) in the "channel" field. We have connected our analog phone into this port.
Make sure you do an "asterisk -rx reload" on your console in order to continue.
Per the picture below you see that once you connect the analog phone, the channel bank port will light up red.
All we have left to do is to try out calling between our extensions (we don't have a trunk connected so we will limit ourselves to making calls between extensions). Pick up the analog phone (you will see a green light go off on the channel bank port) and you will hear a dial tone. Then, dial 218 and the suitable extension should ring and complete the call. You can also try dialing from 218 to the analog extension 217 with the same results.
If you do not hear a dial tone please make sure you first have your channel bank ports show up as the following picture when doing a "lsdahdi" command.
If the ports say something such as RED or NOTOPEN, something is wrong with dahdi. Do an "asterisk -rx reload".
And yes, it's that easy!
If you have trouble, your first check should be if you are using Elastix 1.6-12 or above.