Втрата вхідних дзвінків без інтеграції з CRM — проблема, знайома кожному другому менеджеру. МТТ — надійний оператор, але без зв'язки з Бітрікс24 ви не бачите повну картину комунікацій. Ми усунемо цю прогалину: налаштуємо автоматичну реєстрацію дзвінків, підвантаження записів і автодзвінок на пропущені. Наш досвід — понад 10 років у Бітрікс24 — дозволяє гарантувати стабільну роботу інтеграції навіть при високому навантаженні (до 10 000 дзвінків на день). Обробник написаний на PHP 8.1+ з використанням Bitrix ORM, що забезпечує швидкодію. Отримайте консультацію щодо вашого проєкту — оцінимо складність і терміни.
API МТТ ВАТС: що доступно
МТТ надає HTTP API для управління віртуальною АТС та отримання подій про дзвінки. Згідно з офіційною документацією API МТТ, ключові події для інтеграції з Бітрікс24:
| Подія МТТ | Опис | Дія в Бітрікс24 |
|---|---|---|
incoming_call |
Вхідний дзвінок | telephony.externalcall.register |
answer_call |
Оператор відповів | Оновлення статусу дзвінка |
end_call |
Дзвінок завершено | telephony.externalcall.finish |
miss_call |
Пропущений | telephony.externalcall.finish (STATUS_CODE=304) |
МТТ надсилає сповіщення на налаштований URL у форматі POST JSON. Налаштування в особистому кабінеті МТТ: Налаштування АТС → Інтеграції → HTTP-сповіщення.
Схема обробника
Обробник для МТТ працює аналогічно іншим ВАТС-інтеграціям з важливою особливістю: МТТ передає події в режимі реального часу без гарантій доставки. Потрібно передбачити ідемпотентність — повторна обробка однієї події не повинна створювати дублів у Бітрікс24.
Приклад коду ідемпотентності на PHP
$cacheKey = 'mtt_call_' . $event['call_id'] . '_' . $event['type']; if ($cache->exists($cacheKey)) { // Уже обробляли цю подію http_response_code(200); exit; } $cache->set($cacheKey, 1, 3600); // TTL 1 година // Обробляємо подію Маппінг внутрішніх номерів
МТТ ВАТС ідентифікує співробітників за внутрішніми номерами (extension). У Бітрікс24 — за USER_ID. Таблиця відповідностей зберігається в конфігу обробника або в БД.
Окремий сценарій — груповий дзвінок, коли МТТ розсилає виклик кільком операторам одночасно. У події answer_call МТТ вказує, хто саме відповів. Важливо використовувати цей номер для USER_ID у Бітрікс24, а не той, кому спочатку надійшов дзвінок.
Запис дзвінків: завантаження через API
МТТ зберігає записи на своїх серверах. Доступ через API:
GET https://api.mtt.ru/v1/records/{call_id} Authorization: Bearer {api_key} Відповідь містить URL для завантаження файлу. Файл доступний протягом 90 днів за замовчуванням (налаштовується в тарифі).
Після отримання файлу — стандартне завантаження в Бітрікс24 через telephony.externalCall.attachRecord.
Налаштування кількох номерів МТТ
Компанії з кількома міськими номерами на МТТ можуть направити всі номери на один набір операторів або розділити за відділами. В інтеграції з Бітрікс24 це важливо для правильного визначення LINE_NUMBER — за ним Бітрікс24 розуміє, до якої лінії прив'язаний дзвінок.
МТТ передає в події поле to_number — номер, на який зателефонували. За цим полем обробник визначає LINE_NUMBER:
$lineMap = [ '+74991234567' => '100', // Лінія відділу продажів '+74997654321' => '101', // Лінія підтримки ]; $lineNumber = $lineMap[$event['to_number']] ?? '100'; Як налаштувати інтеграцію МТТ з Бітрікс24 за 5 кроків?
- Аналіз поточної архітектури — вивчаємо схему номерів, навантаження, вимоги до автодзвінка.
- Проектування обробника — визначаємо маппінг номерів, сценарії обробки подій, ідемпотентність.
- Розробка на PHP 8.1+ з Bitrix ORM, покриттям юніт-тестами.
- Тестування — симуляція дзвінків, перевірка коректності даних, навантажувальне тестування до 100 одночасних викликів.
- Деплой на production і навчання адміністраторів.
Кейс: компанія автоматизації торгівлі
У нашій практиці був клієнт — компанія з 15 менеджерами та двома групами: вхідні продажі та техпідтримка. МТТ використовувався як основний оператор з двома міськими номерами. Вимога до інтеграції: дзвінок на номер продажів — до менеджерів продажів, на номер підтримки — до технічних спеціалістів. Пропущені дзвінки — автоматичний перезвон через роботів Бітрікс24.
Складність: у МТТ пропущений дзвінок фіксувався подією miss_call, але тільки якщо ніхто з операторів не відповів. Якщо оператор підняв трубку і одразу поклав (менше 3 секунд) — подія приходила як end_call з duration < 3. Ми реалізували перевірку тривалості: якщо duration < 3 — позначали як пропущений у Бітрікс24.
Для автодзвінка на пропущені налаштували робота в Бітрікс24: створення нового ліда та запуск ланцюжка із завданням на перезвон через 10 хвилин. Весь проєкт зайняв 5 робочих днів.
Чому інтеграція з МТТ окупається швидше за альтернативи?
МТТ пропонує конкурентні тарифи та широку географію номерів, але за надійністю доставки подій поступається Манго Телеком, який використовує черги з підтвердженням. Порівняємо:
| Оператор | Гарантія доставки | API для запису | Зберігання записів | Вартість хвилини |
|---|---|---|---|---|
| МТТ | Немає гарантії | HTTP API | 90 днів | Низька |
| Манго Телеком | Є (черги) | REST + Websocket | 180 днів | Середня |
З МТТ ми обов'язково впроваджуємо ідемпотентність, щоб дублі не виникали навіть при повторному надсиланні. Це знижує навантаження на CRM на 30% і скорочує час обробки викликів у 2 рази порівняно з рішеннями без ідемпотентності. Інтеграція окупається в середньому за 2-3 місяці за рахунок скорочення пропущених дзвінків та автоматизації. Середня економія на телекомунікаціях становить 20-30 тисяч рублів на місяць для компаній з 10+ співробітниками.
Що входить у роботу
- Аудит поточної конфігурації МТТ та Бітрікс24
- Розробка обробника з ідемпотентністю та маппінгом номерів
- Налаштування автодзвінка через роботів Бітрікс24
- Документація схеми інтеграції та коду
- Тестування під навантаженням до 100 одночасних викликів
- Навчання адміністраторів роботі з новою системою
- Місяць технічної підтримки після впровадження
Зв'яжіться для обговорення вашого проєкту — оцінимо складність за один робочий день. Отримайте консультацію щодо інтеграції МТТ з Бітрікс24 прямо зараз.







