Інтеграція сервісу SMSC з Bitrix24
SMSC.ru — один із найстаріших SMS-агрегаторів у РФ. Він має дві особливості, які виділяють його серед конкурентів: HLR-запити для перевірки активності номерів та каскадна відправка SMS → Viber (або навпаки) в межах одного API-виклику. При інтеграції з Bitrix24 ці можливості трансльюються в CRM: менеджери відправляють повідомлення з карточки угоди, роботи автоматично розсилають сповіщення, а SMSC сам вибирає оптимальний канал доставки.
Реєстрація провайдера у Bitrix24
Як і будь-який зовнішній SMS-сервіс, SMSC підключається через модуль messageservice. Провайдер реєструється REST-методом:
messageservice.sender.add({
CODE: "smsc",
TYPE: "SMS",
HANDLER: "https://your-domain.com/handler/smsc.php"
})
Обробник (HANDLER) отримує від Bitrix24 номер одержувача, текст повідомлення та внутрішній ідентифікатор. Далі формує запит до API SMSC:
https://smsc.ru/sys/send.php?login=LOGIN&psw=PASSWORD&phones=NUMBER&mes=TEXT&fmt=3&op=1
Параметр fmt=3 — відповідь у JSON. Параметр op=1 — запит статусу доставки у відповіді (SMSC повертає id повідомлення та cnt — кількість SMS-сегментів).
Обробник зберігає зв'язок message_id (Bitrix24) → id (SMSC) та повертає підтвердження Bitrix24.
HLR-запити: перевірка номерів перед розсилкою
HLR (Home Location Register) — запит до оператора зв'язку, який перевіряє, активний ли номер, у якій мережі знаходиться абонент і доступний ли для приймання SMS. SMSC надає HLR через окремий метод API:
https://smsc.ru/sys/hlr.php?login=LOGIN&psw=PASSWORD&phones=NUMBER&fmt=3
Відповідь містить:
- status — статус номера (0 = активен, 1 = недоступний, 2 = не існує)
- operator — поточний оператор зв'язку
- region — регіон реєстрації номера
Чому це важливо в контексті Bitrix24:
- Перед масовою розсилкою через CRM-маркетинг запускаємо базу контактів через HLR. Видаляємо недоступні та неіснуючі номери — економимо бюджет та знижуємо відсоток помилок.
-
При створенні ліда за вхідним дзвінком можна автоматично визначити оператора та регіон через бізнес-процес з HTTP-запитом до SMSC HLR. Результат записується у користувальницькі поля
UF_CRM_OPERATORтаUF_CRM_REGION.
На практиці HLR-запит коштує 0,2–0,5 грн. за номер. При базі з 10 000 контактів перевірка обходиться у 2 000–5 000 грн., але економить значно більше за рахунок виключення невалідних номерів із розсилок.
Каскадна відправка: SMS + Viber
SMSC підтримує каскадну доставку в межах одного API-виклику. Логіка:
- Повідомлення відправляється через Viber.
- Якщо абонент не прочитав протягом встановленого часу (зазвичай 1–2 години) — автоматично відправляється SMS.
Параметри API:
https://smsc.ru/sys/send.php?login=LOGIN&psw=PASSWORD&phones=NUMBER&mes=TEXT&fmt=3&viber=1&viber_timeout=3600
viber=1 — спроба доставки через Viber. viber_timeout=3600 — таймаут у секундах до фоллбеку на SMS.
Вартість Viber-повідомлення зазвичай нижче SMS (у 1,5–2 рази для російських номерів). Каскад дозволяє доставити повідомлення максимальній кількості одержувачів при мінімальних витратах: ті, у кого є Viber, отримують дешеве повідомлення, інші — SMS.
У Bitrix24 каскад налаштовується на рівні обробника. Робот CRM викликає стандартну дію «Відправити SMS», обробник на вашій стороні вирішує — відправити через Viber з фоллбеком або чистий SMS — залежно від типу повідомлення, сегмента або налаштувань.
Пакетна відправка
SMSC приймає до 100 номерів в одному запиті (розділені комами у параметрі phones). Для масових розсилок через CRM-маркетинг Bitrix24 це критично: замість 10 000 окремих запитів обробник групує номери у пакети по 100 та відправляє 100 запитів.
Виграш: швидкість розсилки зростає на порядок, навантаження на ваш сервер та API SMSC мінімальна.
Реалізація: обробник отримує запити від Bitrix24 (кожен — один номер), складає у чергу (Redis, база даних, файл), cron-завдання кожні 5–10 секунд забирає з черги до 100 номерів та відправляє пакетом. Статуси маппяться назад за id кожного повідомлення.
Callback для статусів доставки
SMSC відправляє сповіщення про статуси на вказаний URL. Налаштування — у особистому кабінету SMSC (розділ «Налаштування → Обробник статусів»):
- 1 — доставлено
- 2 — не доставлено (помилка)
- 3 — не доставлено (просрочено)
- 20 — доставлено через Viber
- 22 — не доставлено через Viber, відправлено SMS (каскад)
Обробник отримує id та status, знаходить пов'язаний Bitrix24 message_id, оновлює статус у CRM.
Статус «22» особливо корисний: він показує, що каскад спрацював і клієнт отримав SMS замість Viber. Цю інформацію можна записувати у користувальницьке поле контакту — при наступній розсилці одразу відправляти SMS, минаючи Viber-таймаут.
Терміни впровадження
| Масштаб | Що входить | Термін |
|---|---|---|
| Базовий | Підключення SMSC, ручна відправка з карточки, один робот | 3–5 днів |
| Стандартний | Роботи за стадіями, callback статусів, каскад SMS/Viber | 1 тиждень |
| Розширений | HLR-перевірка бази, пакетна відправка, CRM-маркетинг, аналітика каналів | 1.5–2 тижні |
Що налаштовуємо
- Реєстрація SMSC як провайдера через
messageservice.sender.add - Обробник запитів Bitrix24 → API SMSC з підтримкою каскада SMS/Viber
- Пакетна відправка з чергою та групуванням до 100 номерів
- HLR-перевірка бази контактів перед розсилкою
- Callback-обробник статусів доставки (включаючи статуси каскада)
- Роботи CRM для трансакційних сповіщень
- Масові розсилки через CRM-маркетинг
- Користувальницькі поля: оператор зв'язку, регіон, переважний канал
- Тестування: відправка SMS, відправка через Viber, каскад, пакетна розсилка, HLR-перевірка







