Top.Mail.Ru
Бесшовная синхронизация календарей Битрикс24 и Microsoft Exchange
Контур.Staffcop (Staffcop Enterprise) — это отечественная система класса Insider Risk Management (IRM) и DLP для расследования внутренних инцидентов информационной безопасности, контроля персонала и учета рабочего времени.
Отрасль
Информационная безопасность (IT-Security) и разработка программного обеспечения.
Программный продукт
Битрикс24
Рабочих мест
-
Срок внедрения
4 месяца
О проекте
Отзыв клиента

Задача

К нам обратился заказчик, который уже пытался самостоятельно настроить штатную синхронизацию между календарями Битрикс24 и Microsoft Exchange, но столкнулся с критическими ограничениями:

  • не синхронизировались встречи с внешними участниками;
  • повторяющиеся события обрабатывались только как цепочка, терялись изменения отдельных событий;
  • синхронизация зависала и требовала ручного вмешательства;
  • не было понятной отладочной информации, а при включенном логировании логи занимали гигабайты.

Почему штатное решение не работало

Битрикс24 и Exchange имею разную архитектуру и в реализации календарей заложена разная идеология. К примеру архитектура Битрикс24 предполагает, что все пользователи Exchange должны быть пользователями Битрикс24, а Битрикс24 ожидает, что повторяющие события могут меняться только всей цепочкой. У заказчика сложилась обратная ситуация. Все пользователи работают с Exchange, а Битрикс24 развернут в интересах определённых команд.

Цели проекта

Нам требовалось:

  • обеспечить быструю, автономную и незаметную для пользователя синхронизацию;
  • управлять участниками событий без обязательного приглашения их в Битрикс24;
  • внедрить понятный и локализованный лог ошибок без хранения огромных файлов;
  • дать администратору гибкие настройки синхронизации;
  • обеспечить параллельную работу в обоих календарях без ограничений;
  • корректно обрабатывать повторяющиеся встречи и их изменения.

Как мы решали

Мы провели серию встреч, составили детальное ТЗ и развернули тестовый стенд. Моделирование выявило глубинные проблемы:

  • встроенные методы обмена устарели;
  • модули внутри систем сильно переплетены;
  • вмешательство в штатную логику было невозможно;
  • документация отсутствовала, отладка была неинформативной.

Решение

Был разработан отдельный модуль, который:

  • аккуратно встроился поверх штатной синхронизации, не нарушая её работу;
  • добавил понятный интерфейс для настройки параметров синхронизации;
  • ввёл систему логирования с выводом только значимых событий (рис. 1–2);
  • расширил пользовательские уведомления на портале Битрикс24 (рис. 3).

Модуль не заменил, а дополнил стандартные механизмы, сделав их управляемыми и прозрачными.

Рис.1 - Настройки модуля.png

Рис. 1 - Настройка модуля

Рис.2 - Параметры логирования.png

Рис. 2 - Параметры логирования

Рис.3 - Уведомления и предупреждения.png

Рис. 3 - Уведомления и предупреждения


Результат

Все поставленные задачи перед нашей командой выполнены. Заказчик получил готовый модуль в архиве с подробной инструкцией и комментированным кодом. При этом разработанный нашей командой модуль не заменил, а дополнил стандартные методы синхронизации.

Теперь сотрудники заказчика могут:

  • работать в привычных инструментах — Битрикс24 или Outlook — без потери актуальности данных;
  • создавать и изменять встречи в любой из систем;
  • приглашать участников и принимать приглашения без ограничений;
  • видеть актуальные изменения в режиме реального времени;
  • полноценно управлять цепочками повторяющихся событий.

Синхронизация стала быстрой, надёжной и прозрачной, а администратор получил контроль над процессами, которые раньше были «чёрным ящиком».