Streamlabs Chatbot ч.4 – Mikulski
Наложение сайта

Streamlabs Chatbot ч.4

OBS Remote Parameters Script.
Меняем сцены и управляем видимостью источников с помощью команд из чата.

Внимание!
Данный материал рассчитан на то, что вы ознакомились с предыдущими статьями по SLCB, либо имеете представление о том как устанавливать скрипты и о программе в целом.

Streamlabs Chatbot: Basics
Streamlabs Chatbot: Basics pt.2
Streamlabs Chatbot pt. 3

Небольшое лирическое отступление

Возможность управлять источниками OBS классная функция, позволяющая значительно преобразить стримы и добавить интерактив.
SLCB далеко не единственный инструмент, способный решать эту задачу. Весьма популярны, так называемые, виртуальные стрим-деки: свободно- распространяемый и очень мощный Lioranboard https://obsproject.com/forum/resources/lioranboard-stream-deck-animator.862/, а также имеющий бесплатную и платную версии Touch Portal https://www.touch-portal.com/. Преимущество этих программ, в том, что они умеют интегрироваться и в другие платформы (не только twitch/youtube); на виртуальные кнопки можно назначать большое и разнообразное количество действий; у источников можно включать/отключать фильтры; а еще, что важно было для меня: могут реагировать на получение пользователем Вознаграждения за очки канала на Твиче. SLCB на текущий момент не умеет взаимодействовать с Вознаграждениями и фильтрами источников, но возможно, что в
будущем разработчики добавят и эту возможность.
Lioranboard, в моем случае, не получилось правильно установить и он постоянно выдает ошибку. Но, я знаю нескольких стримеров, которые активно пользуются этим приложением и никаких трудностей не имеют.
Я не стал разбираться с этой проблемой и просто поставил Touch Portal и пока что довольствуюсь функциями бесплатной версии этой программы.
И подробнее о ней я тоже непременно расскажу, но в другой статье. Причина почему SLCB остается основным моим инструментом для управления сценами/источниками OBS – в их большом количестве (только команд для смены фона около 100). А Touch Portal лишь вспомогательный инструмент для обработки Вознаграждений канала.
Поэтому, если вы планируете добавить управление OBS через чат или вознаграждения, но ваша задумка не подразумевает большого количества источников/сцен, то возможно, лучшим решением будет выбрать LioranBoard или TouchPortal, у которых функционал гораздо шире. И наоборот, если вы не хотите устанавливать больше никаких дополнительных программ, а нужно переключать, например, только ракурсы камеры без привязки к очкам канала, то SLCB и скрипт к нему — тоже будет отличным решением и дополнением к основным функциям бота.

Установка

Об установке скриптов и Web Socket я писал еще в первой статье, но кратко пробежимся еще раз.
Прежде всего нужен OBS плагин Websocket Remote Control – https://obsproject.com/forum/resources/obs-websocket-remote-control-obs-studio-from-websockets.466/. Кстати, возможно, что начиная с определенной версии OBS он уже идет сразу встроенным. Но на всякий случай оставляю ссылку.
В любом случае, после установки плагина, нужно в верхнем меню OBS нужно найти раздел Tools (Инструменты)→ Websocket Server Settings (Настройки сервера Websocket). В всплывающем окне ставим чекбосы на “Включить сервер WebSockets” – ставим порт, например 4444 и «Включить авторизацию» – придумываем и вписываем пароль.
Возвращаемся в SLCB и в разделе Connections находим раздел OBS Remote. Если OBS у вас работает на том же компьютере, что и SLCB, то строку IP оставляем без изменений 127.0.0.1 . Если же OBS у вас на втором ПК, то надо вбить сюда его IP. Вводим пароль, что мы придумали в OBS, ставим тот же порт (4444), что и в OBS и нажимаем Connect.
Внимание! Совершать коннект с OBS необходимо каждый новый запуск программы!
Далее ставим скрипт для SLCB — OBS Remote Parameters – https://github.com/Consoletation/OBSRemoteParameters. В разделе Scripts импортируем его, щелкаем по нему в списке правой клавишей мыши и выбираем Insert API key и перезагружаем/обновляем весь список скриптов кнопкой справа вверху (такая процедура необходима для большинства скриптов. Также после внесения изменений в настройках скриптов тоже рекомендуется обновлять список, чтобы редакции вступили в силу).
Настроек у скрипта никаких нет — в его описании только кнопка свызовом Readme файла с инструкцией по составлению синтаксиса команд. Что мы далее и рассмотрим.

