Skip to main content
Skip table of contents

Synchronize Users against Active Directory Sources

All the applications included in the Imagicle UCX Suite share the same users list. This list can be edited manually through the web interface, adding users one by one, or automatically, importing the user list from a CSV file. If you have a large number of users, you might want to keep the user list in sync with an external directory.

The Synchronization Service lets you import users from an external source such as Active Directory, MS-Azure or the PBX. Once synchronization is enabled, the service aligns the list of users once a day. When a new user is added to the external source, it is inserted into the UCX Suite users list too. When the properties of a user are updated, the changes are written to UCX Suite users' list. Data transfer is optimized and only the differences are written to the database.

You could also use the synchronization service to import users once, then disable it and manually adjust the list.

Supported operations and matching criteria

The user synchronization service can perform three types of operation:

  • Insert, i.e. adding a new user

  • Update, i.e. changing one or more properties of an existing user

  • Delete, i.e. removing the user from the list

An UCX Suite User is considered to be the same as an Active Directory User when the "Active directory username" field, combined with the "Domain" field value, matches the Active directory account. E.g.

By default users which are deleted from the external source are automatically removed from UCX Suite too. This is the main difference between one-shot importing users from CSV and a synchronization. CSV import does not remove users, while the synchronization does.

If you want to create additional local users, please make sure that Active directory username and Domain fields are left blank, otherwise they are deleted during next synch.

How to enable Users Synchronization

You can access user synchronization through the web interface by selecting "User Management", then clicking the link "Synchronize users with an external data source" on the top of the page.

On the Welcome screen press the "Begin" button. This will enable the service.

Configuring the Data Source

Click the "Configure Data Source" link and select Active Directory from pull-down menu.

Enter a name for the source, e.g. MyCompanyDC, and press the "Add new source" button. The name must be unique, al least three characters long, and must contain no blanks.

Fill the form fields with these values:

  • Server: Active Directory server FQDN or IP address. If you use the FQDN, please make sure the name is resolved by Imagicle UCX instance.

  • LDAP object path: the subtree from which the accounts user will be imported. Basics of LDAP queries can be found on Microsoft web site.

  • LDAP Filter: Optional filter to narrow the imported users. We strongly suggest to apply a filter to avoid importing users without a phone number. I.e.  (telephoneNumber=*)

  • Username: you must enter the credentials of an AD service account, with a password that never expires.

  • Password: tick the checkbox to the right to show or hide the entered password.

Note: If you leave the "LDAP object path" field blank, the "Users" branch is retrieved.

Press "Add" and "Back". When the new source has been added, enable it through the checkbox. Once enabled, the service tests the connection parameters and eventually turns the spot indicator to green.

image-20250130-144330.png

Active Directory Secure Connection

Microsoft has updated security requirements for LDAP connections to Active Directory. After this update, Secure LDAP (LDAPS) has became mandatory for all LDAP connections to Active Directory. LDAP connections to Active Directory do not work unless Secure LDAP is configured.

Imagicle follows above Microsoft statement and Secure LDAP using SSL on port 636 is automatically enabled for both authentication and users' synchronization.

If you are upgrading an existing UCX Suite to Spring 2020 or above, the connection is automatically migrated to Secure LDAP and a test is performed to verify AD server reachability. If reachability is granted, then it means Microsoft statement has been respected. If AD can't be reached, then we just leave the connection as it is.

It is also possible to manually change the LDAP authentication settings:

  • access to Imagicle server via RDP and edit file C:\Program Files (x86)\StonevoiceAS\Apps\Fw\Settings\FW.Profile.Api.config.xml

  • add a new line, or update the existing one, for the preference Authentication.UseSecureLDAPConnection (see below sample)

CODE
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  ...
  <preference key="Authentication.UseSecureLDAPConnection" value="SecureThenUnsecure" />
  <!-- OR -->
  <preference key="Authentication.UseSecureLDAPConnection" value="SecureOnly" />
  <!-- OR -->
  <preference key="Authentication.UseSecureLDAPConnection" value="UnSecureOnly" />
  ...  
</configuration>
  • possible values are:

    • SecureThenUnsecure: authentication is tried to be granted using Secure LDAP (LDAPS), if connection failes, authentication is tried again using unsecure LDAP;

    • SecureOnly: authentication is tried to be granted using ONLY Secure LDAP (LDAPS);

    • UnSecureOnly: authentication is tried to be granted using ONLY unsecure LDAP

