3CX v18
| Who is this for? | Required permissions and licenses |
|---|---|
| • Administrators who manage company integrations and have IT access to the 3CX server. | • License required: depending on your plan, check availability in Settings > Integrations. • Administrator rights on your Leexi account. • Self-hosted 3CX server (not hosted by 3CX) running Debian OS. • IT access to your 3CX server. |
How to use it
Estimated time: 20 minutes.
Enable call recording
Go to the 3CX admin console, under Users.

For each user, select the Record all calls option, then save by clicking OK.

Configure remote archiving
Under Reporting → Recordings → Settings.

If remote archiving of recordings is enabled (see the 3CX documentation), make sure the "Archive recordings schedule" is not set to "Immediately - Right after call ends". Select "Daily" instead.
If the "Temporary Recording Location" has been changed from the default value (/var/lib/3cxpbx/Instance1/Data/Recordings), copy the new value: you will need it when activating the integration.
Enable call logs (CDR)
In the 3CX admin console, go to Reporting → CDR and select Generate CDR, with the Separate files for each call option.

Under Configure CDR Output fields, check that the first 9 fields are the following, in the same order (default configuration).

Create a user with SSH access
Leexi's 3CX integration requires SSH access to your server to retrieve call recordings and CDR files. The user Leexi will use to access your server must have read access to your 3CX server's data folder and its contents (typically /var/lib/3cxpbx/Instance1/Data/).
In Leexi, go to Settings > Integrations > 3CX, click Add and copy the public key.

Then log in to your PBX server, create a user (suggested name: "leexi") and add the public key to the authorized SSH keys. On Debian, run:
sudo useradd -m leexi -s /bin/bash
sudo passwd leexi
# set password
# Add leexi to the phonesystem group to ensure it has access to the necessary files
sudo usermod -aG phonesystem leexi
su leexi
# enter password
mkdir ~/.ssh/
vim ~/.ssh/authorized_keys
# paste the public key and save (:wq)
chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys
Adjust firewall rules
Open a port (22 by default) and add the following IP addresses to the allowlist: 13.39.26.202, 15.188.160.114 and 15.236.114.242.
Enable the integration
In Leexi, fill in the host (fixed IP or DNS), the port and the username in the 3CX integration, then click Save. Activation fails if Leexi cannot connect to your server with the information provided.
Match users to extensions
Once the 3CX integration is enabled, Leexi retrieves all extensions for which at least one call has been recorded since CDR logs were enabled. These extensions must be matched to the corresponding Leexi user. An extension only appears in the list if it has at least one recent call.
Go to Settings > Integrations > 3CX, click Manage, match Leexi users to their extension, then Save.

Your next 3CX calls will appear in Leexi!
Frequently asked questions
Things to watch out for
- Internal calls (between different 3CX users) are not imported into Leexi.
- The recording archiving schedule must not be set to "Immediately - Right after call ends": choose "Daily".
- An extension only appears in the matching list if at least one recent call has been recorded with it.