Интеграция 3CX с Office 365 через Azure API

АТС 3CX v16 редакции Pro и Enterprise предлагает полную интеграцию с приложениями Office 365. В частности, реализована:

  • Синхронизация пользователей Office 365 и добавочных номеров (пользователей) 3CX.
  • Синхронизация персональных контактов пользователей Office и персональной адресной книги 3CX.
  • Синхронизация статусов (занятости) календаря пользователя Office 365 и статуса добавочного номера 3CX.   


Для выполнения исходящих вызовов из веб-интерфейса приложений Office, 3CX использует расширение 3CX Click to Call для браузеров Chrome и Firefox. Также можно использовать клавиатурные комбинации в приложении 3CX для Windows.

Для начала работы вам потребуется подписка на Office 3CX и учетные данные администратора портала Office с привилегиями «Global Administrator».

Некоторые подписки Office 365 имеют ограниченную возможность интеграции с 3CX или не имеют ее вовсе:

  • Подписки без управления пользователями, т.е. все «домашние» подписки.
  • Подписки без Exchange не могут синхронизировать контакты и календарь (Office 365 Business и Office 365 Pro Plus).


Серверы Office 365 должны иметь прямое подключение к вашему серверу 3CX для передачи статусов в реальном времени. Если обеспечить постоянное соединение невозможно, 3CX все равно будет выполнять ежедневную синхронизацию.

Обратите внимание, что синхронизация выполняется только в одну сторону — от Office 365 к 3CX. Для успешной синхронизации пользователи Office 365 должны иметь атрибут «UserType» установленный в значение «Member» (устанавливается в Active Directory). Если синхронизированный из Office 365 пользователь удаляется или модифицируется через интерфейс 3CX, он возвращается к предыдущему состоянию при очередной ручной или автоматической синхронизации.

Приложение аутентификации Microsoft Azure


115f9bdbbf70ef594ccbf9da3a5a7d08.png

Первый шаг подключения интеграции Office 365 — создание индивидуального приложения в вашем аккаунте для авторизации интеграции.

  1. В интерфейсе управления 3CX перейдите в раздел Параметры — Office 365 — вкладка Параметры — раздел Step 3 и скопируйте Redirect URL.
  2. Зайдите в портал Office 365 с учетными данными Global Administrator и перейдите на страницу Регистрации приложений Microsoft Azure.
  3. Нажмите Новая регистрация и укажите имя приложения, например, 3CX PBX Office 365 Sync App.
  4. В разделе Поддерживаемые типы учетных записей оставьте опцию по умолчанию Учетные записи только в этом каталоге организаци
  5. В разделе URI перенаправления (необязательно) укажите тип Веб и вставьте URI перенаправления из раздела интерфейса 3CX: Параметры > Интеграция с Office 365 > вкладка Параметры > раздел Step 3. Платформа и разрешения, например, company.3cx.eu:5001/oauth2office2
  6. Нажмите Зарегистрировать, и приложение будет создано.
  7. Откроется страница параметров созданного приложения. Скопируйте значение Идентификатор приложения (клиент) и вставьте его с соответствующее поле в интерфейсе управления 3CX, Параметры > Интеграция с Office 365 > вкладка Параметры > Step 1. Настройте App ID.


ab0a8f267c78352ce8004da418e9444d.png

Ключи аутентификации


Теперь необходимо установить доверительные отношения с открытым ключом между вашей системой 3CX v16 и созданным приложением в портале Office 365.

  1. В интерфейсе 3CX (раздел Параметры > Интеграция с Office 365 > вкладка Параметры) нажмите Сгенерировать новую пару ключей и сохраните ключ public_key.pem.
  2. Перейдите на страницу параметров приложения в раздел Сертификаты и секреты. Нажмите Отправка сертификата и загрузите созданный ключ.


7412c79e5b022631f55cadc700d6ce37.png
2d14363031e7cf7c2ec328574e4ecf73.png

Разрешения для приложения


Последний этап настройки — установка разрешений API в разделе Разрешения API. Эти разрешения определяют правила доступа вашей системы 3CX к аккаунту Office 365.

  1. Перейдите в раздел Разрешения API, нажмите Добавить разрешение и выберите Microsoft Graph.
  2. Добавьте разрешения API в разделе Разрешения приложения: Calendars > Calendars.Read, Contacts > Contacts.Read, Directory > Directory.Read.All и нажмите Добавить Разрешения.
  3. В разделе Предоставление согласия нажмите Предоставить согласие администратора для …, чтобы активировать разрешения.
  4. Подождите около 10 мин, чтобы изменения корректно вступили в силу.
  5. Переключитесь в интерфейс 3CX и в разделе Интеграция с Office 365 нажмите Войти в Office 365. Подтвердите разрешения для созданного приложения и соединение между системами будет установлено.


b6bd3ed610540751a5409b415060d6f9.png

Возможности синхронизации


Синхронизация между 3CX и Office 365 настраивается в трех вкладках:

  • Синхронизация пользователей — пользователи Office 365 синхронизируются с пользователями (добавочными номерами) 3CX. В интерфейсе управления 3CX синхронизируемые пользователи размещены в организационной группе Azure AD.
  • Синхронизация контактов — персональные контакты Office 365 синхронизируются с адресной книгой 3CX. Пользователь видит эти контакты в приложениях 3CX для всех платформ.
  • Синхронизация календаря — автоматическое изменение статуса добавочного номера 3CX в зависимости от занятости в календаре Office 365:


После завершения мероприятия в календаре Office 365, статус пользователя 3CX также синхронизируется и возвращается в предыдущее состояние.

Все элементы синхронизации могут быть настроены как для всех пользователей Office 365, так и для выбранных пользователей.

ea584131fe4ae19c59658fb780c77652.png

На этом интеграция завершена.

© Habrahabr.ru