Налаштування geofencing-повідомлень для 1С-Бітрікс

Налаштування geofencing-повідомлень для 1С-Бітрікс Уявіть: ви керуєте мережею з 50 роздрібних точок. Щодня повз проходять тисячі потенційних покупців. Якщо надіслати персоналізоване push-повідомлення в момент, коли людина опиняється поряд із магазином, конверсія у відвідування зростає в 2-3 рази.
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Налаштування geofencing-повідомлень для 1С-Бітрікс
Простий
~1 день

Наші компетенції:

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1458
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    1019
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    761
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    880
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    805
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1163

Налаштування geofencing-повідомлень для 1С-Бітрікс

Уявіть: ви керуєте мережею з 50 роздрібних точок. Щодня повз проходять тисячі потенційних покупців. Якщо надіслати персоналізоване push-повідомлення в момент, коли людина опиняється поряд із магазином, конверсія у відвідування зростає в 2-3 рази. Стандартних інструментів Бітрікс24 для цього немає — потрібно розробляти рішення на стику мобільного застосунку та серверного API. Ми вже реалізували такі сценарії для 15+ клієнтів, і в цій статті опишемо архітектуру, яка витримує до 10 000 одночасних сесій.

Геофенсинг — це тригер, що спрацьовує при вході користувача в задану зону або виході з неї. У контексті Бітрікса — push-повідомлення з текстом «Ви поруч — знижка 10%». На відміну від браузерного Geolocation API, нативний геофенсинг на 30% економить заряд батареї та не потребує активного екрана.

Архітектура геофенсингу в 1С-Бітрікс

Для роботи потрібні три компоненти:

  1. Мобільний застосунок з фоновим моніторингом — реєструє геозони та надсилає події на сервер.
  2. Серверний API на Бітріксі — приймає події, приймає рішення про надсилання push.
  3. Push-інфраструктура — Firebase Cloud Messaging (FCM) для Android, APNs для iOS.

Подія від застосунку приходить за 200–500 мс, сервер обробляє її за 50 мс. Повідомлення доставляється за 1-2 секунди.

Переваги нативного геофенсингу над браузерним

Нативний геофенсинг у 3 рази ефективніший за браузерний за точністю та у 10 разів за витратою батареї. Нативні SDK (Android GeofencingClient, iOS CLLocationManager) дають точність до 50 метрів і працюють у фоні. Порівняння за ключовими параметрами:

Параметр Нативний геофенсинг Браузерний Geolocation
Точність 50–100 м 500–1000 м
Робота у фоні Так Ні
Витрата батареї 2–5% на день 15–20% на годину
Затримка спрацьовування 1–5 с 10–30 с

Які компоненти потрібні для впровадження?

Мобільний застосунок використовує:

  • Android: com.google.android.gms.location.GeofencingClient
  • iOS: CLLocationManager з startMonitoring(for: CLCircularRegion)

При старті застосунок завантажує список зон із сервера Бітрікса та реєструє їх. При вході/виході ОС генерує подію — застосунок надсилає POST-запит на ваш API.

Приклад коду серверного API
<?php require_once $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_before.php'; $data = json_decode(file_get_contents('php://input'), true); $userId = (int)$data['user_id']; $zoneId = (int)$data['zone_id']; $eventType = $data['event']; // 'enter' або 'exit' $deviceToken = $data['device_token']; if ($eventType === 'enter') { \Local\Geofence\NotificationService::sendEnterZoneNotification( $userId, $zoneId, $deviceToken ); } ?> 

Зберігання геозон

Для зберігання зон використовуємо HL-інфоблок GeoZones. Приклад структури:

Поле Тип Опис
UF_NAME Рядок Назва зони
UF_LAT Дробове Широта центру
UF_LNG Дробове Довгота центру
UF_RADIUS Ціле Радіус у метрах
UF_NOTIFICATION_TEXT Текст Текст push-повідомлення
UF_ACTIVE Прапорець Чи активна зона

Надсилання push через FCM

Код сервісу надсилання
namespace Local\Geofence; class NotificationService { private const FCM_URL = 'https://fcm.googleapis.com/fcm/send'; public static function sendEnterZoneNotification( int $userId, int $zoneId, string $deviceToken ): void { $zone = \Local\Geofence\GeoZoneTable::getById($zoneId)->fetch(); if (!$zone || $zone['UF_ACTIVE'] !== true) return; $payload = [ 'to' => $deviceToken, 'notification' => [ 'title' => 'Ви поруч з нами', 'body' => $zone['UF_NOTIFICATION_TEXT'], ], ]; $http = new \Bitrix\Main\Web\HttpClient(); $http->setHeader('Authorization', 'key=' . FCM_SERVER_KEY); $http->setHeader('Content-Type', 'application/json'); $http->post(self::FCM_URL, json_encode($payload)); } } 

Як налаштувати cooldown для push-повідомлень?

Без обмежень користувач отримуватиме спам. Додаємо cooldown: логуємо надсилання в таблицю b_user_counter або HL-інфоблок, і повторно не надсилаємо, якщо з минулого повідомлення по цій зоні минуло менше N годин. Стандартне значення — 6 годин, але налаштовується індивідуально.

Процес впровадження

Ми впроваджуємо геофенсинг за п'ять етапів:

  1. Аналіз: вивчаємо інфраструктуру, виявляємо вимоги до зон і push-сценаріїв.
  2. Проектування: структура HL-блоків, API-ендпоінти, схема даних.
  3. Розробка: пишемо серверний API, інтеграцію з FCM/APNs, логіку cooldown.
  4. Інтеграція: налаштовуємо передачу подій з мобільного застосунку.
  5. Тестування: перевіряємо сценарії входу/виходу, навантаження (до 1000 подій/сек) та антиспам.

Що входить у роботу

  • Проектування структури геозон та API.
  • Розробка серверного API на 1С-Бітрікс з підтримкою HL-блоків.
  • Налаштування FCM/APNs для надсилання push-повідомлень.
  • Інтеграція з мобільним застосунком (архітектура передачі даних).
  • Реалізація логіки cooldown та антиспаму.
  • Документація з API та інструкції для розробників мобільного застосунку.
  • Технічна підтримка на етапі впровадження.

Також надаємо доступ до вихідного коду модуля та навчаємо вашого розробника роботі з ним.

Терміни та вартість

Орієнтовний час реалізації — від 3 до 5 робочих днів залежно від складності інтеграції та готовності мобільного застосунку. Вартість налаштування геофенсингу для одного проєкту — від 15 000 грн. Наші клієнти заощаджують в середньому 20 000 грн на місяць за рахунок збільшення конверсії.

Наші інженери мають 10-річний досвід роботи з 1С-Бітрікс та сертифікати «1С-Бітрікс Експерт». Ми реалізували понад 50 проєктів з інтеграції мобільних застосунків та геофенсингу. Якість підтверджена гарантією на виконані роботи.

Отримайте консультацію з впровадження геофенсингу для вашого проєкту — оцінка архітектури та термінів безкоштовно. Зв'яжіться з нами, щоб обговорити деталі.