Пользуясь опытом работы с крупными клиентами, у которых каждый звонок на счету, мы пересмотрели способ хранения данных в Itgrix и внедрили полученные наработки в базовую версию коннектора.
Начиная с версии Itgrix bx 3.13.0, файл состояния state.json заменён на собственную SQLite базу данных приложения state.db, что дает целый ряд преимуществ и максимально приближает нас к 100% успешной обработки звонков с минимальными задержками:
- Все данные обработки звонков сохраняются в реальном времени без задержки, что устраняет возможность потери данных даже при неожиданной остановке приложения
- Хранение результата выполнения каждого шага обработки звонка предотвращает дублирование данных в CRM даже если звонок обрабатывается повторно
- Звонки, при обработке которых возникли ошибки, автоматически переобрабатываются по расписанию
- Переобработка звонков по расписанию и до-обработка звонков при восстановлении работы приложения выполняются в отдельном потоке с меньшим приоритетом для обеспечения обработки текущих звонков без задержек
- Регулярное резервное копирование базы данных ежедневно создаёт точки восстановления, которыми можно воспользоваться даже при повреждении актуальной базы данных
- Централизованное хранение актуальных данных звонков позволило уменьшить объём логирования по умолчанию
- Интерфейсы для работы с базой данных (в админке и в командной строке) позволяют специалистам техподдержки легко находить любые проблемные звонки и точечно применять специфические решения для каждой ситуации
- Данные об успешной обработке звонков позволяют быстро найти какие действия были выполнены с CRM на конкретном звонке или выяснить статистику по сценариям звонков
Подробнее в новой статье Базы знаний Itgrix: https://docs.itgrix.ru/blog/itgrix-db