Все уроки | Уровень
ПРОФИ
0%
0 / 17

Видео урока скоро будет доступно

Бонусный модуль · ПРОФИ

Урок 11

Telegram-бот для мгновенных
уведомлений о заявках

Создадите Telegram-бота, получите токен и chat_id, и настроите мгновенные оповещения о новых заявках с формы вашего сайта.

2 часа ПРОФИ

Цели урока

После этого урока вы:

  • Поймёте, чем отличаются уведомления через GitHub Actions (урок 6) от уведомлений через Telegram Bot API (этот урок).
  • Создадите своего Telegram-бота через BotFather.
  • Получите токен и chat_id для отправки сообщений.
  • Дополните код отправки в Firebase (урок 4) функцией отправки уведомления в Telegram.
  • Настроите мгновенные оповещения о новых заявках.

Что нам понадобится

  • Ваш сайт с формой связи и кодом отправки в Firebase (урок 4).
  • Аккаунт в Telegram.
  • Доступ к DeepSeek (или другому AI) для генерации кода.

Важно: код формы с Firebase у вас уже готов — это то, что вы сделали в уроке 4. Сегодня мы добавим к нему отправку уведомления в Telegram.

Какие уведомления мы настроим

УведомлениеГдеЧто делаетДля кого
О деплоеУрок 6 (GitHub Actions)Присылает сообщение в Telegram, когда сайт обновился.Для разработчика / владельца сайта.
О заявкахЭтот урок (Telegram Bot API)Присылает сообщение в Telegram, когда пользователь заполнил форму.Для бизнеса / отдела продаж.

Это совершенно разные задачи. В уроке 6 мы использовали GitHub Actions — это автоматизация на стороне GitHub. В этом уроке мы используем JavaScript на стороне клиента (в браузере), чтобы отправлять запросы к API Telegram при отправке формы.

Как работает Telegram-бот для статического сайта?

Мы вызываем API Telegram через fetch из JavaScript на сайте:

  1. Пользователь заполняет форму.
  2. Данные сохраняются в Firebase (как в уроке 4).
  3. После успешного сохранения JavaScript отправляет POST-запрос к API Telegram.
  4. Telegram отправляет сообщение в ваш чат.

Главное: никакого сервера не нужно. Весь код — это обычный JavaScript на вашем сайте, как и код формы из урока 4.

Что нужно для работы?

  • Токен бота — выдаёт BotFather.
  • Chat ID — идентификатор вашего чата (можно получить через @userinfobot).

Оба значения — это просто длинные строки. Вы получите их на шаге 1 и подставите в промпт для DeepSeek — больше ничего делать вручную не нужно.

Шаг 1.1–1.2. Создание Telegram-бота

1.1. Найти BotFather:

  • Откройте Telegram и найдите в поиске @BotFather.
  • Напишите ему /start.

1.2. Создание бота:

  • Напишите /newbot.
  • Введите имя бота (например, «Уведомитель о заявках»).
  • Введите username бота (должен заканчиваться на bot, например, my_lead_notifier_bot).
  • Сохраните полученный токен (например, 123456789:ABCdefGHIjklMNOpqrsTUVwxyz).

Важно: токен — это пароль от вашего бота. Не показывайте его никому и не загружайте в публичный репозиторий.

Шаг 1.3. Получение chat_id

  1. Напишите своему боту любое сообщение (например, /start).
  2. Найдите в Telegram бота @userinfobot и напишите ему /start — он пришлёт ваш chat_id.
  3. Сохраните chat_id (например, 123456789).

Частая ошибка: если вы не написали своему боту сообщение первым, Telegram не разрешит ему отправлять вам сообщения. Напишите боту /start обязательно.

Шаг 2.1. Вспоминаем код из урока 4

В уроке 4 вы написали код, который отправляет данные формы (name, phone, email) в Firebase Firestore в коллекцию requests. Сейчас мы добавим к нему уведомление в Telegram.

Попросите DeepSeek показать, где именно находится это место:

