Уявіть: відділ продажів із 12 менеджерів витрачає в середньому 20 хвилин на день на пошук завдань і контактів у Бітрікс24. Внутрішній чат-бот може автоматизувати ці запити, відповідаючи на команди /справи або /клієнт за секунду. Ми розробляємо бота для внутрішнього чату Бітрікс24 з нуля: від реєстрації в модулі im до асинхронної архітектури та OAuth-авторизації. Внутрішній чат Бітрікс24 — не просто месенджер, через нього проходять сповіщення CRM, нагадування про завдання, аларти із зовнішніх систем. Бот автоматизує рутину: відповідає на питання співробітників, агрегує дані з різних модулів, виконує команди прямо з діалогового вікна. Наш досвід — 50+ проєктів для відділів продажів, HR та IT-підтримки. Бот працює на основі REST API Бітрікс24 і може виконувати дії від імені користувача.
Що дає внутрішній бот у порівнянні з клієнтським?
Клієнтський бот працює у відкритих лініях і обмежений: не має доступу до CRM та завдань. Внутрішній бот, навпаки, отримує повний доступ до даних порталу через REST API, може використовувати права конкретного користувача та надсилати rich-повідомлення в групові чати. Реєстрація через imbot.register без прапора OPENLINE: Y. Це робить його в 3 рази ефективнішим для автоматизації внутрішніх процесів.
Типові сценарії та їх реалізація
HR-бот
Співробітник пише /відпустка 15.07-28.07 → бот створює запит на відпустку через timeman.absence.create, повідомляє керівника, відмічає дні в календарі через calendar.event.add. Без ходіння по розділах Бітрікс24.
Бот звітності
Керівник пише /звіт продажі червень → бот робить запит crm.deal.list з фільтром за датами та відповідальними → формує зведення прямо в чаті: кількість угод, сума, конверсія за стадіями.
Черговий бот
Моніторинг зовнішніх систем (сервер, сайт, черга завдань) → при перевищенні порогів надсилає аларт у чат чергового інженера з кнопками «Прийняв», «Ескалювати».
IT-helpdesk бот
Співробітник пише проблему → бот створює завдання в проєкті техпідтримки через tasks.task.add, призначає виконавця за ротацією, надсилає номер тікета. Статус тікета можна запитати командою /тікет 1234.
Реєстрація та обробка команд
Бот реєструється із зазначенням обробника команд:
POST /rest/imbot.register { "CODE": "internal_helper", "EVENT_MESSAGE_ADD": "https://your-server.com/internal-bot/message", "EVENT_COMMAND_ADD": "https://your-server.com/internal-bot/command", "OPENLINE": "N" } Команди реєструються через imbot.command.register:
{ "BOT_ID": 456, "COMMAND": "отчёт", "COMMON": "Y", "HIDDEN": "N", "EXTRANET_SUPPORT": "N", "LANG": [{"LANGUAGE_ID": "ru", "TITLE": "Отчёт по продажам", "PARAMS": "период"}] } Після реєстрації команда з'являється в автодоповненні чату при введенні /. Детальніше про REST API читайте в офіційній документації.
Покрокова інструкція з реєстрації
- Створіть додаток у Бітрікс24 (розділ Розробникам).
- Отримайте код додатку та налаштуйте обробники подій.
- Виконайте запит imbot.register з вашим сервером-обробником.
- Зареєструйте команди через imbot.command.register з параметрами.
- Налаштуйте обробку вебхуків і поверніть 200 OK.
Кейс: бот для відділу продажів
Задача: 12 менеджерів, часті питання «скільки у мене відкритих угод», «коли останній контакт з клієнтом X», «що по завданнях на сьогодні». Клієнт — компанія з оборотом 500+ угод на місяць.
Реалізація: Python (FastAPI) + Бітрікс24 REST API. Команди:
-
/справи→ список відкритих угод менеджера з сумами та стадіями. -
/клієнт [назва]→ пошук контакту з останньою активністю. -
/завдання→ завдання на сьогодні з дедлайном. -
/дзвінок [телефон]→ ініціювати вихідний дзвінок.
Авторизація: бот використовує токен користувача, отриманий через OAuth при першому зверненні. Токени зберігаються в Redis з TTL 30 днів.
Економія склала 15–20 хвилин на день на менеджера, що при середній зарплаті дає зниження витрат на рутину на 30%. Навантаження мінімальне — 3-5 API-запитів на команду. Окупність — менше місяця.
Головна складність: ротація токенів. Bitrix24 REST-токени живуть 1 годину, refresh — 30 днів. Якщо користувач не звертався до бота 30 днів — потрібна повторна авторизація. Рішення: webhook замість OAuth для портальних додатків (webhook не протухає, але має права додатку, а не конкретного користувача).
Чому асинхронна обробка обов'язкова?
Бот-сервіс повинен відповідати на вебхук Бітрікс24 за 3 секунди. Інакше Бітрікс24 вважає запит неуспішним і повторює його — що призводить до дублів повідомлень. Асинхронна обробка в 10 разів знижує кількість дублів порівняно з синхронним підходом.
Правильна архітектура:
- Вебхук приймає запит, негайно повертає 200 OK.
- Задача кладеться в чергу (Redis Queue, RabbitMQ).
- Воркер обробляє задачу асинхронно, відповідає через imbot.message.add.
| Підхід | Час відповіді | Ризик дублів | Складність |
|---|---|---|---|
| Синхронний | <3 сек | Високий | Низька |
| Асинхронний | <1 сек | Низький | Середня |
Оцінка трудовитрат
| Компонент | Трудовитрати |
|---|---|
| Базовий бот (3-5 команд) | 16–32 ч |
| OAuth авторизація користувачів | 8–16 ч |
| Складні команди з агрегацією даних | 16–40 ч |
| Черга + асинхронна обробка | 8–16 ч |
| Деплой, моніторинг, тести | 8–16 ч |
Що входить у роботу?
- Повний цикл: аудит сценаріїв, прототипування, розробка, тестування, деплой.
- Документація по командам та експлуатації.
- Налаштування моніторингу та алертингу.
- Навчання адміністраторів.
- Гарантія 6 місяців на код.
Отримайте консультацію з архітектури вашого бота — наші інженери мають сертифікати 1С-Бітрікс та 5+ років досвіду в розробці ботів. Зв'яжіться з нами — ми оцінимо ваш проєкт за 1 день.







