Кастомний інтерфейс чат-бота в Бітрікс24 на Vue.js
Ви створили чат-бота для Бітрікс24, але стандартна адмінка не дає гнучкості: сценарії доводиться змінювати в коді, аналітики немає, кнопки налаштовуються вручну. Клієнти скаржаться, що бот не відповідає так, як потрібно, а менеджери не бачать, які діалоги потребують втручання. Ми стикалися з цим не раз — і знаємо, як вирішити задачу.
Ми проєктуємо та розробляємо кастомні адміністративні інтерфейси для чат-ботів на Vue.js, які вбудовуються прямо в Бітрікс24. Візуальний конструктор сценаріїв, панель аналітики в реальному часі, живий моніторинг діалогів — все це працює як частина вашого порталу. Жодних перемикань між системами: все керування ботом в одному вікні.
Як Vue.js покращує керування чат-ботом у Бітрікс24?
Стандартний інтерфейс бота в Бітрікс24 — кілька полів введення та кнопка «Зберегти». Він підходить лише для елементарних ботів-помічників. Щойно з'являються складні сценарії з розгалуженнями, інтеграція з CRM, збір аналітики — без повноцінного SPA-застосунку не обійтися. Vue.js дає реактивність, модульність та багаті компоненти. Ми використовуємо його для побудови:
- Конструктора діалогових дерев (drag & drop)
- Редактора кроків: повідомлення, запитання з кнопками, умова, API-запит, створення ліда
- Панелі аналітики з графіками та таблицями
- Моніторингу активних діалогів у реальному часі
Порівняння стандартного та кастомного інтерфейсу
| Критерій | Стандартний інтерфейс | Кастомний на Vue.js |
|---|---|---|
| Налаштування сценаріїв | Вручну в PHP-коді | Візуальний конструктор (drag & drop) |
| Типи кроків | Тільки текст і кнопки | Повідомлення, запитання, умова, API-запит, CRM-дія |
| Аналітика | Відсутня | Графіки, метрики, таблиці |
| Моніторинг діалогів | Немає | Live-стрічка з WebSocket або SSE |
| Інтеграція з CRM | Через події | Вбудовані блоки створення лідів і угод |
| Швидкість змін | Потрібен деплой | Миттєве оновлення через REST |
Візуальний конструктор прискорює розробку в 3–5 разів, а бізнес-користувачі можуть змінювати логіку бота без допомоги програміста. За нашими проєктами, конверсія в ліди зростає на 30–50%.
Архітектура системи бота з Vue-інтерфейсом
┌─────────────────────────────────────────┐ │ Битрикс24 Портал │ │ ┌─────────────┐ ┌─────────────────┐ │ │ │ Открытая │ │ Vue Admin App │ │ │ │ линия │ │ (placement) │ │ │ └──────┬──────┘ └────────┬────────┘ │ │ │ │ │ └─────────┼───────────────────┼───────────┘ │ webhooks │ REST API ┌─────────▼───────────────────▼───────────┐ │ Bot Backend (Laravel/Node) │ │ ┌─────────────┐ ┌─────────────────┐ │ │ │ Bot Logic │ │ Admin API │ │ │ │ (сценарии) │ │ (настройки) │ │ │ └─────────────┘ └─────────────────┘ │ └─────────────────────────────────────────┘ Реєстрація бота та підписка на події
// Регистрация бота через REST BX24::callMethod('imbot.register', [ 'TYPE' => 'B', // Bot type 'EVENT_MESSAGE_ADD' => 'https://my-app.com/webhook/message', 'EVENT_WELCOME_MESSAGE' => 'https://my-app.com/webhook/welcome', 'EVENT_BOT_DELETE' => 'https://my-app.com/webhook/delete', 'PROPERTIES' => [ 'NAME' => 'Мой ассистент', 'LAST_NAME' => '', 'COLOR' => 'GREEN', 'PERSONAL_PHOTO' => 'base64...', ] ]); Vue-компонент конструктора сценаріїв
Візуальний редактор діалогових дерев — ключова частина адміністративного інтерфейсу:
<!-- ScenarioBuilder.vue --> <template> <div class="scenario-builder"> <div class="scenarios-list"> <ScenarioCard v-for="scenario in scenarios" :key="scenario.id" :scenario="scenario" :active="activeScenario?.id === scenario.id" @select="selectScenario" @delete="deleteScenario" /> <button class="add-scenario" @click="addScenario"> + Добавить сценарий </button> </div> <div class="scenario-editor" v-if="activeScenario"> <StepEditor v-for="step in activeScenario.steps" :key="step.id" :step="step" @update="updateStep" @add-next="addNextStep" @delete="deleteStep" /> </div> </div> </template> <script setup> import { ref, onMounted } from 'vue' import { useScenarioStore } from '@/stores/scenarios' const store = useScenarioStore() const scenarios = computed(() => store.scenarios) const activeScenario = ref(null) onMounted(() => store.loadScenarios()) function selectScenario(scenario) { activeScenario.value = scenario } async function addScenario() { const newScenario = await store.createScenario({ name: 'Новый сценарий', trigger: 'keyword', steps: [{ type: 'message', text: 'Привет! Чем могу помочь?' }] }) activeScenario.value = newScenario } </script> Відправка повідомлень з кнопками
Інтерактивні кнопки в повідомленнях бота через KEYBOARD:
// bot-logic.js async function sendMessageWithButtons(chatId, text, buttons) { await bx24.callMethod('imbot.message.add', { DIALOG_ID: chatId, MESSAGE: text, KEYBOARD: buttons.map((row, rowIndex) => row.map(btn => ({ TEXT: btn.label, ACTION: 'CALL', LINK: `https://my-app.com/bot/action/${btn.action}`, // или ACTION: 'SEND' для отправки текста в чат BG_COLOR: btn.color || '#29619b', TEXT_COLOR: '#ffffff', DISPLAY: 'LINE', })) ) }) } // Использование await sendMessageWithButtons(dialogId, 'Выберите действие:', [ [ { label: 'Создать заявку', action: 'create_lead', color: '#29619b' }, { label: 'Проверить статус', action: 'check_status', color: '#5a9b29' }, ], [ { label: 'Связаться с менеджером', action: 'connect_manager', color: '#9b2929' }, ] ]) Чому візуальний конструктор сценаріїв ефективніший за код?
Робота з діалоговими деревами через код вимагає постійного деплою та тестування. Візуальний конструктор прискорює розробку в 3–5 разів, дозволяє змінювати логіку без залучення розробника та дає бізнес-користувачам можливість самостійно налаштовувати відповіді бота. Ми реалізували як прості лінійні сценарії, так і складні розгалуження з умовами за полями CRM. Результат — зниження навантаження на підтримку, зростання конверсії в ліди (на 30–50% за нашими проєктами). Один з клієнтів заощадив понад 150 000 гривень на місяць на підтримці бота після впровадження нашого інтерфейсу.
Технічні деталі інтеграції з CRM
При створенні ліда через бота ми використовуємо REST-метод crm.lead.add. Дані передаються з полів VUE-форми. Також доступне створення угод і контактів. Всі дії логуються для подальшого аудиту.
Що входить до роботи
- Розробка бекенду бота (Laravel/Node.js) з реєстрацією в Бітрікс24 через REST
- Vue-адмінка: конструктор сценаріїв, редактор кроків, панель аналітики, моніторинг діалогів
- Інтеграція з CRM (створення лідів, угод, контактів)
- Інтеграція із зовнішніми API та сервісами (ОФД, Нова пошта, телефонія)
- Документація з експлуатації, доступи до репозиторію, 1 місяць гарантійної підтримки
Понад 5 років ми займаємося розробкою на Бітрікс24 та Vue.js — виконали 30+ проєктів для чат-ботів, від простих FAQ до складних платформ зі штучним інтелектом. Оцінимо ваш проєкт за один робочий день. Зв'яжіться з нами — обговоримо деталі.
Строки виконання
Адміністративний інтерфейс бота з конструктором сценаріїв та базовою аналітикою — 6–10 робочих днів. Повноцінна платформа з візуальним редактором дерева діалогів, живим моніторингом та інтеграцією з CRM — 3–6 тижнів. Вартість розраховується індивідуально залежно від складності сценаріїв та необхідних інтеграцій.
Отримайте консультацію — ми допоможемо підібрати оптимальне рішення для вашого бізнесу.







