For the purpose of this discussion, we will be referencing the below diagram:
inbound call scenario
There are mainly 3 reasons why inbound calls fail:
- Inbound call was not detected on the Sangoma card/port
- Configuration issue
- Dialplan issue
Inbound call was not detected on the Sangoma card/port
The first step to troubleshooting why an inbound call is not working is to verify that the call was detected on the Sangoma card, from the analog line.
To do this, use the wanpipemon utility that is inside the Sangoma Driver (Wanpipe).
Run the following wanpipemon command on your Linux command line:
wanpipemon -i w1g1 -c astats -m X
Change X to the channel the inbound call is coming on. This should be done on an FXO channel/line. Remember that there are 2 channels per physical port on the Sangoma card.
w1g1 is used to specify the entire analog card, assuming there is only one Sangoma card in your system. If you have more than one Sangoma card in your system, change w1g1 to wXg1 (where X is the card number as )
To watch the voltage live, while you are making your inbound call attempt, run the same command above but with the watch command:
watch -n 1 wanpipemon -i w1g1 -c astats -m X
Change X to the channel number in question, same analogy as above description of wanpipemon command.
- Below is a sample output of the above command when the line is idle and ready for an inbound call:
- When an inbound call is coming into the line, the line will be ringing. Ring voltage should show fluctuation where it says VOLTAGE: in the above diagram.
If you do not see the 'VOLTAGE:' change that means the call is not coming into the line. So you should check with the telco if that is your case (after verifying that you are checking the voltage on the correct port/line)
- If the inbound call is connected, the 'VOLTAGE:' should be 7 Volts, similar to the picture below:
- If you see the following picture when you run the wanpipemon command, then this means there is no line physically connected to the back of the Sangoma card.
If you do see the correct voltage activity when running the above wanpipemon commands then proceed to the next section, troubleshooting configuration.
Verify that Asterisk is able to detect all your Sangoma channels and signaling:
Inside your Asterisk CLI type the following command to display all your dahdi/Sangoma channels:
dahdi show channels
You should see something similar to the below (disregard the quantity of channels as your setup may have more/less channels)
If you do not see any channels listed after typing the command, then your issue is that your channels are not loaded into asterisk. To resolve this:
- restart asterisk, or
- re-configure your Sangoma card by typing the Sangoma configuration script 'wancfg_dahdi' from the Linux command line
If you log into the Asterisk command line and you see traffic or information flow through the screen when you attempt an inbound call, this means the call was successfully passed through your server, and that the issue is dialplan or SIP endpoint issue.
To log into the asterisk cli, simply type the following command on the Linux command line:
It would be a good approach to change the dialplan to something simple that plays back and audio file when calling in.
This way you can verify if the call is able to reach the dialplan and process again.
To do this:
- open your dialplan file: /etc/asterisk/extensions.conf
At the very top of the file copy and paste the below three strings (change the specific variables that are necessary for your setup)
[ inbound-context ]
exten => s,1, answer()
exten => s,n, playback demo-congrats()
exten => s,n, hangup()
change inbound-context to the context used in your system.
To find the correct context, open up /etc/asterisk/chan_dahdi.conf (or /etc/asterisk/dahdi-channels.conf for FreePBX distro/Elastix), and look for the name beside the word 'context'.
Below is a picture of the what is meant.
Save the dialplan now and reload the asterisk dialplan by typing the following inside the Asterisk CLI:
- Make your inbound call attempt. Do you hear a greeting (the demo-congrats file)? If you do, this means the entire issue for your inbound calling was due to a misconfiguration of your dialplan, or your sip endpoints. You may now remove the text dialplan (what was added above) and proceed to resolve your dialplan/sip end point configuration.
- If you do not hear a greeting, the will want to contact sangoma support directly at support.sangoma.com