Перейти к содержимому

Сценарии

Сценарии — плагины слоя L6, которые ведут шоу через медиасервер (сигналы, воспроизведение, параметры, звук). Они работают внутри сервера только через проверяемый фасад ScenarioCtx и не имеют прямого доступа к движкам, базе и файлам.

  • API плагинов 1.0 (freedome-scenario-api): манифест (id, версия, JSON Schema параметров, возможности Playback, Parameters, AudioDigital, AudioHybrid, Cues, Timers, Events, Storage, Assets, Http), Scenario::start, сессия с pause / resume / stop (не дольше 5 с). Сессия работает с ролью запустившего; возможность, требующая отсутствующего права, отклоняется при старте.
  • Изоляция: отдельная задача на сессию; паника → сессия failed, сервер продолжает работу.
  • Встроенные сценарии (freedome_scenarios): ceremony (фазы подготовка → основная → завершение, программы на гибридных аудиоустройствах, аварийная остановка, история) и quantum_resonance (генерация резонансного сигнала в WAV-ассет по пресетам). Пресеты — данные JSON со схемами. Аудиочасть требует аудиодвижков (фаза 3).
  • API: GET /api/v1/scenarios, POST /api/v1/venues/{v}/scenario-sessions, управление сессией; действие сигнала .dome {do: "scenario", target: "<id>", args: {...}}.