Техническое задание: Система уведомлений и синхронизация с календарем для CRM

Цель проекта

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

Основные задачи

  • Создание системы персональных уведомлений внутри CRM.
  • Реализация двусторонней синхронизации событий (встречи и задачи) с Google Calendar.
  • Разработка надежной логики работы, обработки конфликтов и ошибок синхронизации.
  • Обеспечение безопасности и авторизации при работе с внешним API календаря.

Требования к функционалу

1. Система уведомлений

  • Настройка пользовательских предпочтений для уведомлений.
  • Разные типы уведомлений (внутрисистемные, email).
  • Триггеры для уведомлений на основе событий в CRM.

2. Синхронизация с Google Calendar

  • Двусторонняя синхронизация: создание, обновление, удаление событий.
  • Сопоставление сущностей CRM (Встречи, Задачи) с событиями календаря.
  • Обработка периодических событий.
  • Механизм разрешения конфликтов при расхождении данных.

3. Надежность и безопасность

  • Использование OAuth 2.0 для авторизации в Google API.
  • Реализация механизма повторных попыток при сбоях синхронизации.
  • Логирование процессов для диагностики проблем.

Ожидаемый результат

Пользователи CRM должны получать своевременные уведомления о событиях, а все встречи и задачи должны быть автоматически синхронизированы с их персональным Google Calendar, обеспечивая единое рабочее пространство.