Configuring Synchronization Rules

Active Directory does not contain all the information needed to properly fill the Users properties. You have to provide the missing values through the web interface.

From main menu, go to Admin ⇒ Users Management ⇒ Synchronize users with an external data source ⇒ Configure Synch Rules

On the top of this page, select the type of source you want to configure the rules for (Active Directory).

For each field you have the various choices including the following.

  • Only when adding a new user set this value (followed by a textbox): this option applies only to insert operations. You can specify a default value for the field, which you could modify later from the User Management page, since it will not be overwritten if the user already exists.

  • Only when adding a new user set this value (followed by a checkbox): the same as the previous option for boolean fields. Boolean fields can only be set to true (checked) or false (unchecked).

  • Import every time from source: applies both to insert and update operations. You decided to manage this property from the remote data source, so the value will be synchronized at each cycle.

  • Keep existing value: the property will not be synchronized. You'll manage the value from the UCX Suite web interface. When the user is created (insert operation) the field will be set to blank. During next cycles (update operation) the value will remain unchanged.

image-20250130-144439.png
image-20250130-144454.png
image-20250130-144509.png
image-20250130-144525.png

Other options may involve specifying a prefix to be added to another field value. For instance the First extension number may be imported from the Telephone Number or IP Phone or Microsoft SIP URI Active Directory fields.

image-20250130-144609.png

Not all the choices may be available for all the fields. E.g. there is no point in assigning the same default value to a user's personal address.

The Save button saves the changes. The Reload button undoes the changes. The Default button resets to the default values.

Press "Next" or "Back" to continue.

Synchronizing Users against Active Directory - Supported Attributes List

This table list the Active Directory user attributes and shows the UC Suite fields they are mapped to.

  • Active Directory Display Name: label displayed in the Active Directory user interface

  • LDAP Attribute Name: name to be used in LDAP queries, reported for reference but not required to configure UC Suite

  • UC Suite Field: Label displayed in the adapter's rule configuration UC Suite web page

  • UC Suite Database name: this is never displayed to the user

General Tab

Active Directory Display Name

LDAP Attribute Name

UC Suite Label

UCSuite Database name

Example Value

First Name

givenName

First Name

user_nome

John

Initials

initials

-

-

JS

Last Name

sn

Last Name

user_cognome

Smith

Display Name

displayName

-

-

"John, Smith"

Description

description

-

-

Sales Manager

Office

physicalDeliveryOfficeName

-

user_office_location

London Office

Telephone Number

telephoneNumber

First Extension Number*

user_telnum, user_amnum

0123 456 789

Telephone Number (Other)

otherTelephone

-

-

0123 4457 89

Email

mail

Email, "Voicemail Address", "Fax to Email Address", "Single Sign-on Id"

user_mail, user_voicemailaddr, user_pref_fax_mailinaddr, ssoid

JSmith@domain.com

Web Page

wWWHomePage

-

-

www.johnsmith.com

Web Page (Other)

url

-

-

www.John.net,www.John.org

Password

password

-

-

JohnsPass321

Destination OU

destinationOU

-

-

OU=Sales,DC=Domain,DC=Com

Common Name

CN

-

-

John Smith or %lastname% %firstname%

Modify User if already exists

Modify

-

-

True or False

Delete User

Delete

-

-

True or False

Address Tab

Active Directory Display Name

LDAP Attribute Name

UCSuite Label

UCSuite Database name

Example Value

Street

streetAddress

User address

user_address

10 Downing St;London
(Use a semi-colon for carriage return)

PO Box

postOfficeBox

-

-

Po Box 1

City

l (Lowercase L)

-

-

London

State/Province

st

-

-

New York

Zip/Postal Code

postalCode

-

-

20013

Country

c

-

-

GB

Account Tab

Active Directory Display Name

LDAP Attribute Name

UCSuite Label

UCSuite Database name

Example Value

User Logon Name

userPrincipalName

Active Directory username, Domain, Single Sign-on Id***

userPrincipalName, user_ad (without domain), user_domain (without the username), user_authname, ssoid

JSmith@domain.com

User Logon Name (Pre W2K)

sAMAccountName

PBX username

user_ccmname

JSmith

Telephones Tab

Active Directory Display Name

LDAP Attribute Name

UCSuite Label

UCSuite Database name

Example Value

Home

homePhone

Home phone

user_telcasa

123 123 123

Home (Other)

otherHomePhone

-

-

0123 123 123

