главный канал кластера
Разработка бота для телеграм: что там действительно приходится строить
Телеграм отдаёт вам окно диалога и приём сообщений. Всё остальное — состояние, данные, интеграции и поведение при сбое — ваша сторона, и именно она стоит денег.
Пишут этот запрос по-разному: «разработка бота телеграм», «разработка телеграмм бота», «нужен тг-бот». Задача за всеми тремя написаниями одна и та же — сделать так, чтобы часть работы компании происходила прямо в мессенджере, где клиент и сотрудник и так проводят день. Разница только в том, что именно должно там происходить, и вот от этого зависит цена.
Первое, что стоит понять про телеграм: он даёт немного. Со стороны платформы вы получаете доставку сообщений, кнопки, вложения, приём платежей через подключённого провайдера и встроенное мини-приложение, если интерфейса кнопками не хватает. Всё остальное живёт на вашей стороне: кто этот человек, на каком шаге он остановился три дня назад, что ему уже отвечали, какой у него заказ в вашей системе и что делать, если ваша система в этот момент не ответила. Бот без этой части — красивая менюшка, из которой заявки приходят в чат и там же теряются.
Второе — состояние диалога. Мессенджер не помнит контекст за вас: каждое сообщение приходит отдельным событием, и то, что пользователь на середине оформления заказа, знает только ваша база. Отсюда половина обычных дефектов: бот, который забывает шаг после перезапуска; бот, который присылает одно и то же дважды, потому что вебхук доставился повторно; бот, который упал в момент оплаты и оставил заказ в состоянии, которого никто не проектировал.
Третье — то, за чем к боту приходят на самом деле. Заявка должна оказаться в CRM, заказ — в учёте, уведомление — у нужного сотрудника, а не «в общем чате». Это обычная интеграционная работа с очередями, повторными попытками и защитой от дублей: если внешняя система молчит, сообщение не исчезает, а ждёт и уходит позже. Эту часть я делал в партнёрской платформе: фоновые задачи с повторными попытками и обмен, в котором событие не имеет права потеряться. Канал там был другой, механика ровно эта.
Четвёртое — правила площадки, о которые спотыкаются почти все. Написать первым можно только тому, кто сам начал диалог; массовая рассылка по собранной базе здесь не работает и заканчивается жалобами и ограничениями. Частота отправки ограничена, длинные операции в чат не помещаются, а любые «отправить всем подписчикам акцию» упираются в терпение подписчиков быстрее, чем в лимиты платформы. Всё это влияет не на код, а на сценарий: что бот шлёт сам, что по запросу и что не шлёт никогда.
Что здесь обычно ломается
- Заявки из бота приходят в чат и живут там, пока кто-нибудь не перенесёт их руками.
- Пользователь возвращается через день, а диалог начинается заново с первого шага.
- Повторно доставленный вебхук создаёт второй такой же заказ.
- Внешняя система недоступна — сообщение теряется молча, и об этом узнают от клиента.
- Сценарий разросся до тридцати веток, и никто не помнит, что происходит в половине из них.
- Бот сделан на конструкторе, а нужная интеграция в конструкторе не предусмотрена.
Что телеграм даёт из коробки, а что строится на вашей стороне
| Задача | Что даёт платформа | Что делается на вашей стороне |
|---|---|---|
| Показать меню и принять ответ | Кнопки, команды, вложения | Логика шагов и валидация введённого |
| Помнить, на чём остановились | Ничего | Хранение состояния диалога в вашей базе |
| Не создать заказ дважды | Ничего, доставка возможна повторно | Ключ идемпотентности на каждое действие |
| Принять оплату | Приём платежа через подключённого провайдера | Договор с провайдером, сверка, статусы, возвраты |
| Сложный экран вместо кнопок | Мини-приложение внутри мессенджера | Само приложение и его связь с вашими данными |
| Отдать заявку в CRM или учёт | Ничего | Интеграция, очередь, повторы, разбор ошибок |
| Пережить недоступность внешней системы | Ничего | Фоновые задачи, отложенная доставка, алерты |
Что входит
- сценарий диалога и его состояние, переживающее перезапуск и паузу в неделю
- приём заявок и заказов с проверкой введённых данных
- передача данных в CRM, учёт или вашу систему через API
- уведомления сотрудникам по событиям, а не в общий чат
- идемпотентность: повторная доставка не создаёт вторую запись
- очереди, повторы и отложенная отправка при недоступности систем
- мини-приложение внутри мессенджера, когда кнопок не хватает
- админ-часть: кто что нажал, что ушло дальше, где встало
Для кого
компаниям, у которых клиенты и сотрудники уже живут в мессенджере, а заявки и заказы всё ещё переносятся оттуда руками.
Услуга: Интеграции и автоматизация Стоимость: Чат-бот Механика процесса: Обработка заказов Кейс по теме: Партнёрская PRM-платформа с AI-подбором и копайлотом
Частые вопросы
- Сколько стоит разработка телеграм-бота?
- Проект начинается от 130 000 ₽, первая рабочая версия выходит за 2 недели. Цену двигает не число кнопок, а то, с чем бот обязан разговаривать: сценарий с заявкой в вашу почту и бот, который создаёт заказ в учётной системе, проверяет оплату и умеет откатить незавершённое, отличаются в разы. Разбор сметы по слоям — на странице стоимости.
- Можно собрать на конструкторе и не платить за разработку?
- Для сценария «показать меню, собрать три поля, прислать заявку на почту» — можно и нужно, это дешевле любой разработки. Разработка начинается там, где нужна ваша база, ваша логика прав, ваша интеграция или поведение при сбое: конструктор закрывает лёгкую часть задачи, а упирается ровно в ту, ради которой бота обычно и заводят.
- Где он будет жить и кто платит за хостинг?
- Бот — это обычный серверный процесс, ему нужен хостинг, домен для вебхука и мониторинг. Разворачиваю в вашей инфраструктуре или в вашем облачном аккаунте, доступы и ключ бота остаются у вас. Ценник инфраструктуры для такой задачи обычно на уровне «дешевле одного обеда в месяц», но платит его владелец аккаунта, а не подрядчик.
- Нужно ли регистрировать бота как обработчика персональных данных?
- Если он собирает телефоны, имена или адреса — вы обрабатываете персональные данные, и это не зависит от того, что канал чужой. Практическая часть: согласие в момент сбора, минимум хранимых полей, свой сервер для хранения. Сами сообщения при этом всё равно проходят через инфраструктуру мессенджера, и в контуре с жёсткими требованиями это иногда становится аргументом против канала.
- Что если телеграм заблокируют или он изменит правила?
- Поэтому логика не живёт внутри мессенджера. Сценарий, состояние и данные лежат на вашей стороне, а канал — сменная деталь: добавить второй мессенджер или виджет на сайте означает написать другой адаптер, а не другой продукт. Именно так это и стоит проектировать с первого дня, даже если второй канал никогда не понадобится.
- Можно доработать бота, которого делал другой подрядчик?
- Смотрю на две вещи: есть ли доступ к исходникам и где живёт состояние диалога. Если код отдан и данные в вашей базе — доработка обычная. Если бот собран в чужом кабинете конструктора, «доработка» на деле означает переписывание с переносом активных диалогов, и честнее назвать это так сразу, чем обнаружить на второй неделе.
- Чем мини-приложение отличается от обычного бота?
- Это полноценный веб-интерфейс, который открывается внутри мессенджера: экраны, фильтры, формы — всё, что не помещается в кнопки. Бот при этом никуда не девается, он остаётся входом и каналом уведомлений. Разумный критерий выбора — число решений, которые человек принимает до результата: два-три помещаются в кнопки, десяток требует экрана.
Есть разговор, который повторяется каждую неделю?
Опишите его — скажу, закрывается ли он сценарием, нужен ли там ИИ и во что это выльется по срокам и деньгам.
Обсудить проект