Погода в Telegram по расписанию: шаблон, который присылает температуру в чат

Погода в Telegram по расписанию приходит из готового шаблона nana800: таймер запускает схему, блок запроса берёт данные из API Яндекс Погоды, а бот присылает в чат название города и текущую температуру. Нужны токен бота от @BotFather и свой ключ API Яндекс Погоды, код писать не нужно. Баланс каждый месяц бесплатно пополняется до 350 ₽, карта для старта не нужна.

Собрать в конструкторе
Схема шаблона «Погода в Telegram (Weather info)» в конструкторе nana800

Цепочка блоков

  1. 1

    Триггер

    «button» запускает схему вручную, чтобы проверить сообщение, не дожидаясь расписания. Кнопка бесплатная.

  2. 2

    Триггер · Таймер по расписанию

    «time internal» запускает схему по расписанию. В шаблоне это начало каждого часа по московскому времени, расписание меняется полями секунды, минуты, часа, дня и месяца.

  3. 3

    Действие · HTTP-запрос

    «request» отправляет GET-запрос к API Яндекс Погоды. В адресе стоят координаты Амстердама, а в заголовке X-Yandex-Weather-Key пример ключа, который нужно заменить своим.

  4. 4

    Действие · Отправка сообщения в Telegram

    «Telegram message send» присылает в чат название города и текущую температуру из ответа погоды, а отдельным сообщением точку на карте. Токен бота и ID чата пустые, их вписываете вы.

Для каких задач подходит

  • Утренняя погода в рабочий чат курьеров, строителей или организаторов уличных мероприятий
  • Погода в Telegram-канал турбазы, кафе с летней верандой или городского сообщества
  • Предупреждение в чат, когда температура опускается ниже нуля: перед отправкой ставится блок «condition»
  • Основа для любой рассылки данных из внешнего API по расписанию, например курсов валют или статусов заказов

Как настроить

  1. 1

    Создайте схему из шаблона

    В конструкторе откройте «Готовые решения», найдите шаблон «Weather info» и нажмите «Использовать». Выберите проект и схему, где его создать, и нажмите «Создать».

  2. 2

    Вставьте свой ключ API Яндекс Погоды

    API - это способ, которым программа получает данные у сервиса, а ключ открывает к нему доступ. Ключ выдаёт Яндекс в сервисе API Яндекс Погоды, условия и лимиты бесплатного доступа задаёт он же. В блоке «request» вставьте ключ в заголовок X-Yandex-Weather-Key вместо примера из шаблона.

  3. 3

    Укажите свой город

    В адресе запроса замените числа после lat= (широта) и lon= (долгота) на координаты своего города, их показывают Яндекс Карты при нажатии на точку. В блоке «Telegram message send» впишите ту же широту в поле «Широта», а долготу в «Долготу», или очистите оба поля, если точка на карте не нужна.

  4. 4

    Подключите бота

    В блоке «Telegram message send» вставьте токен бота от @BotFather и ID чата, его покажет @getmyid_bot. Текст сообщения в шаблоне на английском: перепишите его по-русски и оставьте в нём подстановки города и температуры из блока «request».

  5. 5

    Задайте расписание

    В триггере «time internal» выберите время запуска. Час 8 и минута 0 дают сообщение каждый день в 8:00, звёздочка в поле часа - каждый час. Проверьте часовой пояс: по умолчанию стоит московское время.

  6. 6

    Включите схему и проверьте

    Нажмите «Start» в своём боте, включите схему и нажмите кнопку в триггере «button»: сообщение придёт сразу. Если температуры нет, откройте результат блока «request» в истории запусков, там ответ сервиса погоды. Когда всё пришло, оставьте схему включённой, и погода будет приходить по расписанию. Пока схема включена, она стоит 0,42 ₽ в час.

Сервисы в шаблоне

  • Расписание

    Запускайте схемы по расписанию без кода: каждую минуту, каждый день в нужный час, по дням недели или один раз в точное время. Бесплатный баланс каждый месяц.

  • HTTP-запрос

    Отправляйте HTTP-запросы к любому API без кода: GET, POST, PUT, PATCH и DELETE с заголовками и телом в JSON. Бесплатный баланс каждый месяц, карта не нужна.

  • Telegram

    Соберите Telegram-бота без кода: ответы на сообщения, кнопки, заявки и уведомления в личку, группу или канал. Бесплатный баланс каждый месяц, карта не нужна.

Частые вопросы

Каждый запуск по расписанию - это три запуска базового блока: таймер, запрос погоды и отправка сообщения. 1000 запусков базового блока стоят 100 ₽, кнопка для проверки бесплатная. Включённая схема стоит 0,42 ₽ в час. Баланс каждый месяц бесплатно пополняется до 350 ₽, карта не нужна. Схема с таймером включена круглосуточно, поэтому большая часть этой суммы уходит на часы её работы.

Ключ выдаёт Яндекс в сервисе API Яндекс Погоды. В шаблоне стоит пример, а не настоящий ключ, поэтому замените его своим в заголовке X-Yandex-Weather-Key блока «request». Сколько запросов бесплатно и сколько стоит больше, решает Яндекс, nana800 этот ключ не оплачивает.

Да. Блок «request» отправляет запрос на любой адрес с https://. Поменяйте адрес и заголовки по документации нужного сервиса погоды, а в тексте сообщения подставьте поля его ответа: они лежат в body блока «request».

Да. В ответе API Яндекс Погоды есть и другие данные, например ощущаемая температура, ветер и прогноз на следующие дни. Во включённой схеме нажмите кнопку для пробного запуска, откройте результат блока «request», найдите нужные поля в body и подставьте их в текст сообщения.

Добавьте бота в группу или сделайте его администратором канала и впишите в «ID чата» ID группы или канала: он начинается с -100, его покажет @getmyid_bot. Для публичного канала подойдёт его имя через @.

В личку бот пишет только тем, кто нажал у него «Start», а в канале он должен быть администратором. Если ключ погоды неверный, сервис ответит ошибкой, и вместо города и температуры в сообщение подставится undefined: ответ сервиса виден в результате блока «request». Таймер срабатывает только во включённой схеме.

Соберите первую схему бесплатно

Регистрация бесплатная, карта не нужна. Каждый месяц баланс бесплатно пополняется до 350 ₽, этого хватает примерно на 3 500 запусков простых блоков.

Собрать в конструкторе