Pager

pager

-

-

1234

Pager (Other)

otherPager

-

-

123

Mobile

mobile

Mobile business number

user_mobileBusinessNumber

123 456 789

Mobile (Other)

otherMobile

-

-

123 456 789

Fax

facsimileTelephoneNumber

Fax number

user_faxNumber

123 456 789

Fax (Other)

otherFacsimile
TelephoneNumber

-

-

0123 456 789

IP Phone

ipPhone

First Extension Number*

user_telnum, user_amnum

750

IP Phone (Other)

otherIpPhone

-

-

330750

Notes

info

-

-

General information (Use a semi-colon for carriage return)

Organization Tab

Active Directory Display Name

LDAP Attribute Name

UCSuite Label

UCSuite Database name

Example Value

Title

title

-

-

Manager

Department

department

Department

user_department

Sales

Company

company

-

-

Big Corp

Manager

manager

-

-

CN=Ste Jobs,OU=Managers,DC=Domain,DC=Com

Employee ID

employeeID

-

-

Employee Type

employeeType

-

-

Employee Number

employeeNumber

-

-

Car License

carLicense

-

-

Division

division

-

-

Middle Name

middleName

-

-

Room Number

roomNumber

-

-

Assistant

assistant

-

-

CN=Joe Blog,OU=Managers,DC=Domain,DC=Com

User's Picture**

jpegPhoto / thumbnailPhoto

-

Pictures are saved in SQL DB

JPEG pictures supported. Max 200KB size

Recording Group name

  • department

  • company

  • physicalDeliveryOfficeName

Recording Group name

-

Sales

Fax Group username

  • department

  • company

  • physicalDeliveryOfficeName

Fax Group username

-

Sales

*Either telephoneNumber or ipPhone attributes can be imported based on synch rules configuration

** Feature supported from Imagicle 2020.Winter.1 release. Either jpegPhoto or thumbnailPhoto attributes can be imported, based on synch rules configuration

*** Single Sign-On feature, based on SAML or OpenID Connect protocols, is supported from Imagicle 2022.Winter.1 release.

Extension Number Alias Synchronization

This field is by default left empty, If required, you can synch this user's field from the following AD attributes:

  • otherTelephone

  • otherIpPhone

  • telephoneNumber

  • ipPhone

Site Name synchronization

Starting from Imagicle UCX Suite Summer 2021, we can import Site Name from Active Directory or LDAP, to enable overlapping dial plan across multiple gateways or PBXs.

Depending on the users repository source, the Site Name can be synchronized from one of the following attributes (selectable in the synch rules page):

  • Active Directory:

    • department (default)

    • physicalDeliveryOfficeName

    • company

  • LDAP: 

    • departmentNumber (default)

    • o

    • ou

    • l

Users' pictures synchronization

Starting from Imagicle UCX Suite Winter 2020, users' pictures can be synchronized with Active Directory LDAP, to enable two UC Suite features:

  • Viewing the user photo in the 'Colleagues' tab of the Imagicle Attendant Console.

  • Providing a users' picture repository for Cisco Jabber clients. Please see here.

Depending on the users repository source, the picture can be synchronized from one of the following attributes (selectable in the synch rules page):

  • Active Directory:

    • jpegPhoto

    • thumbnailPhoto

  • LDAP: 

    • jpegPhoto

The default maximum picture size is 200 KB, bigger pictures will be discarded. If you need to adjust such size threshold, please contact Imagicle Support.

Pictures are saved in the Imagicle database.

Alarms

The Synchronization service is able to send alarms and warnings should a problem occur during or after synchronization. A brief report is included. The options are pretty self-explanatory. The global SMTP settings are used.

image-20250130-144848.png

Testing user Synchronization

Once the configuration is complete, you can test it live by pressing the "Run now" button.

Warning: the synchronization process can take a long time if you have a large number of users, depending on the data source type.

To setup the daily schedule, use the "Enable Auto mode" checkbox. Set the hour of the day when you want the service to run, and press save the changes. A countdown will tell you the time left to the beginning of the process.

Reports

Every time the synchronization process is completed, a text report is generated. You can download the report through the web interface. Reports older than 15 days will be automatically removed.

If the synchronization operation is successful, the report contains only statistics. If a user is skipped, details are included so you can edit the user in the data source and try again.

image-20250130-144902.png

Should an unexpected error be raised, debug information is included in the report. In this case, please send the file to Imagicle Support.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.