Автоматическое оповещение в Telegram о начале стрима на Twitch

by SirJovas
15 минут чтения
Twitch Telegram Alert bot

Недавно задался вопросом, как добавить автоматические оповещения о начале стрима на Twitch в Telegram канал. Хотел сделать оповещение в виде сообщения с картинкой и кнопкой. Нашёл довольно простое решение. Можно воспользоваться сервисом для автоматизаций, например Make.com.

Итоговый результат будет выглядеть примерно так:

Рассмотрим как это сделать поэтапно.

Создаём Telegram-бота

Для начала нужно создать Telegram-бота и сделать его администратором нашего канала. Для этого в панели поиска Telegram вводим BotFather и переходим в чат с ним.

  • Пишем команду /start для запуска бота. В ответ получаем инструкцию и список доступных команд.
  • Используем команду для создания нового бота: /newbot
  • Следующим сообщением задаём название нашего бота латиницей.
  • Теперь задаём имя пользователя для бота. Оно обязательно должно содержать _bot в конце.

В ответ получаем сообщение о том что бот успешно создан, а также HTTP API токен. Он нам понадобится в дальнейшем.

Переходим в свой Telegram канал. Приглашаем в него созданного нами бота. Для этого нажимаем на название канала, Откроется окно Информация о канале. В нём нажимаем на значок Пригласить пользователя, как показано на следующей картинке. Вбиваем в поиске имя пользователя нашего бота и приглашаем его.

Снова открываем окно Информация о канале. Вызываем меню, как показано на картинке, и заходим в Управление каналом.

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

Больше в Telegram делать ничего не нужно. переходим к настройке автоматизации. Для этого воспользуемся сервисом Make.com. Можно использовать и другой сервис, например IFTTT, но я давно используй Make, поэтому выбрал именно его. Бесплатный тариф в этом сервисе включает две автоматизации (мы сделаем только одну) и 1000 операций в месяц. Для нашей задумки этого хватит.

Создаём сценарий в Make.com

Переходим по ссылке https://www.make.com/en/register. Указываем никнейм, почту, пароль, страну (РФ в списке нет. Я указывал Беларусь). Hosting Region – EU. Соглашаемся с Лицензионным соглашением и отказываемся от рассылки.

Заходим в указанный нами почтовый ящик, туда должно прийти письмо с подтверждением аккаунта. Переходим по ссылке в письме и авторизуемся на сайте. Видим небольшую форму с опросом. Указываем что-нибудь, например как на картинке.

После этого попадаем на главный экран. Жмём справа вверху Create a new scenario.

Жмём на огромную кнопку с плюсом в центре экрана и пишем в поиске Twitch. Кликаем на него.

В выпадающем списке функций ищем Watch Streams. Эта функция запускает действие когда указанный Twitch канал начинает или заканчивает стрим.

В появившемся меню нас просят указать Webhook. нажимаем кнопку Add.

Заполняем всё в открывшемся меню.

  • В строке Webhook name указываем название вебхука (можно оставить стандартное).
  • В строке Connection нужно создать подключение. Жмём кнопку Add, задаём название (можно оставить стандартное). Нажимаем кнопку Save.
  • После этого откроется окно авторизации Twitch. Авторизуемся и нажимаем кнопку Разрешить. В строке User/Channel ID нажимаем кнопку Serach, вводим название Twitch канала (наш никнейм если делаем для своего канала), жмём кнопку Ok. После этого строка User/Channel ID автоматически заполнится цифрами.
  • В строке Event Type выбираем When the specified channel starts a stream.
  • Нажимаем кнопку Save.

По итогу, у меня это окно выглядит так:

В очередном окне нажимаем Ok. С Twitch мы закончили.

Наводим курсор на значок Twitch и нажимаем появившуюся кнопку Add another module. Пишем в поиске Telegram Bot и выбираем его.

В появившемся меню ищем Send a Photo и жмём на него.

Начинаем заполнять открывшееся окно.

  • В строке Connection нажимаем кнопку Add. Вводим название подключения (можно оставить стандартное) и вводим Token который нам прислал BotFather в начале этой статьи (HTTP API Token). Нажимаем Save.
  • В строке Chat ID вводим имя канала в котором будем публиковать оповещение. Для этого снова идём в Telegram. Нажимаем на название канала и видим строку Ссылка. В поле Chat ID нужно ввести то что следует после t.me/ написав перед этим символ @.
  • Поле Message Thread ID оставляем пустым.
  • В строке Caption вводим текст сообщения которое будет приходить в наш Telegram канал, например “Хей! Стрим запущен, заходи!”.
  • В строке Send by выбираем HTTP URL.
  • В строку URL вставляем ссылку на нашу картинку, которую будем использовать для анонса. Ссылка должна быть прямой. Сервис куда можно залить картинку, можно найти по запросу Хостинг картинок с прямой ссылкой. За пример возьмём сайт https://ru.imgbb.com. Загружаем картинку. Получаем окно как будет на скриншоте ниже. Выбираем пункт как на скриншоте. Копируем ссылку. Из ссылки оставляем только подчёркнутое. именно то что находится между [img]….[/img].
  • Строку Parse Mode оставляем пустой.
  • В строке Disable Notification выбираем то что нам нужно. Если выбрать Yes сообщение придёт подписчикам без уведомления. На iOS не будет вообще никакого уведомления, на Android придёт уведомление без звука. Я выбрал Empty, то есть в моём случае сообщение придёт с уведомлением.
  • Чуть ниже нажимаем на кнопку Show advanced settings.
  • Строку Original Message ID оставляем пустой.
  • В строке Enter/Assemble the Reply Markup Field выбираем Enter the Reply Markup.
  • В строку Reply Markup вставляем или перепечатываем руками код приведённый ниже (в случае возникновения ошибки можете написать в Telegram или Discord):
{"inline_keyboard":
[[{"text":"Текст кнопки","url":"Ссылка на ваш twitch канал"}]]}
  • Строку Content Type оставляем пустой.

Нажимаем кнопку Ok.

Теперь нажимаем кнопки в левом нижнем углу экрана. Иконку Scheduling переключаем в режим ON, жмём на кнопку Run once (в виде кнопки Play), Сохранить (в виде дискеты).

Готово. При следующем запуске стрима на указанном вами Twitch канале, в указанный Telegram канал придёт сообщение с картинкой, текстом и кнопкой ведущей на ваш стрим.

Также вам может понравиться

Оставить комментарий