
Расписание и сценарии
Гибкое планирование показа и автоматизация экранов
Расписание отвечает за время: какая ротация играет в эти дни и часы, с каким приоритетом и по какому часовому поясу. Сценарии — за события: наступило восемь утра, пришла команда из системы оповещения, оператор нажал кнопку. Обе части живут в проекте и уезжают на плееры вместе с контентом.
Как это устроено
Время и события — это две разные механики
Их часто путают, а настраиваются они в разных вкладках и решают разные задачи. Проще держать в голове так: расписание знает календарь, сценарии знают, что вокруг что-то произошло.
Расписание — про часы и дни
Вы говорите: по будням с семи до одиннадцати играет утренняя ротация, с пяти вечера — афиша, в выходные всё иначе. Плеер сам переключается в нужную минуту и не спрашивает разрешения. Ниже правил лежит ротация по умолчанию — она играет, когда не активно ни одно правило, поэтому чёрного экрана не бывает.
Сценарии — про события
Правило вида «когда — если — то»: когда наступило 08:00, если у экрана тег города, то отправить команду проектору и запустить показ. Событием бывает не только время: нажатие кликера, вызов из чужой системы, круг ротации, строка из RS-232 или касание кнопки в самом слайде.
Попробуйте на месте
Проверка расписания на любой момент недели
Ниже — рабочая неделя офисного центра: утренняя, дневная и вечерняя программа, дежурная на выходные и трансляция собрания поверх дневной. Выберите момент — панель покажет, что в него играет и по какому правилу.
- Утро — приветствие и новости07:00–11:00
- День — показатели и дашборды11:00–17:00
- Вечер — объявления и события17:00–22:00
- Выходные — дежурный режим10:00–22:00
- Общее собрание — трансляция12:00–14:00P10
ОБЩЕЕ
СОБРАНИЕ
Итоги квартала и планы на осень · зал «Север» и трансляция на все площадки
Каждый будний день 12:00–14:00 программа уступает трансляции
Чт, 12:40
Играет «Общее собрание — трансляция» — по правилу №5
Ведите по сетке или двигайте ползунок — панель показывает то, что окажется на экране в этот момент. Выключите правило собрания: дневная ротация вернётся на своё место, потому что приоритет у неё ниже.

Календарь показа
Неделя целиком видна одним экраном
Правила лежат на сетке часовыми блоками, как встречи в календаре. Ротацию можно просто перетащить на нужный день и час — правило создастся сразу, без диалога. Цвет блока совпадает с цветом ротации в списке слева, поэтому пересечения и дыры в программе заметны глазом, а не по таблице настроек.
- три вида сетки: день, неделя и месяц
- слева — ротации проекта и список правил с днями, временем и приоритетом
- часовой пояс задаётся один раз на всё расписание и пишется рядом с сеткой
- блок «По умолчанию» над сеткой — та самая ротация, которая играет вне правил

Правило
Из чего состоит правило расписания
Диалог правила помещается на один экран, и в нём нет ничего лишнего: что показывать, по каким дням, в какие часы, с какого по какое число и насколько это важнее соседних правил. Трансляция собрания или программа на время ремонта заводится на конкретные даты и после них уходит сама — снимать её руками не нужно.
- дни недели отмечаются кнопками, рядом пресеты «Каждый день», «Будни», «Выходные»
- конец интервала не входит в него: 18:00 выключает правило ровно в 18:00, для конца суток пишут 24:00
- отдельный переключатель для окна, которое переходит через полночь — например, с 22:00 до 06:00
- «Действует с» и «Действует до» ограничивают правило датами: неделя мероприятия или период отпусков
- приоритет решает пересечения: больше — важнее, и правило ложится поверх обычного
- галочка «Включено» выключает правило на время, не удаляя его
Сценарии
Сценарий: когда — если — то
Сценарий связывает событие с действием. Событие одно, условий может не быть вовсе, действий — сколько нужно, и они выполняются по порядку. Это плоский список независимых правил, как автоматизации в умном доме, а не схема с состояниями и ветвлениями.
Что должно случиться
Проектор включается утром
Никто не бежит в переговорную включать технику: экран делает это сам к началу рабочего дня.
- Дни недели
- Пн Вт Ср Чт Пт
- Время
- 08:00
- Ключ тега
- город
- Оператор
- =
- Значение
- Москва
- Хост
- 10.20.4.50
- Порт
- 4352
- Данные
- %1POWR 1
- Команда
- Воспроизвести
ДОБРО
ПОЖАЛОВАТЬ
Программа идёт по расписанию
Экран показывает обычную программу — сценарий ещё не сработал
Журнал плеера
— ждём события —
- 08:00:00 триггер «По времени суток» — Пн–Пт, 08:00
- 08:00:00 условие «город = Москва» — выполнено
- 08:00:00 UDP 10.20.4.50:4352 ← %1POWR 1
- 08:00:01 проектор ответил: питание включено
- 08:00:01 показ запущен
Жёлтым помечено то, что уходит в сеть

Сценарий
Когда, если и то — в одном окне
Сценарий читается сверху вниз как фраза. Наверху событие, под ним предохранители, ниже — список действий по порядку. Действия, которые уходят в сеть, помечены значком «исходящее»: по нему сразу видно, где правило выходит за пределы плеера.
- триггер один, условий может не быть вовсе — тогда правило срабатывает всегда
- условия объединяются по «И»: сработает, только если выполнены все
- действия выполняются по порядку сверху вниз, их можно двигать стрелками
- в строковых полях работают подстановки: {{device.name}}, {{now.iso}}, {{var.счётчик}}, {{event.data.поле}}
- переменные считают и запоминают: счётчик показов, флаг «уже отправили», значение переживает перезагрузку
Из чего собирать
Все триггеры, условия и действия
Ниже — всё, что можно поставить в каждую из трёх секций. Ничего программировать не нужно: поля заполняются в списках и текстовых строках.
Когда
Событие-источник. Ровно одно на сценарий.
По времени суток
заданное время в выбранные дни недели
По интервалу
каждые N секунд, от пинга мониторингу до опроса кассы
Граница дейпарта
расписание переключилось на другую ротацию: вход или выход
Старт слайда
на экран вышел конкретный слайд или любой
Конец слайда
слайд сообщил, что доиграл
Зацикливание ротации
ротация пошла на новый круг
Окончание ротации
ротация без цикла доиграла до конца
Кнопка кликера
нажата кнопка USB-презентера: вперёд, назад или третья
Внешний триггер
чужая система вызвала плеер по сети
Событие из контента
виджет или кнопка на слайде сообщили о нажатии
Данные из RS-232
по кабелю пришла строка — от весов, турникета, пульта
Активация пакета
плеер принял и включил новую программу
Сбой активации пакета
пакет не встал, и об этом лучше узнать сразу
Если
Предохранители. Их может не быть, а может быть несколько — тогда все сразу.
Время суток
только в окне «дни недели плюс интервал»
Тег устройства
только там, где у экрана нужный тег: город, формат, зона
Переменная
сравнение с тем, что сценарии насчитали раньше
Данные события
разбор того, что пришло: например, ответ на опрос равен «да»
Текущий слайд
только пока на экране конкретный слайд
То
Действия по порядку сверху вниз. Помеченные «исходящее» уходят в сеть.
HTTP-запрос
webhook в чат, CRM, систему мониторинга
UDP-отправка
команда проектору, матрице, контроллеру света
TCP-отправка
то же, но там, где оборудование ждёт соединения
Отправить в RS-232
команда по кабелю: панель, усилитель, реле
Перейти к слайду
переключить показ на нужный слайд
Управление воспроизведением
пауза, продолжить, следующий, предыдущий, сначала
Триггер в контент
сообщить самому слайду: листнуть PDF, сменить ТВ-канал
Звук и громкость
приглушить зал или вернуть звук
Задать переменную
запомнить состояние между срабатываниями
Увеличить и уменьшить переменную
счётчики: голоса, показы, посетители
Задержка
пауза перед следующим действием того же сценария
Безопасность
Как устроен выход сценария в сеть
Сценарии умеют выходить наружу, поэтому выход наружу устроен по принципу «запрещено всё, кроме явно разрешённого» — и включается не в программе, а на самом устройстве.
Выход в сеть закрыт по умолчанию
На устройстве есть отдельный тумблер «Разрешить исходящие действия», и пока его не включил оператор, HTTP, UDP, TCP и RS-232 не работают. Внутренние действия — переход к слайду, громкость, переменные — при этом работают.
Адреса берутся только из ваших действий
При сборке пакета Studio собирает список разрешённых адресов из тех же полей, которые вы заполнили. Обратиться куда-то ещё плеер не может: запрещено всё, кроме явно разрешённого.
Никакого запуска команд системы
Сценарий умеет только объявленные действия: запрос, пакет в сокет, строка в порт и команды самому плееру. Произвольный код на устройстве не исполняется — ни своим, ни чужим сценарием.
Сбой одного действия не роняет остальные
Если оборудование не ответило или пропала связь, действие записывается в журнал, а сценарий продолжает работу. Экран при этом продолжает показывать программу.
Ещё в программе
Что ещё умеют расписание и сценарии
Часовой пояс объекта
Расписание считается по времени той точки, где стоит экран, а не по времени вашего компьютера. Сеть магазинов в Калининграде, Москве и Красноярске получает одну программу, и каждый экран переключается в девять по-своему.
Проверка до публикации
Кнопка «Предпросмотр» проигрывает расписание, как это сделает плеер, а панель «Симулятор времени» переносит вас в любой момент: задайте дату и время или прыгайте кнопками «+1 ч» и «+1 день». Внизу написано, что играет и по какому правилу — четверга ждать не нужно.
Разный контент на разных экранах
У слайда в ротации задаётся условие по тегам устройства, а у сценария — условие «Тег устройства». Одна и та же программа ведёт себя по-разному в Москве и в Казани, и держать под это отдельные проекты не нужно.
Раскадровка внутри слайда
Расписание управляет ротациями, а раскадровка — слоями одного слайда: заголовок выезжает первым, следом картинка, потом данные. Так слайд превращается в короткий ролик, и собирать видео в монтажной программе не приходится.
Показ до команды
Слайду можно не задавать длительность вовсе — он висит, пока сценарий не переключит показ. Это основа интерактива: экран ждёт нажатия, а не крутит ролик по кругу.
Всё уезжает одним пакетом
Правила, часовой пояс и сценарии — часть проекта. При публикации они попадают в пакет вместе со слайдами, и дальше плеер работает сам: без связи со Studio, без сервера и без облака.
Вопросы
Коротко о частом
Разберём ваш день по часам
Расскажите, как меняется программа на объекте и что должно происходить по кнопке или сигналу, — соберём расписание и сценарии на созвоне и покажем их в работе.