Жизненный цикл установки
Ожидаемая последовательность:
- Битрикс24 вызывает обработчик установки приложения.
- Приложение регистрирует портал и сохраняет авторизационный контекст защищённым способом.
- Мастер собирает настройки типов документов и направлений.
- Создаются или проверяются необходимые CRM-сущности.
- Администратор подключает организацию Saby через OAuth.
- Выполняется read-only проверка зависимостей.
- Администратор запускает безопасный тест.
Повторная установка должна быть идемпотентной: не создавать вторые поля, категории и процессы. Фактическое поведение проверяется после передачи кода.
Регистрация портала
Текущая техническая инструкция описывает upsert по member_id: повторная установка обновляет существующую запись портала, а не создаёт вторую. Авторизационные данные Bitrix24 должны храниться защищённо и не попадать в логи.
Инициализация CRM
При сохранении настроек приложение проверяет или создаёт:
- поля компании с маркером
_MA; - поле сделки «Статус отправки УПД»;
- процессы
SBIS_DOCSиSBIS_UPDс категориями и стадиями; - вкладку «ЭДО» компании;
- поля и стадии счетов;
- служебный чат ошибок.
По действующей инструкции эта проверка выполняется также перед циклом синхронизации и может восстановить удалённые сущности. Это поведение необходимо подтвердить тестом и ограничить только сущностями, которыми владеет приложение.
Техническая инструкция указывает, что созданные поля, стадии и смарт-процессы остаются на портале после удаления приложения. Перед очисткой нужен отдельный инвентаризационный сценарий; автоматическое удаление данных недопустимо.