Автопост в Telegram о начале стрима на Twitch’е – Mikulski
Наложение сайта

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

Предисловие

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

Автоматизаторы

Автоматизатор связывает разные приложения и веб-сервисы между собой, следит за событиями в них и позволяет составлять цепочки действий по принципу: “если случится это, тогда..”.
Например, вы публикуете пост в соцсети, это служит триггером для следующего события – ссылка на пост отправляется в чат мессенджера.
Вариативность и возможности просто огромные: при должной фантазии и понимании поставленных задач можно значительно облегчить себе жизнь за счет автоматизации процессов. Но важно понимать, что Автоматизаторы поддерживают далеко не все сервисы (в основном, только западные и самые популярные), а список возможных действий внутри них ограничен (например, одна соцсеть дает только читать свою ленту постов на наличие новых, но не позволяет ничего публиковать). Впрочем, если уметь в API и Вебхуки, то и это ограничение можно будет обойти (но это неточно).
Автоматизаторов достаточно много и большая часть из них заточена под решение бизнес-задач, а потому имеют только платные версии и не ориентированы на соцсети. Тем не менее, можно выделить два сервиса, которые наиболее дружелюбны к пользователю и с наличием бесплатного тарифного плана: IFTTT и Make (он же Integromat).
В конечном счете, я остановился на Make, потому как у IFTTT наблюдалась большая задержка между стартом стрима и публикацией поста в Telegram (примерно от 20 до 40 минут).

Создание Телеграм-бота

Сперва нам понадобится создать своего бота в Telegram и сделать его администратором нашего канала. Делается это легко и быстро:
В панели поиска мессенджера вводим ник BotFather и заходим к нему в чат. Это официальный сервис Telegram для регистрации пользовательских ботов. Будьте внимательны и не попадитесь на фейк-аккаунты. У нужного нам бота будет значок верификации и адрес @BotFather.

Пишем в чат команду, чтобы запустить BotFather:
/start
В ответном сообщении придет инструкция с перечнем всех доступных команд.
Даем команду на создание нового бота:
/newbot
В ответном сообщении попросят придумать имя для нашего бота.
Нужно написать в чат желаемое имя для бота, с условием, чтобы на конце была приписка “_bot” (или “_Bot”), например Mikulski_bot. Если имя уже занято, то вас попросят придумать другой никнейм.
После этого придет сообщение с токеном HTTP API – этот код нам понадобится при настройке автоматизатора.
Осталось только зайти в панель управления своего Telegram-канала; в поиске раздела “Администраторы” найти своего бота, добавить его и выдать необходимые права (в нашем случае, можно убрать все чекбоксы, кроме возможности публиковать сообщения):

Настройка Make

Регистрируем аккаунт на https://www.make.com – жмем кнопку Get Started Free (есть быстрая регистрация через учетку Google) и вписываем запрашиваемые данные: Email, никнейм, страна ( в списке нет РФ – можно выбрать Беларусь) и регион хостинга (EU или US – без разницы).
Далее будет еще одна анкета с выбором варианта ответа:

  • Что из приведенного ниже лучше всего описывает ваш род занятий? (мой вариант Other – другое)
  • В какой отрасли вы работаете? (мой вариант Other – другое)
  • Какого размера ваша организация? (мой вариант Just myself – только я)
  • Как бы вы описали свой опыт автоматизации рабочих процессов? (мой вариант I have no expierence with automation – нет опыта с автоматизацией)
  • Какую часть своей работы вы хотите автоматизировать? (мой вариант Social Media – соцсети)

На этом регистрация заканчивается и мы попадаем на панель управления, где жмем на кнопку “Create a new scenario” (создать новый сценарий):

Жмем на круглую кнопку с плюсом, чтобы добавить триггер и через строку поиска выбираем Twitch:

В выпавшем списке функций, нужно выбрать триггер “Watch Streams” (сигналит, когда стрим стартует или заканчивается):

Появится новое меню, где попросят ввести Вебхук и Подключение (привязанный аккаунт Twitch).
Т.к. у нас еще ни одного не создано, нажимаем Add (добавить) и в строке Webhook name меняем название (при желании), а в строке Connection (подключение) также нажимаем Add, меняем имя подключению, жмем Save и авторизуемся через Twitch, чтобы привязать свой аккаунт.

После создания Вебхука и Подключения нужно будет указать User/Channel ID: грубо говоря, канал за которым необходимо следить. Нужно вбить свой Twitch-никнейм и поиск сам определит ID-номер канала.
В контекстном меню Event Type, надо выбрать за каким событием следить:
When Specified Channel Starts a Stream – Когда указанный канал начинает стрим;
When Specified Channel Stops a Stream – Когда указанный канал останавливает стрим.
В нашем случае, нас интересует, естественно, первая графа.

Жмем Save, затем Ok и создаем второй модуль, нажав на кнопку с плюсом рядом с только что созданным.

По аналогии с предыдущими действиями, добавляем Telegram Bot и выбираем действие “Send a Text Message or a Reply” (отправить текстовое сообщение или ответ). Создаем подключение кнопкой “Add” и в строку Token вставляем тот самый код, который нам предоставил BotFather. Жмем “Save”.

  • В строку Chat ID надо ввести адрес Телеграм-канала, где следует публиковать оповещения в формате @название_канала.
  • В строке Text прописываем текст сообщения для публикуемого поста.
  • Parse Mode используется для определения верстки сообщения (Markdown или HTML). Если не понимаете, что это и как использовать – оставьте поле пустым.
  • Чекбоксом Disable Notifications можно отключить звуковое оповещение. То есть, если поставить значение “Yes”, то подписчики канала получат уведомление, но без звука.
  • Чекбоксом Disable Link Previews можно отключить превью изображения для ссылок в тексте, которое Telegram, по умолчанию, создает автоматически.

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

На всякий случай, находясь в режиме редактора, обратите внимание на секцию “Scheduling” (Расписание) внизу слева. По умолчанию, Twitch-триггер “Watch Streams” сразу устанавливает нужный режим “Immediately as data arrives” (Срабатывать сразу как только поступят данные). Но лучше дополнительно себя перепроверить, ведь есть и другие режимы: в определенные даты, единожды, каждый день и так далее.

Поздравляю!
Вы только что настроили автопост в Telegram, когда начинаете свой стрим на Twitch.

23 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии