Corp/backend
lizerk 2e1f413264 refactor(communications): Сделать зависимость от notifications опциональной
BREAKING CHANGE: notifications теперь опциональная зависимость.

Проблема:
- communications имел жесткую зависимость от notifications модуля
- from notifications.signals import notify - обязательный импорт
- Нарушало независимость модуля

Решение:
- Импорт notifications обернут в try/except ImportError
- Создана функция _send_notification() - обертка над notify.send()
- Если notifications не установлен - уведомления тихо игнорируются
- Модуль работает БЕЗ notifications (graceful degradation)

Изменения:
- notifications/handlers.py:
  * Опциональный импорт: try/except ImportError
  * Флаг NOTIFICATIONS_AVAILABLE для проверки доступности
  * Функция _send_notification() вместо прямых вызовов
  * 4 вызова notify.send() → _send_notification()

Результат:
✅ communications работает БЕЗ notifications модуля
✅ Если notifications установлен - все работает как раньше
✅ Полная независимость для standalone использования
✅ System check: 0 errors

Теперь можно использовать communications как:
1. С notifications - полная функциональность
2. Без notifications - только чаты без уведомлений
3. С собственной системой уведомлений - переопределить _send_notification()
2026-03-11 17:25:15 +03:00
..
2026-03-10 13:18:57 +03:00
2026-03-10 13:18:57 +03:00