Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Download the WinSCP installer from the official website at the link
Install the program
After installation, the main menu of the program will open
Host Name (or IP address) — MikoPBX IP address Port — the default port for SSH connection is 22 User name — always specify root Password — SSH password of your MikoPBX
Before connecting, you need to allow password authorization in the MikoPBX web interface, as well as set a password for connection: to do this, go to "General Settings" -> "SSH"
To connect, click "Login"
After successful connection, the MikoPBX root folder will open for you
There are cases when a customer can be heard very quietly during a phone call and there is no way to increase the volume level on the telephone /softphone. Let's describe a way that can help in solving the problem:
Go to "System" -> "System file customization"
Open modules.conf for editing
Add to the end of the file
Save the changes
Open the extensions.conf file for editing
Add the following code to the end of the file:
Save the changes.
Open the features.conf file for editing
Add the following code to the end of the file:
Save the changes
The default volume will be higher, the value is 5 instead of 0. If desired, the employee can dial #1 to increase the volume or #0 to decrease
tcpdump is a Linux utility for capturing and analyzing network traffic. It allows you to monitor packets passing through a network interface in real time and save them for further analysis.
Connect to your PBX via SSH (instructions here).
Run the following command:
Reproduce the issue by making a phone call. After the call, press CTRL + C in the SSH console to stop tcpdump.
Connect to the PBX using WinSCP (instructions here).
Send the log file /tmp/capturefilename.pcap to technical support.
Jitter configuration is usually required when there are significant issues with RTP traffic transmission, such as delayed voice, dropped audio, or the inability to hear the other party.
It is best to investigate the root cause by analyzing call dumps on the PBX, router, or upstream router. Compare the data and observe where the jitter increases.
There is this article on sound problems.
However, in some cases, you may not be able to influence the quality of the communication channel. If the audio stream delay becomes too large, Asterisk will discard "late" packets. Increasing the Jitter value can solve this issue.
In MikoPBX, jitter can only be configured through system files customisation.
modules.conf - Add the following line:
extensions.conf - You can add custom contexts for the provider:
For internal (outgoing):
For internal (incoming):
For incoming calls:
For outgoing calls:
Sngrep is a command-line tool for capturing and analyzing SIP traffic. It allows you to visualize SIP sessions, filter them, and track issues in voice connections.
Use this application to analyze logs and send them to technical support.
To start working with the application, follow the SSH connection to the PBX guide.
To start the application, use the command:
If multiple network interfaces are used, specify the interface ID when launching the application:
The -r key allows capturing audio traffic.
You can view the list of interfaces using the following command:
Example of Sngrep Interface:
The application window displays a list of all SIP dialogues:
Use the ⇑ and ⇓ arrows to navigate between dialogues.
Press Enter to view detailed information about a dialogue.
In the detailed view, you can examine specific SIP packets by selecting them with ⇑ and ⇓.
Press Enter to view the contents of a SIP packet.
Press ESC to return to the previous window.
Use the Space key to select multiple SIP dialogues and press Enter to view them in one window.
In the detailed view, use the Space key to select two SIP packets for comparison.
Use the Space key to select the SIP dialogue "Call" of interest.
Press F2 to open the save dump dialogue:
Use the ⇑ and ⇓ arrows to navigate between form fields.
Enter the path and file name.
Select the save action and press ENTER.
Download the file using SSH connection to the PBX with WinSCP.
Press F7 to open the filter dialogue:
Use the ⇑ and ⇓ arrows to navigate between form fields.
Use the Space key to select SIP methods for analysis.
Select the Filter action and press ENTER.
In the development of MikoPBX, we strive to make features as simple as possible so that even a beginner can quickly start using the system.
However, some issues can significantly complicate life for an unprepared user. One of these issues is poor call quality, such as one-way audio. In this article, I'll outline an approach to analyzing audio problems.
This is likely the first thing to check. MikoPBX allows you to connect a wide variety of SIP / IAX devices (endpoints), such as:
Hardware SIP phone
Analog phone (via a SIP gateway)
Provider account, where the "endpoint" could be either physical hardware or an application (such as Asterisk)
Devices attempt to "negotiate" a session by exchanging information about supported codecs (media formats), such as gsm / ulaw / alaw, etc.
If the devices cannot find a common codec, the call will likely drop, and the logs will show an error indicating that no compatible codec was found.
In MikoPBX, codecs are configured in the "General Settings" - "Audio/Video Codecs" section (see wiki). The most common codec in Russia is alaw. For working with webRTC, you should enable the opus codec.
Incorrectly configured network settings are the most common problem.
Typical Example
At a company, there may be several local subnets:
172.16.32.0/24 - Office
172.16.33.0/24 - VPN
172.16.34.0/24 - Other
There is an external IP address 109.61.231.230. Employees need to connect to the PBX from the following subnets:
Office
VPN
Directly from the internet (LTE) for mobile employees
For external employees to connect, you will need:
A public, static IP address - purchased from the internet service provider.
In the network interface settings, specify the external PBX address (see wiki).
Map the external SIP and RTP ports on the router (see wiki) to the corresponding PBX ports (one-to-one). For example, if the PBX uses SIP port 5060 and RTP ports from 10000 to 20000, these ports should be opened on the router as well.
In the firewall, all local subnets must be specified. Be sure to check the box "This is a local subnet or VPN...". If this box is not checked, the PBX will treat the subnet as external, and SIP messages will use the external PBX address instead of the internal one, causing audio issues.
In PBX versions 2021.4.1+, you can specify a STUN server, which helps correctly determine the external address. From my experience, this is useful for webRTC clients:
Symptoms of incorrect configuration:
One-way audio
No audio in both directions
Inability to make calls
Calls not completing
"SIP ALG" is a Network Address Translation (NAT) helper feature found in most modern routers.
When the router receives a SIP packet with an INVITE, it modifies the IP address in the packet, which can cause communication problems.
If you're not sure how to configure it properly, disable SIP ALG on your router.
There are several problems that can be harder to detect at first glance. In practice, I have encountered the following:
Disk failure for storing data - This can cause improper PBX operation, leading to poor call quality.
Unreliable internet connection - A damaged network cable (surprisingly common) or overloaded network with torrent downloads, etc.
Hardware issues
Here's an example of network traffic analysis for a problematic call:
In the image, you can see "red-yellow dots". These represent "dropped packets" that will not be played back to the client. In this case, increasing the Jitter Buffer value to 800 stabilized the audio and eliminated stuttering.
Although the client "received" all the packets, due to significant delays, they were not played back. This specific problem was related to the use of the Proxmox virtualization system and was resolved by switching the client to a physical server.
When experiencing call quality issues, check the NAT settings.
Ensure that all devices support the selected codecs.
Capture traffic logs and send them to your provider for analysis.
Wireshark is a program for capturing and analyzing network traffic. It provides a user-friendly graphical interface for viewing and closely inspecting packets, making it useful for diagnosing and resolving network issues.
Download Wireshark from this link. Install it with the default settings.
Launch Wireshark. Select the network you will use to analyze traffic by left-clicking on it, then press the blue shark icon to start capturing traffic.
Reproduce the issue by making a test call.
To stop the capture, click on the red stop icon:
Download the program to connect via SSH. This can be done on the official website at the link
Run the downloaded program. The main menu will open for you.
Go to the "Connection" - "Data" section
"Auto-login username" specify root
"Terminal-tipe string" specify xterm-256color
Go to the "Translation" section
«Remote character set» - specify UTF-8
Set the flag «Enable VT100 line drawing even in UTF-8 mode»
Go to the section "Session" - "Logging". Here you can configure saving the output to a file:
Go to the "Session" section
Required data:
Host Name (or IP address) — IP address of the PBX
Port — port for SSH connection by default 22
Enter the session name and save its settings
In the future, use the "Load" action to use the previously saved session
Perform the "Open" action to connect to the PBX and enter the SSH password
Before connecting, you need to allow password authorization in the MikoPBX web interface, as well as set a password for connection: to do this, go to "General Settings" -> "SSH"
After entering the SSH password, the PBX menu will open
To open the console, go to "[9] Console(Shell)"