«Открой код формы, который мы сделали в уроке 4: данные (name, phone, email) отправляются в Firebase Firestore в коллекцию requests. Покажи мне структуру этого кода и объясни, куда именно добавить уведомление в Telegram — после успешной записи заявки.»

AI объяснит структуру, а вы убедитесь, что у вас всё на месте.

Шаг 2.2. Добавляем отправку в Telegram

Теперь попросите DeepSeek добавить функцию, которая отправляет сообщение в Telegram. Подставьте в промпт ваши токен и chat_id:

«Добавь в мой JavaScript-код функцию отправки уведомления в Telegram. Токен бота: ТЕЛЕГРАМ_ТОКЕН, chat_id: ТЕЛЕГРАМ_CHAT_ID. Сообщение должно содержать имя, телефон и email из формы: "Новая заявка! Имя: ..., Телефон: ..., Email: ...". Используй fetch на https://api.telegram.org/bot<токен>/sendMessage с форматом HTML. Добавь обработку ошибок, верни результат — получилось или нет.»

Функция будет вызываться после успешного сохранения заявки в Firebase — попросите AI сохранить её в том же файле, где находится код формы.

Шаг 2.3. Интеграция с формой

Попросите DeepSeek связать отправку в Telegram с обработчиком формы, чтобы уведомление уходило сразу после сохранения заявки:

«Интегрируй функцию отправки в Telegram в обработчик отправки формы из урока 4. После успешной записи заявки в Firebase отправляй уведомление в Telegram. Если уведомление доставлено — покажи сообщение "Спасибо! Заявка отправлена, мы свяжемся с вами". Если заявка сохранена, но уведомление не доставлено — покажи предупреждение, что заявка всё равно принята. При ошибке сохранения — покажи сообщение об ошибке.»

Шаг 2.4. Где хранить токен и chat_id?

Важно: не храните токен открыто в коде, если ваш репозиторий публичный. Для учебного проекта можно оставить его в коде, но для реального — используйте переменные окружения или серверный прокси.

Что можно сделать прямо сейчас:

  • Вынести токен и chat_id в отдельный файл (например, config.js), который не публикуется.
  • Или использовать BotFather-токен в учебном коде, но не выкладывать его на GitHub.

Совет: для учебного проекта достаточно напоминания выше. Главное — не публикуйте токен в открытый репозиторий, иначе бота сможет контролировать кто угодно.

Шаг 3. Тестирование

  1. Запустите сайт через Live Server.
  2. Заполните форму и отправьте.
  3. Проверьте, пришло ли уведомление в Telegram.
  4. Если уведомление не пришло — проверьте консоль браузера (F12 → Console) на ошибки.

Частые ошибки:

  • Неправильный токен или chat_id.
  • Блокировка CORS (обычно Telegram API не блокирует, но если проблема — попробуйте с опубликованного сайта).
  • Бот не активен (напишите ему /start).

Шаг 4. Публикация и финальная проверка

  1. Закоммитьте и запушьте изменения на GitHub.
  2. Проверьте форму на опубликованном сайте.
  3. Убедитесь, что уведомления приходят.

Готово: теперь вы будете получать мгновенные уведомления о каждой новой заявке прямо в Telegram — с компьютера или телефона.

Домашнее задание

  1. Создайте Telegram-бота через BotFather и получите токен.
  2. Получите ваш chat_id.
  3. Добавьте код отправки уведомлений на ваш сайт (интегрируйте с формой).
  4. Протестируйте отправку заявок и проверьте, что уведомления приходят.
  5. Измените текст сообщения (добавьте дату, ссылку на сайт, эмодзи).
  6. Закоммитьте и запушьте все изменения.

Что мы узнали за урок

  • Как создать Telegram-бота и получить токен.
  • Как получить chat_id.
  • Как дополнить существующий код формы отправкой уведомлений в Telegram.
  • Как интегрировать уведомления с Firebase.

Главный итог: теперь вы будете получать мгновенные уведомления о новых заявках в Telegram — это экономит время и помогает быстро реагировать на запросы.

Все уроки Поделиться результатом Следующий урок

Дополнительные материалы: prompts-bonus.md, checklists-bonus.md