Решение потребовало доработки серверной и клиентской частей коробочного Битрикс24. Команда изучила существующие механизмы работы платформы с географическими данными, после чего разработала собственную интеграцию.
1. Проработали архитектуру картографического модуля
За основу исследования взяли подходы, используемые в картографических решениях на базе OpenStreetMap, и принципы взаимодействия стандартного модуля «Локация» в Битрикс24 с внешними сервисами.
Это позволило определить, как организовать работу с координатами и встроить стороннюю картографию в существующую архитектуру CRM.
2. Подключили API 2ГИС
Для отображения интерактивной карты интегрировали API 2ГИС. Это позволило использовать внешний картографический сервис внутри корпоративного портала, не ограничиваясь штатными возможностями платформы.
При этом карта стала частью рабочего интерфейса CRM, а не отдельным инструментом, в котором сотрудникам пришлось бы вести данные параллельно.
3. Доработали механизм управления API-ключом
Чтобы упростить дальнейшее обслуживание решения, специалисты модернизировали компонент intranet.settings.
В результате администраторы получили возможность добавлять и обновлять API-ключ картографического сервиса через интерфейс портала. Это снижает зависимость от разработчиков при выполнении типовых административных операций.
Доступ к настройке ключа должен оставаться ограниченным административными правами, а сам ключ необходимо хранить и передавать с учётом требований безопасности.
4. Подготовили клиентскую часть карты
Для сборки пользовательских JavaScript-модулей установили Bitrix CLI и настроили процесс подготовки фронтенд-компонентов.
Клиентская часть отвечает за отображение интерактивной карты и взаимодействие пользователя с картографическим интерфейсом. Это позволило встроить разработанный функционал в существующий портал, сохранив возможность дальнейшего развития модуля.
5. Связали карту с сущностями CRM
Ключевой частью решения стала интеграция карты с данными CRM. Координаты объектов связываются с соответствующими записями системы. При изменении местоположения в связанной карточке компании или сделки информация на общей карте обновляется без необходимости повторного ручного заполнения.
Такой подход помогает поддерживать согласованность географических данных между сущностями и уменьшает объём дублирующих операций.