3CX Office 365 Integration

Office 365 Integration

Introduction

3CX Phone System provides out of the box integration with Office 365 accounts for syncing:

  • Office 365 users to 3CX extensions.
  • Users’ personal contacts from Office 365 to 3CX phone books.
  • 3CX users’ status based on their Office 365 calendar.

To launch outbound calls from the Office 365 interface, you can use the 3CX Click to Call browser extension for Chrome and Firefox or the 3CX app for Windows “Hot Keys” feature.

System Requirements

  • 3CX v16 PRO or higher.
  • An Office 365 plan and user login credentials with “Global Administrator” privileges.
  • These plans have limited or no integration capability with 3CX:
  • Office 365 Plans that do not have user management, i.e. home plans.
  • Plans that do not include Exchange cannot be used for Contact and Calendar Sync, i.e. Office 365 Business and Office 365 Pro Plus.
  • Connectivity of 3CX host with the Office 365 service is required, for Office 365 changes to be broadcasted in near real-time to 3CX.
  • When connectivity is not ensured, 3CX still performs an off-hours daily synchronization.
  • The sync mechanism is one-way, from your Office 365 account to 3CX.
  • Office 365 users need to have the “UserType” attribute set as “Member” in AD (Active Directory) to be synced.
  • Deleted or updated Office 365 synced users via the 3CX Management Console, revert to the prior state upon the next ad-hoc or off-hours sync interval.

Step 1: Configure App ID and Platform

Configure App ID and Platform for Office 365 Integration

The first step to configure the Office 365 integration in 3CX v16, involves creating a unique app under your account to provide access to 3CX for syncing:

  1. Log in to your 3CX Management Console and go to “Settings” > “Office 365” > “Configure” tab > “Step 3.” section and copy the “Redirect URL”.
  2. Go to the Microsoft Azure App Registrations page using your Office 365 Global Administrator account.
  3. Click on the “New registration” button and:
  1. Enter a name for your application in “Name”, e.g. “3CX PBX Office 365 Sync App”.
  2. Leave the default option “Accounts in this organizational directory only” in the “Supported account types” section.
  3. In the “Redirect URI” section, set the type as “Web” and paste the “Redirect URL” from “Settings” > “Office 365 Integration” > “Configure” tab > “Step 3.” section, e.g. 
    https://my-pbx.kom:5001/oauth2office2
  4. Click “Register” to create your app.

App Overview for Office 365 Integration

  1. In the app Overview” page, copy the “Application (client) ID”, switch to your 3CX Management Console and paste into the corresponding field in “Settings” > “Office 365 Integration” > “Configure” tab.

Step 2. Generate Key Pair

Now, you need to establish a public key trust relationship between your 3CX v16 install and the app you created, for 3CX to securely access your Office 365 account:

Generate new key pair for Office 365 Integration in 3CX Management Console.

  1. On “Settings” > “Office 365 Integration” > “Configure” tab, click on the “Generate New Key Pair” button and save the new 
    public_key.pem

     file on your PC.

  2. Switch to your app’s Overview page and go to the “Certificates & secrets” page.

Upload key pair for 3CX integration with Office 365.

  1. Click on “Upload certificate”, browse to select and upload the generated file 
    public_key.pem

    .

  2. Click to “Add” the uploaded certificate.

Step 3. App Permissions

Set App Permissions for Office 365 Integration

In the final step, you need to set the app’s permissions on the “API permissions” page, for 3CX to access your Office 365 account data:

  1. Click on “Add a permission” > “Microsoft Graph” > “Application permissions”.
  2. In the list of permissions in the “Application Permissions” section, click to expand and select these permissions:
  1. “Calendars” > “Calendars.Read”
  2. “Contacts” > “Contacts.Read”
  3. “Directory” > “Directory.Read.All”
  1. Click on “Add permissions” to set the app permissions.
  2. Wait for ~1 minute for the app and Office 365 changes to become available.
  3. Switch to your 3CX Management Console and click on the “Sign in to Office 365” button and accept the requested permissions for the app you created to connect your 3CX Phone System to your Office 365 account.

Built-in Functionality

Available Built-in Sync Functionalities for Office 365 Integration

The sync functions of the Office 365 integration module are controlled through the “Settings” > “Office 365 Integration” tabs:

  • “User Sync” – Office 365 users are synced to 3CX extensions, grouped as “Azure AD” in the 3CX Management Console “Groups” function.
  • “Contact Sync” – Office 365 users’ personal contacts are synced to their 3CX phonebook. Users can use the “Contacts” view on any of the 3CX apps to browse their synced contacts.
  • “Calendar Sync” – automatically update 3CX users’ status based on the “Show As” status in their Office 365 calendar entries:
  • “Busy” or “Working Elsewhere” switches to “Do Not Disturb”.
  • “Out of office” or “Away” switches to “Away”.
  • “Business Trip” status in 3CX overrides the synced status.
  • Users can override their synced status by setting a new status in their 3CX app.
  • At the specified end time for your Office 365 calendar entry, 3CX switches your profile back to the previous status.
All of the module’s sync functions can apply to all Office 365 users, all except for specific users, or only specific users.

Launching Calls from Office 365

You can launch outbound calls directly from Office 365 using:

  • The “Hot Keys” feature in 3CX app for Windows. Once the hotkey dialing has been configured, you can just select the phone number, press the hotkey to transfer the number in your 3CX app for Windows dial pad screen and click “Call” to launch the call.
  • The 3CX Click to Call browser extension for Chrome and Firefox, to enable you to dial phone numbers directly from your browser with a simple click of the mouse. Numbers are automatically transferred to the 3CX Web Client to make the call, eliminating the need for copy and paste.

Was this article helpful?

Related Articles

Leave A Comment?