Боты на твиче

Вопрос к стримерам

Есть у меня один вопрос для начинающих стримеров, если есть такие на этом форуме.
Было ли у вас такое же или нет?
Суть моей ситуации в том, что примерно в середине сентября, когда у меня было ~150 фоловеров на твиче, у меня начался дикий(относительно) прирост подписчиков. Примерно по 20 в день. Иногда доходило до 40. Как только мой онлайн на стриме переваливал за 10, начинались постоянные фоловы от людей, которых даже не было на стриме в этот момент.

Я знаю, что в малопопулярных играх твич сам накручивает подписчиков для «стимуляции стримеров», но там приходят именно боты, которые за 10 сек фоловятся на 60 разных каналов с разными языками. Я же время от времени чекал своих «мертвых фоловеров» и это были обычные люди. С папечем сильвером и прочими ру стрмиерами в подписках.

Одна подруга сказала мне, что это возможно от какого то совмещения фейсбука и твича. Мол, когда смотришь с фейсбука стрим, то автоматом фоловишься на 10 похожих каналов. Но это тоже как то странно.

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

MooBot – установка бота на twitch

Главная задач, которую будет выполнять бот на вашем твич канале это модерирование чатом. Также он реагирует на команды, прописанные в чате пользователями и для рассылки информации. MooBot доступен в автоматическом режиме на официальном сайте twitch.

Чтобы установить MooBot на вашем канале нужно:
Перейти на сайт twitch.moobot.tv.

Скриншот с сайта twitch.moobot.tv

Теперь жмём «join», прописываем в чате — «/mod moobot», а затем «!moobot moderate».

Скриншот с сайта twitch.moobot.tv

× Информация! Назначение бота может занять некоторое время, так что придется подождать пару минут.

Скриншот с сайта twitch.moobot.tv

Главное меню сайта состоит из таких вкладок:

  • Features — Настраивание разных функций бота
  • Commands — Формирования специальных команд для бота и извещений в чате
  • Spam Filters — Опции сообщений в чате, устранение спама и модерирование чатом
  • Regulars — Регулятор пользователей в чате.
  • Editors — Допуск к полным опциям для бота
  • Contribute — Вспомогательные возможности (платные услуги)
  • Misc — Оповещения
  • Guided Tour — Гайд по сайту

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

Теперь, чтобы бот правильно работал в роли модератора, нужно настроить вкладку — «spam filters».
Заходи в «Spam filter settings». Она отвечает за полную настройку, установку и редактирования всех фильтров для чата и бота.

Скриншот с сайта twitch.moobot.tv

Тут можно настроить такие виды фильтров:

  • Excessive use of caps — Запрет на излишнее использование заглавных букв в предложении. Тут можно настроить сообщение для нарушителя, а также время блокировки чата.
  • Banned words — Запрет на слова, которые вы прописываете в настройках самого твича. Чаще всего запрещают слова не нормативной лексики.
  • Excessive use of emotes — Запрет на спам смайлами. Настраивается по аналогии как выше в предыдущих вкладках.
  • Fake purges — Устранение фальшивых уведомлений в чате.
  • Links — Фильтрация и удаление ссылок, которые вы можете добавить настройки твича.
  • Twitch memes — Удаление всех бессмысленных сообщений.
  • Spamming — Фильтрация сообщений с одинаковыми словами.
  • Excessive use of symbols — Устранение уведомлений с большим количеством схожих символов.
  • Long messages — Допустимый максимум символов в 1-ом сообщении.

Это основные фильтры, которые требуется настроить. Также можно заглянуть в меню:

  • Blacklisted phrases — Перечень запрещённых слов и фраз.
  • General settings — Вспомогательные опции.
  • Whitelisted links — Разрешенные ссылки.

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

Скриншот с сайта twitch.moobot.tv

Теперь стоит обратить особое внимание на добавление команд в чате. За него отвечает раздел «Commands». В нем можно выбрать вкладку «Command List». Эта вкладка помогает создавать и редактировать различные команды, которые будут присутствовать в чате трансляции. Все команды можно настроить в окне настроек, а пользователи будут писать их в чате твича. Используемые команды лучше всего добавлять на видные места, допустим в информацию под плеером на твиче.

Скриншот с сайта twitch.tv

Скриншот с сайта twitch.moobot.tv

Также команды можно ставить на определенное время или по таймеру. За эту работу отвечает вкладка «Command timers». Настроить ее достаточно просто. Вначале создаётся команда в «Command List», а позже выставляете ее как оповещение в определенное время или с промежутком допустим 5 минут. Это могут быть: страницы ваших социальных сетей, ютуб каналов, донат и многое другое.

Еще одной полезной настройкой для команд является — «Command aliases». С помощью неё можно совмещать одну команду под несколькими названиями. Пример: у вас есть команда !twitter которая показывет адрес вашего твиттер и !facebook которая показывает адрес фесбук соответственно, привязать вызов обоих эти команды можно командой !social.

Существуют еще настройки различных команд для бота, которые нужно создавать самому. Они создаются с помощью различных формул. Благодаря им можно создать игры, уникальные команды, фишки и многое другое для чата. Такие формулы создают уже более опытные пользователи, которые смогли разобраться в основных функциях программы.

Теперь посмотрим раздел features. Этот раздел отвечает за развлечения на вашем канале. Тут есть как платные функции, так и бесплатные. Основное их предназначение это музыкальное сопровождение или звуковые оповещения, приветствие новых пользователей, переименование бота, игры и многое другое. Настроить все функции можно индивидуально на свое усмотрение.

