В результате выполнения шагов данного руководства ожидается:
Интеграция с календарем Exchange позволяет отображать расписание встреч из календаря Exchange в личном кабинете DION. Отображается следующая информация о встрече:
Для работы системы необходима интеграция с корпоративным календарем. После настройки интеграции обеспечивается полная связь между календарем пользователя в Exchange и календарем DION.
Для Exchange поддерживается NTLM-аутентификация.
Поддерживаемые версии почтового сервера:
| Решение | Версия |
| Microsoft Exchange | Exchange2010_SP2 и выше |

DION EWS Connector необходимо установить на площадке, где имеется доступ к Exchange-серверу. Это связующий компонент между сервером календаря Exchange и облаком DION. Облако DION никогда не инициирует обращения к EWS Connector; все сетевые подключения в облако являются исходящими от EWS Connector.
| Компонент | vCPU (шт.) | ОЗУ (ГБ) | Диск SSD (ГБ) | ОС |
|---|---|---|---|---|
| DION EWS Connector | 4 | 8 | 40 | Linux |
Один экземпляр DION EWS Connector поддерживает 1500-2000 календарей пользователей:
| № | Инициатор | Получатель | Порт | Протокол | Назначение | ||
| IP | FQDN | IP | FQDN | ||||
| 1 | DION EWS Connector |
80.85.252.1 80.85.252.4 185.247.192.101 185.247.192.104 185.228.50.78 185.228.50.79 185.65.148.105 185.65.148.145 |
grpc-gateway-clients.dion.vc | 443 | TCP | DION EWS Connector вызывает удалённые процедуры в облаке DION по gRPC. Передача информации о событиях из календаря. | |
| 2 | DION EWS Connector |
EWS MS Exchange организации Например: https://<EXCHANGE_URL>/EWS/Exchange.asmx |
443 | HTTPS TCP | Чтение событий календаря пользователя. | ||
Создайте учётную запись для коннектора и выдайте ей права на чтение календарей других пользователей с помощью команды:
Add-MailboxFolderPermission -Identity HenriettaM@microsoft.com:\Calendar -User dioncalendar@microsoft.com -AccessRights Reviewer
Для большого количества пользователей лучше предусмотреть скрипт при создании пользователей, а при первой установке прав — скрипт для проставления прав всем пользователям.
|
Также поддерживается учётная запись пользователя с правами имперсонализации.
Последнюю версию DION EWS Connector можно скачать здесь.
1. Переместите скачанный архив на сервер, где будет развернут DION EWS Connector.
Рекомендуется использовать каталог /opt/ews-connector
2. Распакуйте архив:
unzip -d /opt/ews-connector/ ews-connector.zip
Получите от команды DION набор сертификатов. Можно обратиться в службу поддержки пользователей (support@diongo.ru) или к вашей аккаунт-команде.
Сертификаты перенесите на сервер, где будет развернут DION EWS Connector, в каталог /opt/ews-connector/certificates/. Можно распаковать архив заранее, либо воспользоваться командой:
unzip -d /opt/ews-connector/certificates/ certificates.zip
Установите docker и docker compose на сервер, где будет развернут DION EWS Connector.
Рекомендуем воспользоваться официальной инструкцией на сайте Docker.
1. Перейдите в каталог /opt/ews-connector/ с помощью команды:
cd /opt/ews-connector/
2. Запустите установочный скрипт. Скрипт автоматически распакует образ контейнера DION EWS Connector и подготовит файл docker-compose.yml:
sudo ./install.sh
3. Откройте на редактирование файл /opt/ews-connector/.env:
nano /opt/ews-connector/.env
4. Внесите в файл значения переменных согласно таблице.
Используйте формат заполнения файла без пробелов: переменная=значение |
| Переменная | Значение | Тип | Пример | |
|---|---|---|---|---|
| 1 | EXCHANGE_URL |
ASMX-адрес вашего Exchange-сервера. | string | https://mail.local.myorg.ru/EWS/Exchange.asmx |
| 2 | EXCHANGE_DOMAIN |
Почтовый домен организации. | string | myorg.ru |
| 3 | EXCHANGE_PASSWORD |
Пароль пользователя с правами на чтение календарей всех пользователей организации, созданного на этапе подготовки. | string | qQ!-We@-34x |
| 4 | EXCHANGE_USERNAME |
Имя пользователя с правами на чтение календарей всех пользователей организации, созданного на этапе подготовки. | string | superUser_impl |
| 5 | EXCHANGE_USE_IMPERSONATION_ACCESS |
Включение режима олицетворения. | boolean | true |
| 6 | EXCHANGE_SYNC_DOMAIN |
Почтовый домен вашей организации. | string | myorg.ru |
| 7 | EXCHANGE_SYNC_ASSOCIATED_DOMAINS |
Список всех дополнительных почтовых доменов через запятую, должен включать в себя домен указанный в переменной EXCHANGE_SYNC_DOMAIN. |
string | myorg.ru, myorg2.ru |
| 8 | EXCHANGE_SYNC_CONNECTOR_ID |
Идентификатор EWS-коннектора (прописывается в соответствии с примером, достаточно заменить mycompany на название компании). |
string | ews-connector-mycompany-1 |
| 9 | GRPC_DIR |
Папка на хосте в которой хранятся GRPC-сертификаты. | string | /opt/ews-connector/certificates/ |
| 10 | GRPC_CIS_CERTIFICATE_CHAIN |
Имя файла цепочки сертификатов. | string | server_client.mycompany.prod.clients-vc.0001.dion.vc.crt |
| 11 | GRPC_CIS_PRIVATE_KEY |
Имя файла приватного ключа. | string | server_client.mycompany.prod.clients-vc.0001.dion.vc.key |
Следующие параметры должны быть идентичными на всех установленных EWS-коннекторах в организации:
EXCHANGE_DOMAIN,EXCHANGE_SYNC_DOMAIN,EXCHANGE_SYNC_ASSOCIATED_DOMAINS.5. Запустите контейнер:
docker compose up -d
Контейнер должен быть запущен без ошибок. Чтобы убедиться в этом, выполните команду:
docker ps
После завершения установки сообщите в службу поддержки Dion (support@diongo.ru) три учётные записи DION, для которых будет активирована синхронизация календарей с целью проверки правильности настроек. После успешного тестирования политика синхронизации будет применена ко всей организации.
| Планировать включение функционала календаря лучше на ночные часы или выходные дни для планомерной синхронизации календарей пользователей. Первая синхронизация может занимать до 1 часа на 500 пользователей, в зависимости от количества событий в календаре. |
Статус контейнера можно проверить с помощью команды:
docker ps
Удостовериться в работоспособности контейнера можно с помощью команды:
docker logs -f <container_id>
где <container_id> — это имя или id контейнера DION EWS Connector, которые можно получить из вывода команды docker ps.
Во время обновления предполагается простой в работе модуля «Календарь». Процедуру обновления необходимо выполнить на каждом запущенном инстансе EWS Connector. После завершения работ важно убедиться, что не запущены дублирующие копии сервиса.
Посмотрите, какие контейнеры EWS Connector запущены на сервере:
docker ps | grep ews-connector
Для каждого ews-connector необходимо определить каталог, из которого он был запущен:
docker inspect <container_id> | grep com.docker.compose.project.working_dir
Для каждого найденного каталога выполните:
cd <каталог_проекта>
docker compose down
После остановки сервисов текущий рабочий каталог необходимо переименовать:
mv /opt/ews-connector /opt/ews-connector.orig
Необходимо убедиться, что все копии сервиса остановлены.
Распакуйте новый архив в исходный рабочий путь:
unzip ews-connector.zip -d /opt/ews-connector
Запустите установочный скрипт. Скрипт автоматически распакует образ контейнера DION EWS Connector и подготовит файл docker-compose.yml:
sudo ./install.sh
Вручную перенесите значения переменных из файла /opt/ews-connector.orig/.env в новый /opt/ews-connector/.env
В результате должен быть сформирован корректно заполненный новый .env
nano /opt/ews-connector/.env
Если ранее файл docker-compose.yml изменялся (порты, volumes, сетевые настройки и т.п.) необходимо вручную перенести пользовательские изменения.
из /opt/ews-connector.orig/docker-compose.yml в /opt/ews-connector/docker-compose.yml
Переносятся осмысленные пользовательские правки (volumes, сети и т.п.).
После завершения переноса конфигурации выполните:
cd /opt/ews-connector
docker compose up -d
Проверьте состояние контейнеров:
docker ps
Проверьте логи:
docker logs -f ews-connector
Контейнер должен находиться в состоянии Up, без критических ошибок.