AdminGuide:Service:Phonebook/en
Return to AdminGuide:Service
Description
The phonebook allows the display of contacts that are in the "Local phonebook" and the "Shared phonebook". The phonebook can be used via the web interface or the CTI client, in this way you can see phonebook contacts and extensions. By logging in with a non-admin user, but associated with an extension, you can have management of a user phonebook, accessible only via the web interface and via the CTI client. Through CTI desktop, you can only make editing and add contacts to the personal phonebook, to add contacts to the shared phonebook, you have to go to the web interface.
Configuration
Local phonebook
The local phonebook is populated by extensions that have a particular configuration: the "Show in local phonebook" parameter is active. In the extension settings there is a way to make the presence of the extension visible in the LDAP phonebook. "Organization" and "Organizational unit" can also be entered in the configuration to have these fields populated within the phonebook. In addition, the extension can have associated e-mail address and mobile number, see the Extensions configuration
N.B. A non-administrator user does not see the mobile number of other extensions because the mobile number is meant to be a reachability number through the Fork2Mobile service and may be personal and not exclusively business.
The non-administrator user displays the phonebook list of extensions in the same way as the administrator user, but has an extra feature: when the mouse hovers over the extension number, “Click2Call” appears. When you click on the contact, the central unit starts a call to the extension and you have 10 seconds to answer. When you answer, the central unit starts a call to the destination number.
You can export the phonebook in the following formats: XLSX, CSV, JSON, and XML.
The shared phonebook is populated by the admin or other users - if delegated - and contains several tabs that can be added manually or imported from EXCEL files.
Through Add New Contact, a contact can be added manually by entering:
- First name
- Last Name
- Organization
- Organizational unit
One or more contact information can be associated with the card: the extension, home, work, cell phone, work cell phone, fax, or e-mail. Each contact number, except e-mail, can be associated with a Speed-Dial, a speed-dial code that the user can type in to initiate a call to a particular number without having to remember it and/or without knowing it.
Thus, the phonebook contains the contact numbers entered, which are not directly callable by the central unit.
- If you want to make the call to an external number, you must prefix the external line commitment prefix ("0").
The user can remove the "0" for external calls or decide to use a different prefix, this is changed in the "general settings" panel, via the dl box "Outgoing call prefix". See General Settings.
- If you want to make a call to an extension, by running the Click2Call - feature for the non-administrator user - the central unit calls the user and then triggers a call to the selected extension. For non-internal numbers, the system calls the user and, when answered, starts a call to the selected number by prefixing "0".
On the CTI client, in the phonebook, the contact details are marked with different icons.
Adding a new card - thus a new contact - is not immediately visible within the CTI client, because the phonebook is updated periodically every 10 minutes.
If you want to force the update due to urgencies, you can log out and then log back in, so the phonebook import is done automatically when the client starts up.
Export and import
The export of the shared phonebook can be done via XLSX, CSV, JSON and XML. Exporting it in EXCEL (XLSX) format is helpful because the downloaded file will be the same one you can use to do a bulk import. On excel, the contact information for a single card is represented on different rows.
The option Phonebook allows you to:
- Replace the current phonebook with the imported one: if this option is not checked, the existing phonebook is integrated with the new one
- Choose whether speed dials in the file include the prefix (of the numbering plan).
If you perform the import by not replacing the current phonebook with the imported one, the warning field highlights the operation with the icon .
Note: If there are contacts in the phonebook that have Speed-Dial, when adding new contacts via import, you must put any Speed-Dial without prefix.
Depending on the export format, the fields vary in nomenclature:
XLSX and CSV | JSON and XML |
---|---|
FirstName | firstName |
lastName | lastName |
organization | organization |
organizationalUnit | organizationalUnit |
contactType | typeString |
contactValue | - |
speedDial | speedDial |
It may be necessary for some non-administrator users to be able to edit the shared phonebook. It is possible through the role mechanism to assign a user permission to make changes to contacts in the shared phonbook. Via the "User and Role Management" panel, in the Role Management panel, press on "Add new role." Priority and description are entered, and in the "Manage Shared phonebook" action, "Write" is checked.
LDAP settings
To reach the LDAP settings panel, click on "Phonebook > LDAP Settings"
You can make use of the phonebook via LDAP clients.
You can make the phonebook available to external LDAP clients: from the phone, via keypad, you can search the central office phonebook. You can also access remote phonebooks exposed by other LDAP servers to make them available to Kalliope users.
LDAP (Lightweight Directory Access Protocol) is a protocol that organizes data in the form of a tree hierarchy. The leaves (object class) of the tree are the objects that contain the attributes (first name, last name, email, phone numbers), so each contact record can be considered a leaf of the LDAP tree.
A lot of information can be held in LDAP, so when defining the leaf type, you have to provide the object class representing what attributes can be obtained from these objects.
The organization of information in the LDAP tree is as follows:
root: dc=root
Subtrees': dc=default (where default is the domain name of the default mono tenant)
Instead, in a multi tenant node, every time a new tenant is created, a new subtree comes up with dc=domain name
For each tenant, there are two subtrees:
- dc=users
- dc=phonebook
The latter contains other subtrees
- dc=extension (contains extension phonebook contacts)
- dc=system (contains the phonebook of system contacts)
When the user logs on to the phonebook, they get visibility of everything under the phonebook subtree of their domain.
In the panel, there are enablers for the two subtrees. In the central unit, there is an LDAP server on which you can enable the publication of contacts separately between the internal and shared phonebooks. On LDAP, exposing contacts from the personal phonebook isn't possible.
System contacts
Configure system contacts unlocks the publication on the dc=system subtree of contacts in the shared phonebook:
- System contacts publication tree: the tree is displayed.
- Enable publication of system contacts: publication of contacts in the shared phonebook is enabled.
- Add prefix for outgoing calls: when the central unit publishes contacts to LDAP, it adds a prefix "0" to all numbers, except those marked as extensions, to make outgoing calls. In this way, the client accessing the phonebook, finds the numbers already ready (including the "0") to be called
Extensions
You can enable the export of the extension directory to LDAP as a global function.
- Extensions publication tree: the tree is displayed.
- Extensions publish enabled: the phonebook of extensions can be found searchable via LDAP.
- Extension prefix strip: standard extension publishing rule that is used in case you want to display extension numbers not with the extension number, but with the full geographic number
- Extension prefix prepend
Saving the configuration populates the LDAP tree with the contents of the system phonebook and extensions. You must authenticate with a user who has the right to see the phonebook to access the LDAP phonebook. An LDAP client can be used to consult it.
LDAP client configuration
- IP address of the server and port
- Base DN: root of the tree that you want to consult
- Login credentials to be specified: username and password of user authorized to read the LDAP tree
Kalliope users, defined within the "User and Role Management" panel, are by default authorized to access LDAP.
So in the credentials to be specified you enter the user via a specific syntax:
cn=user@domain, dc=users, dc=domain, dc=root
Then, automatically, the client will make the connection to LDAP.
N.B. Authentication of users
To gain access via LDAP, users must have a local authentication method; users with domain authentication cannot access LDAP.
The PBX, not knowing the user passwords, could not write the passwords of each user to the phones. Therefore, using personal credentials to access the phonebook is never performed. Within the PBX, there is a default user, phonebook, who has the right to access and edit the shared phonebook; it is a disabled entity by default, but it can be enabled once a password is assigned. Enabling GUI access (to consult the phonebook and make changes from the web) is required; API access is unnecessary.
Once the connection is made, if you look at the dc=extension subtree, you will see that it is empty. It is a domain, but it has no leaves. It is empty because it is not enough to apply the extension publication in the LDAP settings. Still, each extension has a flag that checks whether it should be published to the internal phonebook and/or LDAP phonebook. In the template default extension, the "LDAP publishing mode" must be enabled. There are also ways to make the extension's presence visible on the LDAP phonebook.
- According to LDAP publishing rule: exposes the extension number with a manipulation to convert it to a geographic number.
- Presenting the telephone number below: exposes the extension number with a specified number
- According to the LDAP publication rule applied to the extension below: assigns a dummy extension and the masking specified in the LDAP panel is applied
If the dc=system subtree has leaves, the system contact directory has been correctly populated with all the attributes of the tab.
- givenName
- sn: surname
- cn: common name, is constructed by doing concatenation of first name (givenName) and last name (surname)
- o: organization
- ou: organizion unit
Objects collected and described under an LDAP tree are characterized by a chain of object classes. Each object class has a set of mandatory or optional attributes. If it activates a filter on an object class, an LDAP client that wants to read the phonebook can decide how to perform a search.
XML attribute | GUI attribute | LDAP attribute | Presence |
---|---|---|---|
firstName | Name | givenName | optional |
lastName | Surname | sn | required |
cn | required | ||
organization | Organization | o | optional |
organizationalUnit | Organizational unit | ou | optional |
Home | Home phone | homePhone | optional |
Work | Work phone | telephoneNumber | optional |
Mobile | Mobile phone | mobile | optional |
Work Mobile | Cellulare di lavoro | mobile | optional |
Fax | Fax | facsimileTelephoneNumber | optional |
Extension | Extension | telephoneNumber | optional |
optional |
WARNING: all contacts to be published in LDAP must have at least the last name.
WARNING:
LDAP clients on phones do not always support all object class attributes.
Each phone has a set of attributes it can search and return to the client, via display, only the attributes it supports.
Importing remote phonebooks
The import of remote phonebooks can be reached by clicking on "Phonebook > Import Remote Phonebooks."
This section offers the possibility of importing contacts in LDAP phonebooks into the Kalliope central unit.
A real-time query is not done every time there is a need to consult the phonebook, but a complete import of the contacts in the phonebook is done and entered inside the Kalliope internal database. This import is done periodically.
It is possible to define more than one.
Pressing on "Add a new LDAP remote phonebook" will take you to the remote phonebook creation page.
LDAP server settings
- Host address
- Host port
- Version: V3 / V2 (obsolete)
- RDN: root of the subtree you want to query.
- Authentication enabled
- Username
- Password
Search settings
You can filter only contacts that have as ObjectClass person, organizationalPerson, inetOrgPerson
- Provider type: Generic / estos MetaDirectory
- Include results in (ObjectClass=person)
- Include results in (ObjectClass=organizationalPerson)
- Include results in (ObjectClass=inetOrgPerson)
Access via SSL is not provided.
Metadirectory is software that acts as a phonebook aggregator: it takes data from different sources (LDAP servers, text files, databases), reads it and republishes it in LDAP form to be read by LDAP clients.
- Import enabled
- Import periodicity: repeated every (tot hours)/repeated every day at the
- Incoming call phonebook loopup enabled: contacts in this phonebook are used to set first and last name based on the calling number
- Export to cti enabled: CTI clients receive the contacts in the LDAP phonebook from the central office when importing
- Show in GUI enabled: the client accessing the interface sees the contacts that are on the remote phonebook in the phonebook
- Import contacts as extensions: phone numbers found in the remote phonebook are entered into the local import database as extensions (extensions). When you then go to show them to clients, they will be treated as internal numbers. Any click2call will occur to the exact number, without putting the "0" in.
Import settings
- Enable publishing to local LDAP: if you want to export the contacts that I imported, make them accessible to phones. This function is
helpful for aggregating: this way the central unit presents both the contacts in the shared phonebook and the remote phonebooks.
- Add outbound prefix: as in publishing system contacts, you can add the "0" to contact these numbers as if they were external.
If you check the above option "import contacts as internal," the "0" is omitted because they are reached with the short number.
Contacts in the remote phonebook are visible in the shared phonebook to the administrator; non-administrator users can only see them in the shared phonebook if the "Enable display in GUI" flag is present. With each incoming call, the central unit consults whether the calling number is in a phonebook. If so, it goes to edit the call display name (caller name) to insert the value present in the phonebook and corresponding to that caller number. In the case of direct calls to an extension, the personal phonebook is used as a priority, while for calls to groups or queues, the shared phonebook is used.