Скриншот с сайта twitch.moobot.tv

  • Chat follower notifications — Бот приветствует новеньких подписчиков. Но это функция платная, приобрести ее можно за очки, которые покупаются в разделе Contribute.
  • Song requests — Заказ музыки на стриме. С помощью ссылок на ютубе, юзере сумеют выбирать для себя музыку. Более подробно настроить функцию можно в окне Song requests filtering.
  • Detect new chatters — Приветствие новых зрителей, также платная функция.
  • Custom username in chat — Возможность переименовать бота. Как и предыдущие функции, она платная.
  • Automatic 24/7 channel hosting — Автоматизированный хост.
  • Chat subscriber notifications — Извещение о коммерческих подписчиках, в случае если имеется партнерская программа.
  • Join priority — Преимущество на бота.
  • Twitch stream widget — Удобный виджет, который может сменить игру, изменить наименование чата и добавить рекламу.
  • Polls — Голосования в чате.
  • Raffles — Приколы в чате.
  • Automatic Twitch commercials — Рекламные объявления с интервалом.
  • Twitch stream commands — Удобный виджет, который может поменять игру, изменить наименование чата и добавить рекламу для модератора.
  • Fun chat commands – игры и развлечения для чата. Это очень интересная и полезная вкладка, которая позволит добавить в чат увлекательные развлечения. Допустим, когда на стриме идет перерыв или время для рекламы. Во вкладке доступны такие игры: магический шар, русская рулетка, ритуальное убийство в чате и любовная совместимость. Все игры можно настроить в настройках на ваше усмотрение.
  • Shoutout chat command — Пиар 1-го из пользователей чата.
  • Twitch subscriber features — Сведения о платных подписчиках.
  • Dashboard follower notifications — Извещение о подписчиках.
  • Dashboard subscriber notifications — Извещение о платных подписчиках.

Каждая команда в этом меню очень просто и легко настраивается. В первую очередь следует обратить внимания на «Fun chat commands», «Chat follower notifications», «Detect new chatters». Эти функции лучше активировать и сделать активными в чате. Так можно будет привлечь гораздо больше зрителей и не только благодаря стриму, но и универсальному боту.

Существует еще много других функций, которые можно настроить на боте, но они уже не так важны. Каждая функция должна быть настроена лично вами и специально для удобства пользования чатом. Тогда ваши будущие или нынешние зрители могли удобно пользоваться им, общаться с вами и проводить интересно время.

Скриншот с сайта twitch.tv

Пишем простого бота для Twitch на JS

Базовая настройка

Для начала устанавливаем и подключаем модуль tmi.js в нашем ранее созданном файле app.js

npm i tmi.js —save var tmi = require (‘tmi.js’);

Теперь пишем настройки подключения к серверу для tmi.

var options = {
options: {
debug: true
},
connection: {
cluster: «aws»,
reconnect: true
},
identity: {
username: «your-bots-username-here»,
password: «oauthtokenhere»
},
channels:
};

options и connections содержат базовые настройки подключения, давайте подробней разберем остальное.

  • username — здесь мы указываем никнейм нашего бота
  • password — сюда вставляем OAuth token который можно получить на сайте twitchapp
  • channels — указываем название канала к которому наш бот должен подключится

Подключаем нашего бота

var client = new tmi.client(options);
client.connect();

Культура бота

Для начала давайте сделаем что-бы наш бот приветствовал каждого кто заходит к нам на канал

client.on(«join», function (channel, username, self) {
client.action(«your-channel-here», username + » , glad to see you!»);
});

Теперь наш бот культурный — будь как наш бот.

Кто здесь?

Давайте теперь научим нашего бота различать кто написал сообщение — пользователь или админ

client.on(‘chat’, function (channel, username, message, self) {
if(username.username === «your-channel-here»){
// Admin commands
} else {
// Users commands
}
});

Здесь мы указываем что если никнейм пользователя который написал сообщение равен названию нашего канала — значит это вы (админ). Если нет, тогда обычный пользователь.

Команды пользователя

У пользователь будут команды которые возвращают ссылки на соц.сети. Потому, много кода не нужно, так как ответы статичны.

switch (message) {
case «!fb»:
client.action(‘your-channel-here’, ‘your-fb-link-here’);
break;
case «!twt»:
client.action(‘your-channel-here’, ‘your-twitter-link-here’);
break;
default:
}

Команды админа

А для админа мы дадим возможность задавать timeout сообщений для пользователь и чистить чат.

Для начала давайте узнаем есть ли команда в сообщение админа.

function splitMessage(message) {
if ((message.indexOf(‘!to’)) !== -1){
timeOut(message);
} else if ((message.indexOf(‘!clear’)) !== -1){
client.clear(«your-channel-here»);
}
}

Тут мы написали функцию которая получает сообщение пользователя, проверяет есть ли в нем !to или !clear. Если находим !to тогда будем вызывать функцию timeout-a которую сейчас напишем. А если нашли !clear — вызываем функцию модуля tmi clear

function timeOut(message) {
splitMSG = message.split(» «);
timeoutUserName = splitMSG;
timeoutDuration = splitMSG;
client.timeout(«your-channel-here», timeoutUserName, timeoutDuration);
client.action(‘your-channel-here’, timeoutUserName + ‘ now u have timeout mode! Duration: ‘ + timeoutDuration);
}

Здесь мы разбираем сообщение используя метод split. И разбиваем нашу строку на отдельный строки. Так как команда должна получаться 2 переменные — username (никнейм жертвы) и время в секундах на сколько мы будем ставить ей таймер. Дальше мы вызываем функцию timeout с модуля tmi передавая ему названия канала, никнейм жертвы и время. И выводим сообщение для нашей жертвы, что она получила таймер.

Теперь отрываем консоль и запускаем нашего бота.