Команды и что умеет скрипт

Необходимые функции задаются определенным кодом в Response заданной команды. Все что нужно сделать, это скопировать код и подставить названия своих сцен/источников и параметры времени (если есть). Важный момент: названия сцен и параметры всегда должны быть заключены в кавычки! Также названия сцен/источников должны точно совпадать с их названиями в OBS, вплоть до заглавных/строчных символов. И нельзя сценам/источникам OBS давать имена с апострофами и двойными кавычками.
Примечательно, что помимо этого кода, в команду можно добавить и другой текст, если требуется (например, печатались смайлики в чат, сообщение или воспроизводился звуковой файл).

1) Переход на сцену

$OBSscene(“сцена”)
Указываем сцену, на которую должен переключиться OBS, после появления команды в чате.
Например:
У нас есть сцена в OBS с названием MAIN . Создаем команду !main и в Response пишем:
$OBSscene(“MAIN”)

2) Переход на сцену после отведенного времени. Задержка
указывается в секундах.

$OBSscene(“сцена”, “задержка”)
Например:
Нам нужно, чтобы переключение на сцену происходило не сразу, а спустя 2 минуты. Пишем:
$OBSscene(“MAIN”, “120”)

3) Установить видимость источника в активной сцене

$OBSsource(“источник”, “видимость”)Указываем имя источника и устанавливаем его параметр видимости
(true – включается видимость, false – отключается видимость).
Например:
У нас есть источник изображения CinemaPanel.
Команда !cinema_on будет включать его видимость:
$OBSsource(“CinemaPanel”, “true”)
Команда !cinema_off будет отключать его видимость:
$OBSsource(“CinemaPanel”, “false”)

4) Установить видимость источника в заданной сцене

Практически тоже самое, что и пункт 3, но добавляется параметр с указанием сцены, где находится источник. Это полезно в тех случаях, если в OBS вы используете сцену в сцене.
$OBSsource(“источник”, “видимость”, “сцена”)
Например:
$OBSsource(“CinemaPanel”, “true”, “MAIN”)

5) Переход на одну сцену, затем на другую после заданного
времени

$OBStimedScene(“сцена1”, “сцена2”, “задержка”)
Например:
У нас есть сцены MAIN и CatCam. Нам нужно, чтобы по команде произошел переход с активной сцены (допустим MAIN) на CatCam, которая должна быть активна в течение минуты и затем вернуться обратно. Пишем:
$OBStimedScene(“CatCam”, “MAIN”, “60”)

6) Установить видимость источника в активной сцене по
таймеру

$OBStimedSource(“источник”, “режим”, “задержка”)
Параметр Режим определяет, что должно случится с видимостью источника: onoff – включить, а затем выключить. Offon — отключить, а потом включить.
Например:
У нас есть гифка с анимацией аплодисментов — Clap . Нам нужно, чтобы по команде !clap эта гифка была видна в течение 3 секунд, азатем пропала с экрана. Пишем:
$OBStimedSource(“Clap”, “onoff”, “3”)
Важно: в этом случае, естественно, в OBS источник должен быть
изначально находится с выключенной видимостью.

7) становить видимость источника в заданной сцене по
таймеру

Все тоже самое, что и в пункте 6, только добавляется параметр сцены.
$OBStimedSource(“источник”, “режим”, “задержка”, “сцена”)
Например:
Нам нужно, чтобы по команде выключалась видимость источника CinemaPanel, расположенного в сцене MAIN на 10 секунд, а затем, чтобы он снова появился на экране. Пишем:
$OBStimedSource(“CinemaPanel”, “offon”, “10”, “MAIN”)

8) Остановить трансляцию

$OBSstop
Также можно сделать команду (например, для доверенных модераторов), чтобы отключать стрим. Если вдруг вы забыли это сделать, либо по каким-либо другим причинам.

Вот мы и разобрали все доступные функции этого замечательного скрипта. С этим арсеналом и творческим подходом можно привнести массу нового и интересного на свои стримы. Пробуйте, экспериментируйте, творите!

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