Модуль для Discord

Уведомления Twitch

У анонса стрима очень короткий срок годности.

Добавить бота бесплатно

Без прав администратора. Настройка в веб-панели.

Зачем это нужно

Тот, кто прочтёт его, когда трансляция давно кончилась, уже не кликнет, а в следующий раз не станет и читать. Именно на этом ломается ручной анонс: ты в игре, в разговоре, в потоке, и в этот момент никому не приходит в голову набрать строчку в Discord. Бот берёт на себя это одно движение и делает его надёжно. Он смотрит, идёт ли эфир на твоём канале Twitch, и выпускает сообщение, пока оно ещё чего-то стоит, вместе с названием и игрой, о которой сейчас речь.

Как это выглядит в жизни

Ты вписываешь свой ник на Twitch, выбираешь канал в Discord для сообщения и указываешь, кого пингнуть при выходе в эфир: идентификатор роли, @everyone, @here или никого. Дальше всё идёт без тебя. Каждые три минуты бот спрашивает Twitch, и как только там идёт трансляция, сообщение уже в канале. Название стрима, игра и число зрителей попадают во встраиваемое сообщение через подстановки: {streamer}, {title}, {game}, {viewers}. К этому добавляются аватар стримера как маленькая картинка, превью эфира как большая и кнопка, ведущая прямо на канал. Сменишь игру или название посреди эфира, и бот подправит уже опубликованное сообщение, а не пришлёт второе.

Команды этого модуля

  • /social

Что можно настроить

  • Канал Twitch
  • Discord-канал для оповещения о стриме
  • Упоминание роли
  • Текст над встраиванием
  • Заголовок эмбеда
  • Описание эмбеда
  • Подвал
  • Цвет эмбеда
  • Миниатюра (аватар стримера)
  • Большое превью (стрим)
  • Показывать отметку времени
  • Кнопка «Смотреть на Twitch»
  • Автообновление при смене названия/игры

На что обратить внимание

Самое важное в панели не написано: Twitch отвечает только тогда, когда на стороне сервера сохранены доступы к его интерфейсу. Если их нет, бот ничего не находит и молчит; /social status скажет напрямую, есть они или нет. Второе касается упоминания: @everyone при каждом эфире это кратчайший путь к тому, чтобы канал заглушили. Роль, которую человек берёт сам, попадает ровно в тех, кто хочет знать. Третье касается такта: проверка идёт раз в три минуты, значит сообщение может прийти через пару минут после включения. Так задумано, это не поломка. Не объявляй вдобавок вручную, иначе в итоге висят оба. И четвёртое: если посреди эфира оборвётся связь и ты стартуешь заново, Twitch посчитает это отдельной трансляцией. Бот тогда сообщит второй раз, потому что видит новый идентификатор. И напоследок мелочь с большими последствиями: если не заполнено одно из двух обязательных полей (ник на Twitch или целевой канал), модуль не делает ровно ничего и ни на что при этом не жалуется.

Как работает модуль

Твоё имя пользователя Twitch (или URL канала). Бот проверяет каждые несколько минут, идёт ли трансляция на этом канале.

Выберите канал, в котором публикуется уведомление о трансляции (выпадающий список после загрузки каналов).

Произвольный текст над эмбедом (упоминание роли добавляется автоматически в начало). Плейсхолдеры см. ниже.

Пусто = автоматический заголовок. Плейсхолдеры: {streamer} {title} {game} {viewers}

Плейсхолдеры: {streamer} {title} {game} {viewers} {url} {thumbnail}

Настройка в три шага

  1. Включи модуль «Twitch» в панели и впиши свой ник на Twitch или адрес канала.
  2. Выбери канал в Discord для анонса: текстовый или анонсовый, в котором боту разрешено писать.
  3. Задай упоминание: впиши идентификатор роли, @everyone или @here и подтверди клавишей Enter, либо оставь пустым.
  4. Настрой оформление по вкусу и отправь пробное сообщение через /social test → Twitch Live.

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

Выполни /social status. Если там сказано, что доступы к Twitch отсутствуют, бот вообще не может обратиться к Twitch: их задаёт на стороне сервера тот, кто держит эту установку, а не ты в панели. Если же там показаны твой ник и целевой канал, проверь, текстовый ли это канал или анонсовый и разрешено ли боту там писать.

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

Да. Заголовок, описание, нижняя строка и текст над сообщением свободны; через {streamer}, {title}, {game}, {viewers}, {url} и {thumbnail} ты подтягиваешь настоящие данные эфира. Цвет, отметку времени, аватар, превью и кнопку включаешь по отдельности. Если оставить заголовок и описание пустыми, бот подставит свой вариант.

Ничего. Бот обезвреживает упоминания в значениях, пришедших извне, а название стрима как раз таким и является. Написанное там @everyone останется читаемым, но никакого уведомления не вызовет. Звонит только то, что ты сам вписал как упоминание.

Почему сообщения нет, хотя я в эфире?

Выполни /social status. Если там сказано, что доступы к Twitch отсутствуют, бот вообще не может обратиться к Twitch: их задаёт на стороне сервера тот, кто держит эту установку, а не ты в панели. Если же там показаны твой ник и целевой канал, проверь, текстовый ли это канал или анонсовый и разрешено ли боту там писать.

Как быстро приходит сообщение после включения?

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

Могу ли я написать весь текст сам?

Да. Заголовок, описание, нижняя строка и текст над сообщением свободны; через {streamer}, {title}, {game}, {viewers}, {url} и {thumbnail} ты подтягиваешь настоящие данные эфира. Цвет, отметку времени, аватар, превью и кнопку включаешь по отдельности. Если оставить заголовок и описание пустыми, бот подставит свой вариант.

Что будет, если в названии стрима стоит пинг?

Ничего. Бот обезвреживает упоминания в значениях, пришедших извне, а название стрима как раз таким и является. Написанное там @everyone останется читаемым, но никакого уведомления не вызовет. Звонит только то, что ты сам вписал как упоминание.