The Phonebook / Directory Service
On this topic
3CX includes a phonebook to manage both company and personal contacts. It is possible to import contacts to the phonebook, or one can link the phonebook to an external data source such as Exchange, LDAP or an ODBC database.
Besides allowing easy dialing of contacts, the phonebook allows you to match incoming calls to customer names so that callers are shown with their customer name, rather than their caller ID.
The phonebook is available from the 3CX client and also synchronized across the IP phones.
Import & Export of Phonebook entries
You can import phonebook entries from a CSV file. Each entry should be on a new line, and the fields separated by a comma as follows:
“First name, Last name, Company, Mobile, Mobile2, Home, Home2, etc”
You can download a Sample Phonebook .csv and populate it with your phonebook entries. To import the company phonebook entries into 3CX Phone System:
- Log into the 3CX Management Console and click on the “Contacts” node.
- Select “Import” or “Export.”
- Browse to your saved CSV file, select it and click “Open.”
- Your Company Phonebook entries will be imported into 3CX.
A maximum of 1000 records can be imported per CSV file.
Caller ID to Customer matching
In the Phonebook “Contact Options” dialog you can configure options relating to caller ID to contact matching:
- Specify whether caller ID should match exactly or a minimum number of digits. By default 3CX will match at least 6 numbers to a phonebook entry before it considers the number a match.
- Specify how caller ID should be shown on your IP Phone.
- Specify if and where the caller name should be added.
Synchronising with Exchange Server (PRO)
The 3CX Company Directory Service connects the 3CX Phonebook with Microsoft Exchange Server 2013 SP1, 2016 and Office 365 (with Exchange) to import Exchange contacts to either the company or the personal phonebook. You can select a public folder of contacts to synchronize or personal contacts.
3CX will connect to Microsoft Exchange Server via an “Impersonated User Account” and import all the contacts from Exchange. After this first import, the connector will login to the Exchange Server once per day at 4 am and check if there are any new contacts, any updates to existing contacts and whether any contacts have been deleted.
IMPORTANT: 3CX syncs the contacts in one direction: from Exchange to 3CX. If you want to make changes, then you need to make them at Exchange level. 3CX Phone System will not allow you to edit an imported contact.
Configuring the Exchange Connector (MS Exchange Sync)
In order to configure 3CX Phone System to synchronize with Microsoft Exchange you will first need to “Create an Impersonated Microsoft Exchange User Account.” Follow this guide and proceed with steps below:
- Log in to your 3CX Management Console, select the “Contacts” node and click on the Office 365 button.
- Fill in the following fields:
- FULL FQDN to OWA of the Microsoft Exchange Server.
Office 365 users will need to use https://outlook.office365.com/owa.
- Insert your impersonated account details in the “Impersonated User Account” and “User Account Password” fields.
- To have the company phonebook populated with contacts from a public folder, enter the path to the public folder for example: Company/Contacts.
- To have a users personal phonebook synchronised with the entries in their personal exchange contact folder, add the user’s email in the emails to sync section.
- Select what shall be synced to 3CX:
- Mailboxes: Select the email address and/or the public folders that you want synchronized from the “Sync Users” and click “Apply”.
- Public Folders: Enter the path to the Public Folder. Use the writing form for a contact as “Company/Contacts” for a contact folder located in the folder Company. Note that Contacts in the root of the Exchange directory (e.g just company) can not be synced.
To check if your Exchange contacts have been synchronized with 3CX go to the “Contacts” screen. Exchange contacts will be marked with “Contact Type” - “Office 365.”
Information on local Exchange Server and Linux based 3CX
If you are planning on synchronizing 3CX to MS Exchange from a Linux based OS, the following additions in the configuration apply:
- Local Exchange Server can not be used when self signed certificate is present by the IIS Web Services. Only publicly trusted certificates are allowed.
- Linux can not be used to work with “Windows Authentication” and therefore the IIS virtual directory for EWS must be changed in the Authentication section as follows:
- Disable: Windows Authentication
- Enable: Basic Authentication
- If other services connect to the EWS service, it is the system administrator's obligation to validate this change and the effect it might has.
Enabling Exchange Calendar Profile Switching
After having successfully configured MS Exchange Sync, you can take advantage of the ability to automatically change your extension status, based on your status in the Outlook calendar (requires Exchange version 2013 SP1, 2016 or Office 365 with Exchange). If you have scheduled appointments where your “Show As” status is set to “Working Elsewhere” or “Away,” then your status in 3CX Phone System will automatically change to the “Do Not Disturb” or “Away” respectively.
To enable this feature, select “Contacts” > “Office 365” and check the “Presence Integration > Set 3CX status to away” checkbox. You can read find a detailed description of this process in How to Use Exchange Calendar Status Synchronization.
Configuring LDAP Directory Search (PRO, Windows Only)
LDAP (Lightweight Directory Access Protocol) Directory Search has the ability to connect to an external LDAP directory server, which must be a Microsoft Active Directory. When an incoming call is received, 3CX will query the LDAP server and look for a contact match. If a match is found, the contact will be automatically added to the 3CX Company Phonebook and the contact information will be displayed for SUBSEQUENT calls made by this caller. The process is not possible for the first call as LDAP is not real time and the query cannot be relied upon to be fast enough not to delay inbound call processing.
To Configure LDAP Directory Search with 3CX Phone System:
- In the 3CX Management Console, click on “Contacts” and then “LDAP.”
- Specify the LDAP server IP address or FQDN and the port number - default is 389.
- Enter the Username and Password.
- Now enter the LDAP search base. In this example we used “OU=User, DC=test, DC=local” which means that the LDAP search will take place in the User contacts container, in the “test.local” domain.
- Now specify the TTL - which is the number of days that these contacts should be kept in the 3CX Phone Book. Default is 1 year.
- When you receive a call, 3CX Phone System will search for a match in the 3CX Company phonebook. If a match is not found, it will contact the LDAP server. If a match is found, it will be automatically added to the 3CX Company Phonebook FOR THE NEXT CALL.
Configuring ODBC Database Search (PRO, Windows Only)
3CX Phone System has an ODBC Search function that allows 3CX Phone System to connect to any data source which can be accessed via an ODBC driver. In this way any database driven ERP or CRM can import contact data from the shared database when an incoming call is received. See our detailed step-by-step configuration guide on How to Setup Company Directory Synchronization - ODBC Search.
- See how to Create an Impersonated Account Microsoft Exchange User Account.
- Find a full guide on How to Use Exchange Calendar Status Synchronization.
- See our user manual on Using the 3CX Phonebook.