Бот на Laravel, который объединяет клиентов и менеджеров через Telegram и ВКонтакте, скрывая личные аккаунты и маршрутизируя общение через темы.
По всем вопросам и предложениям писать сюда: https://t.me/pt_tg_support
- Пользователь отправляет сообщение боту.
- Бот находит или создаёт тему (топик) в Telegram-группе для этого клиента.
- Сообщение пересылается в соответствующую тему.
- Менеджеры отвечают в теме — бот отслеживает их сообщения и пересылает их обратно пользователю от своего имени.
- Поддержка сообщений из Telegram и ВКонтакте.
- Перенаправление сообщений в Telegram-группу для администраторов.
- Поддержка различных типов сообщений: текст, изображения, файлы, голосовые сообщения, контакты и т.д.
- Docker Compose сборка для быстрого развертывания.
- Интеграция с Grafana и Loki для мониторинга и логирования.
- Приватность: клиент всегда получает сообщение от бота, не зная, кто из менеджеров ему отвечает.
- Laravel
- Telegram Bot API
- Docker
- Docker Compose
- PostgreSQL
- Grafana
- Loki
- PgAdmin
- Redis
Все настройки описаны в разделе Wiki
- APP_URL — ссылка на ваш проект
- TELEGRAM_BOT_TOKEN — токен вашего Telegram-бота
- TELEGRAM_GROUP_ID — id группы в Telegram
- TELEGRAM_SECRET_KEY — ключ для проверки запросов от Telegram (напишите свой ключ!)
- VK_TOKEN — токен доступа к сообществу ВКонтакте
- VK_CONFIRM_CODE — строка подтверждения для Callback API
- VK_SECRET_CODE — секретный ключ для проверки подлинности запросов
Для генерации названия топика из шаблона необходимо добавить в .env файл параметр, который будет содержать шаблон названия.
TEMPLATE_TOPIC_NAME="{first_name} {last_name}"На данный момент доступны следующие переменные:
'id',
'email',
'first_name',
'last_name',
'username',В случае отсутствия данных, название темы сгенерируется в формате "#{chat_id}".
MIT. Подробнее — LICENSE.
