Как стать автором
Обновить

Telegram-бот на Laravel для клиентской поддержки через темы в группах

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров1.7K

Привет, Habr!

Хочу поделиться решением, которое упростило мне организацию поддержки пользователей через Telegram. Я написал Telegram-бота на Laravel, который работает как прослойка между клиентами и менеджерами, обеспечивая структурированную переписку внутри одной группы с использованием тем (топиков).

Репозиторий проекта (open source):
👉 https://github.com/prog-time/tg-support-bot

Зачем это нужно?

Если вы когда-либо пытались вести поддержку клиентов в Telegram, то знаете, как быстро всё превращается в хаос:

  • сообщения разбросаны по личным чатам,

  • историю сложно отследить,

  • один менеджер — один чат,

  • клиенты видят личные аккаунты команды.

Моё решение устраняет эти проблемы. Теперь вся переписка идёт в одной Telegram-группе, где для каждого клиента бот создаёт отдельную тему. Внутри неё менеджеры отвечают, а бот пересылает их сообщения пользователю от своего имени.

Как это работает?

  1. Клиент пишет боту в личку.

  2. Если это новое обращение — в группе создаётся отдельная тема с краткой инфой о клиенте и первым сообщением.

  3. Менеджеры отвечают в теме, бот пересылает ответы клиенту.

В результате:

  • переписка централизована и доступна всей команде;

  • клиент не видит аккаунты сотрудников;

Я создал достаточно гибкое решение, которое при желание можно кастомизировать, добавив новый функционал.

Название темы формируется из символа "#" и id пользователя.

У темы меняется иконка, в зависимости от последнего сообщения. Если последнее сообщение от клиента, то ставится иконка "облачко", а если оно написано со стороны администратора, то ставится "зелёная галочка".

Также вы можете получить информацию о пользователе с котором ведёте общение.Подобное сообщение отправляется при создание темы или после отправки команды /contact.

Для кого будет полезно данное решение?

Это решение подойдёт, если:

  • У вас небольшая команда и вы хотите распределить поддержку между несколькими менеджерами.

  • Вы делаете проект на ранней стадии и не хотите поднимать отдельную CRM.

  • Клиенты предпочитают писать в Telegram, а не в почту или через формы.

  • Вам важно, чтобы менеджеры не палили личные аккаунты.

  • Вы хотите запустить поддержку “сейчас”, без лишней бюрократии.

  • Вы ведёте платные консультации, техподдержку, продажи или получаете много входящих вопросов.

Безопасность

Бот не сохраняет содержимое сообщений, фото, файлов. Только технические ID, нужные для маршрутизации.

Как установить?

1) Клонируем проект:

git clone https://github.com/prog-time/tg-support-bot.git

2) Создаём Telegram-бота через BotFather.

3) Создаём приватную Telegram-группу с включёнными темами. Добавляем туда бота, с правами администратора.

4) Получаем ID группы (например, с помощью getmyid_bot).

5) Настраиваем .env:

APP_URL="https://your-domain.com"
TELEGRAM_TOKEN="your_bot_token"
TELEGRAM_GROUP_ID="your_group_id"
TELEGRAM_SECRET_KEY="your_custom_secret"

6) Устанавливаем вебхук:

GET https://your-domain.com/api/telegram/set_webhook

Готово. Теперь бот готов принимать сообщения!

Связь и поддержка

Если у вас возникнут вопросы по установке или доработке — пишите в Telegram

Если проект оказался полезен — поставьте ⭐ на GitHub

Спасибо за внимание! Буду рад фидбеку, идеям и PR'ам.

Теги:
Хабы:
+9
Комментарии5

Публикации

Работа

PHP программист
77 вакансий

Ближайшие события