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

Если вам нужен бот для рассылки новых статей с вашего сайта, то эта статья тоже поможет вам, даже если у вас сайт сделан на любом движке (Drupal, Joomla, 1С-Битрикс или что-то другое).

Кроме того, эта инструкция дает представление о том, как можно настроить автоматическую публикацию новостей из Twitter, Facebook, Instagram, YouTube в ваш Телеграм-канал.

Оказывается, все это не так уж и сложно! Любой человек может сделать это и для этого не нужно никаких особенных технических знаний. Просто следуйте инструкции и все.

Шаг 1. Создаем канал в Телеграме для своего блога (сайта)

Откройте меню Телеграм в мобильном приложении, нажав на три горизонтальные полоски:

Выберите в открывшемся меню пункт “Создать канал”:

Далее там все очень просто. Введите имя канала, его описание и добавьте логотип канала.

Кстати, реальный адрес моего канала, это – @wilhardonlinebusiness, вы можете найти его в Телеграме, посмотреть, как у меня там все сделано, и подписаться на него.

Шаг 2. Создаём бота в Телеграм

Бот в Telegram создается при помощи другого бота, который называется BotFather (“Папа Ботов” – в переводе с английского).

Введите в строке поиска Телеграм @BotFather и откройте бота.

Введите команду /newbot, после этого Папа Ботов предложит вам ввести имя, которое будет отображаться в списке контактов, и адрес. Например, «Бот блога wilhard.ru» с адресом «wilhard_bot». Имя бота обязательно должно заканчиваться нижним подчеркиванием и словом bot: «_bot»

Если адрес не занят, а имя введено правильно, BotFather пришлет в ответ сообщение с токеном — «ключом» для доступа к созданному боту. Его нужно сохранить и никому не показывать. Даже вашей жене или мужу)… Никому! Шутка… Любимым можно показывать.

Через BotFather вы также сможете добавить аватарку для бота, описание и прочее.

Шаг 3. Добавляем созданного бота в администраторы вашего канала в Телеграме

Теперь необходимо открыть ранее созданный вами канал, войти в настройки и добавить вновь созданного бота в администраторы. Для поиска бота можно использовать его адрес. Например, «wilhard_bot»

Шаг 4. Создаем RSS-канал для нашего блога (сайта)

RSS – это определенный формат, в котором публикуются статьи. Чтобы передавать статьи с вашего сайта в Телеграм, необходимо сначала трансформировать их в формат RSS, таким образом вы создадите RSS-канал.

Обычно это совсем несложно. Например, для сайтов на WordPress RSS-канал создается автоматически и чтобы получить его адрес, просто добавьте к адресу вашего сайта /feed/: site.ru/feed/. Например, адрес RSS-канала моего блога: wilhard.ru/feed/.

Шаг 5. Публикуем содержимое RSS-канала в Телеграм-канал вашего сайта

Последний этап — научить нашего бота отправлять новые статьи с блога (сайта) в созданный нами канал. Для этого мы будем использовать популярный сервис автоматизации IFTTT.

IFTTT расшифровывается как “If This Then That”, что в переводе с английского означает “Если это тогда то”.

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

Переходим в раздел IFTTT “My Applets”, нажимаем на кнопку “New Applet“:

и далее нажимаем на ссылку “This”:

Находим в списке функций триггер Feed, New feed item и указываем URL-адрес нашей RSS-ленты.

Кстати, при помощи сервиса IFTTT вместо RSS-ленты можно отслеживать появление новых записей в Twitter, Facebook, Instagram, YouTube и во многих других сервисах — для каждой функции в IFTTT предусмотрены отдельные модули. Кстати, на момент написания этой статьи там нельзя было отслеживать публикации в VK. Надеюсь, такая возможность появится в будущем. Просто выберите вместо RSS соответствующий модуль.

Теперь переходим к следующему шагу — выбираем действие, которое будет выполняться при обнаружении новой записи в RSS.

Нажимаем на “That”:

и ищем Webhooks, “Make a web request” — с помощью этого модуля можно отправлять запросы к любым сервисам. В нашем случае — к боту в Telegram.

В открывшейся форме в поле URL нужно указать ссылку https://api.telegram.org/botТОКЕН/sendMessage, подставив в ссылку вместо botToken, токен, сгенерированный при создании нами Телеграм-бота.

Метод укажите POST, тип контента – application/json.

Вот, как это все настроено у меня:

Body — в этом поле указывается, в какой Телеграм-канал нужно отправить сообщение и что в нём должно быть написано:

{“chat_id”:”@wilhardonlinebusiness”, “text”:”{{EntryTitle}} {{EntryUrl}}”} {{EntryImageUrl}}

  • chat_id — адрес канала, в который необходимо отправить сообщение. При помощи этого поля одного бота можно подключить сразу к нескольким каналам.
  • text — содержание сообщения. Например, заголовок статьи из RSS (EntryTitle), ссылка (EntryUrl) и картинка (EntryImageUrl). Список доступных опций можно посмотреть по кнопке Ingredient.

У меня именно такие настройки, и бот исправно отправляет новые посты с моего блога в Телеграм-канал. У триггера в IFTTT может быть задержка, поэтому статьи, появившиеся в RSS-канале, могут отправляться в Telegram не сразу, а спустя 30-60 минут. Но это теоретически. У меня сообщение об опубликованных новых статьях сразу же появляется в Телеграме, мгновенно!

В каком виде выводятся статьи у меня, смотрите в моем Телеграм-канале @wilhardonlinebusiness.

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

Единственное, с чем я пока не разобрался, – это как форматировать тексты, которые публикуются в канале. Хотелось бы научиться настраивать шрифты, их размер и выводить всякие красивые иконочки. Возможно, в будущем разберусь и напишу об этом. Если же вы уже разобрались, как это делается, пожалуйста, поделитесь своим опытом в комментариях.

comments powered by HyperComments
1 Star2 Stars3 Stars4 Stars5 Stars (6 голосов, среднее: 5.00 из 5)
Loading...