sl-audio — інструкція для адміністратора клубу і менеджера контентуv1.0 · 30.09.2026 · 59 кроків · 11 розділів
Як влаштована система
Перш ніж заходити в розділи — три хвилини на загальну картину, щоб усе
нижче було зрозуміліше з першого разу.
Порталбраузер, ВИ тут
⇄
Сервермозок, працює 24/7
⇄
Плеєрпрограма на ПК клубу
Ви керуєте через портал у браузері. Портал спілкується з сервером мережі —
єдиним місцем, де зберігаються всі дані й рахується розклад. Сервер, своєю чергою,
командує програмою-плеєром, яка стоїть на звичайному ПК у самому клубі й реально
видає звук у колонки. Портал і плеєр НІКОЛИ не спілкуються напряму — завжди через сервер;
тому якщо плеєр офлайн, портал усе одно показує «останній відомий» стан, а не живий.
Хто є хто
Роль
Що бачить і робить
Адміністратор мережі
повний доступ до всього — усі клуби, користувачі, мережеві правила тривог, інфраструктура. «ІТ — усе».
Менеджер (контенту)
бачить увесь парк клубів, керує банком файлів, кампаніями, проєктами, розкладами — але НЕ керує користувачами/обліковими записами й інфраструктурою.
Адміністратор клубу
лише свої клуби (явно надані): гучність, аварійні дії, повсякденне керування залою — без доступу до налаштувань інших клубів чи мережі в цілому.
Словник термінів
Короткі визначення з якорями — розділи нижче посилаються сюди
(#term-…), щоб не повторювати визначення щоразу.
Портал
Сайт в браузері (наприклад slaudio.derg.in.ua), яким користуєтесь ВИ — адміністратор мережі, менеджер контенту, адміністратор клубу. Тут заводите клуби, зони, музику, рекламу, дивитесь звіти. Портал сам звук не грає — він лише керує.
Сервер
Програма, що працює цілодобово на бекенді мережі: зберігає всі дані (клуби, файли, кампанії), рахує розклад, стежить за плеєрами (watchdog), шле тривоги. Портал і плеєри спілкуються ЧЕРЕЗ нього, напряму між собою — ніколи.
Плеєр (програма)
Застосунок, встановлений на звичайному ПК у самому клубі (на рецепції чи в підсобці) — саме ВІН реально відтворює звук у колонки залу. Раз на якийсь час звертається до сервера: «що зараз має грати?» — і грає. Якщо плеєр офлайн (вимкнений ПК, нема інтернету) — сервер може мати ідеальний розклад, а в залі буде тиша.
Клуб
Одна адреса мережі Sport Life (наприклад «Теремки»). Має свої: адресу, графік роботи, ознаки (послуги), регіон тривог. Одному клубу належить кілька зон.
Зона
Одне озвучене приміщення всередині клубу — зала, роздягальня, лаундж. У кожної зони своя музика, своя гучність, свій статус «грає/тиша». Зона — НЕ фізичний пристрій, а логічна точка відтворення.
Плеєр (пристрій/приписка)
Той самий ПК із застосунком-плеєром, але з точки зору порталу — це запис у списку «Плеєри клубу»: версія, статус звʼязку, які зони/канали (L/R) до нього прикріплені. Одна звукова карта плеєра може обслуговувати кілька зон одночасно.
Профіль доби (дейпарт)
Відрізок часу доби зі своїми правилами відтворення для конкретної зони — «ранок» тихіше й повільніше, «вечірній пік» гучніше. У зони може бути один дейпарт на всю добу або кілька послідовних; разом вони мають СУЦІЛЬНО покривати робочі години клубу.
Пул музики
Набір треків, з якого система випадково чи «розумно» (intelligent, за BPM/енергією) добирає, що грати в конкретному дейпарті — не один зафіксований плейлист, а жива вибірка з банку файлів за критеріями.
Ролик
Один аудіофайл реклами чи оголошення в банку файлів — з тривалістю, виміряною гучністю (LUFS) і, за форматом назви, розпізнаною ознакою (тегом).
Кампанія
Правило показу одного чи кількох роликів: кому (таргетинг), як часто (квота), з яким пріоритетом, у які дати. Класичний, «легкий» спосіб запустити рекламу.
Рекламний проєкт
Новіший механізм над кампаніями — кілька креативів одразу, конструктор розкладу показу, призначення на групу клубів із прогнозом покриття (fit-звіт).
Ознака клубу
Тег-послуга (басейн, сквош, солярій…), проставлена клубу. Місток між рекламою і клубом: кампанія таргетована на ознаку сама зʼявляється в кожному клубі з цим тегом. «база» — особлива ознака «скрізь».
Розклад / таймлайн
План ефіру зони на майбутнє (на відміну від «Пульта зони», який керує лише поточною хвилиною) — послідовність «кубиків» музики/реклами/оголошень на кожен день.
Регенерація
Дія «Перегенерувати» — повний перерахунок розкладу з нуля на основі поточних дейпартів/кампаній/оголошень. Потрібна щоразу, коли змінили налаштування, а розклад лишився старим.
Хвилина мовчання
Щоденна автопауза музики й оголошень на 60 секунд у задану хвилину (мережевий дефолт — 09:00, клуб/зона можуть перевизначити). Звучить навіть під час тривоги.
Тривога
Мережевий сценарій реакції на небезпеку — 6 рівнів небезпеки (жовта/червона повітряна, артобстріл, вуличні бої, хімічна, ядерна загроза), у кожного свій набір із 3 аудіохвиль (старт/триває/відбій) і рівень приглушення музики й реклами. Найвищий пріоритет у всьому ефірі.
Watchdog
Фоновий процес сервера, що стежить за станом усіх плеєрів мережі 24/7 і шле алерти (зокрема в Telegram-бот) при збоях чи рестартах — ви цю частину напряму не бачите, вона працює у фоні.
🚀 Швидкий старт нового клубу
Чекліст із 10 кроків, якщо клуб заводиться в системі вперше — з нуля до звуку в залі й реклами, яка сама знаходить потрібні клуби.
Створити клуб«Клуб» → «+ Новий клуб»: назва, місто, регіон тривог. Регіон тривог визначає, яка мережева тривога стосуватиметься саме цього клубу. → докладніше в розділі «2. Клуб»
Проставити ознаки клубуУ формі клубу (або в довіднику ознак у Налаштуваннях) увімкнути теги послуг — базу («база» вмикати не треба, вона за замовчуванням «скрізь»), басейн, сквош, солярій тощо. Від цього залежить, яка реклама сама «знайде» цей клуб. → докладніше в розділі «2. Клуб»
Створити зони«Зони» → «+ Нова зона»: мінімум — назва («Загальна», «Лаундж», «Роздягальня»…). BPM-пресет — опційно, підказка темпу. → докладніше в розділі «3. Зони»
Привʼязати плеєр«Плеєр» → ввести код реєстрації, виданий застосунком плеєра на ПК клубу, потім прикріпити плеєр до потрібних зон і каналів (L/R). → докладніше в розділі «4. Плеєр»
Задати графік роботиУ формі клубу — таблиця годин по днях тижня (відкриття/закриття). Від неї рахуються і оголошення закриття, і «жива»/«нічна» зала. → докладніше в розділі «2. Клуб»
Увімкнути оголошення закриття й хвилину мовчанняІнтервали попередження (типово 30/15/5 хв) + окремий запис на момент закриття; хвилина мовчання — типово 09:00, можна перевизначити на клуб/зону. → докладніше в розділі «6. Оголошення»
Перевірити реакцію на тривогуМережевий дефолт підхопиться сам; якщо клубу чи залі потрібен інший сценарій (наприклад, критичний обʼєкт) — перевизначити профіль зони окремо для потрібних рівнів. → докладніше в розділі «7. Тривоги»
Налаштувати дейпарти і гучність зониПрофілі доби (ранок тихіше, вечірній пік гучніше), режим підбору музики (random/intelligent), і базовий повзунок гучності зони. → докладніше в розділі «5. Музика»
Обрати режим реклами і перевірити таргетинг«Класичний» (pacing) чи «за піками» (по реальній сітці відвідуваності). Перевірити, що потрібні кампанії таргетовані на ознаки саме цього клубу. → докладніше в розділі «8. Реклама»
Перегенерувати розклад і перевірити ефір«Розклад» → «Перегенерувати» → подивитись таймлайн дня і звіт proof-of-play, що реклама й музика реально лягли туди, куди треба. → докладніше в розділі «9. Розклад»
🛠️
Клуб уже створений, треба лише прописати теги/графік/усе інше?
Розділ 2 має власний сценарій «за 8 кроків» — де саме клацати, що вводити, з прикладом
реального клубу.
Клуб уже є, треба просто додати рекламу?
Не проходьте весь чекліст — розділ 8 має власний сценарій «за 7 кроків»,
від файлу ролика до перевірки в ефірі.
Портал і хто чим керує — коротко в «Як влаштована система» (архітектура портал/сервер/плеєр і таблиця «Хто є хто» — адміністратор мережі / менеджер контенту / адміністратор клубу). Після входу — одразу в «Швидкий старт»: новий клуб чи просто додати рекламу.
1
Вхід у портал — логін і пароль
Поле «Логін» і кнопка «Увійти» нижче форми
Перша сторінка порталу SL·Аудіо. У полі «Логін» вводимо обліковий запис (для мережі — це, як правило, «admin» або особистий логін адміністратора клубу), у полі «Пароль» — пароль. Прапорець «Запам'ятати мене на цьому пристрої» тримає сесію довше на довіреному ПК — на чужому чи спільному комп'ютері його краще не чіпати. Тиснемо «Увійти».
Що може піти не так. Типова помилка — Caps Lock або зайвий пробіл у логіні, скопійованому з листа.
2FA (двофакторна автентифікація) — добровільна для будь-якої ролі: вмикається в меню профілю → «Безпека». Якщо вона увімкнена, після логіна й пароля портал просить 6-значний код із застосунку-автентифікатора (Google Authenticator/Authy). Якщо не вмикали — цього кроку нема, вхід одразу пускає в портал. Код міняється кожні 30 секунд і рахується прямо на телефоні за формулою — інтернет застосунку не потрібен. Якщо телефон недоступний, можна ввести один із одноразових backup-кодів, виданих при налаштуванні 2FA. Хибний або протермінований код поверне помилку «Невірний код» — просто вводимо свіжий. Тиснемо «Підтвердити код».
Поле
Що означає
Приклад на стенді Теремки
Код 2FA
6-значний TOTP-код з автентифікатора або backup-код
Налаштувати клуб — теги, графік, усе інше — за 8 кроків
Відповідь на питання «це все на якій вкладці робиться?» — коротко:
МАЙЖЕ все (базові дані, ознаки, графік, оголошення закриття) живе в ОДНІЙ формі клубу і на
одній сторінці його робочого простору — не треба бігати по різних розділах порталу. Нижче —
кожен крок окремо: де саме клацати, що ввести (з прикладом реального клубу «Теремки тест»),
що побачите у відповідь, і що робити, якщо щось не так.
Де це: головне меню порталу → «Клуби» (для адміністратора мережі — весь
список; для адміністратора клубу — одразу відкриється його єдиний клуб, вибору
нема).
Що натиснути: у списку зліва — клік по назві потрібного клубу (пошук і
сортування зверху списку, якщо клубів багато).
Що побачите: робочий простір клубу праворуч — шапка з назвою, містом і
чіпами ознак, рядок «Готовність клубу», і сітка карток зон (або список плеєрів — за
перемикачем «Зони / Плеєри» вгорі праворуч). Саме звідси відкриваються ВСІ наступні
кроки цього сценарію.
Якщо не так: клубу немає в списку — або він ще не створений («+ Новий клуб»
вгорі списку), або вашому обліковому запису не дали доступ до нього (зверніться до
адміністратора порталу мережі, це не самообслуговування).
Де це: кнопка «✎ Редагувати» в шапці робочого простору клубу (крок 1)
відкриває форму — ТУ САМУ, що й для створення нового клубу.
Що ввести: «Назва» і «Місто» — вільний текст (приклад стенду: «Теремки
тест», Київ). «Регіон тривог» — адмінодиниця за КАТОТТГ (область → район →
громада): обирайте найточніший рівень, який знаєте — громаду, а не область.
Це не втрата точності: тривога, оголошена по всій області, автоматично «накриває»
кожну громаду в ній (правило системи: «тривога по області покриває громаду, громада
не покриває область»), тож обравши громаду ви однаково отримаєте і обласні тривоги, і
свої точкові — а обравши одразу область, будете чути тривоги й по сусідніх громадах,
які вашого клубу не стосуються. «Критичність для тривог» (звичайна/критична) — реально
міняє СЦЕНАРІЙ тривоги: критичні клуби на старті окремо оголошують фразу «клуб
зачиняється, пройдіть в укриття» (окрема фаза закриття), некритичні — просто
нагадування раз через 15 хв і без цієї фрази. «Хвилина мовчання» — перемикач
увімкнено/вимкнено + час; мережевий дефолт — щодня о 09:00, конкретний клуб
може перевизначити свій час (наприклад, якщо клуб відкривається пізніше).
Що побачите: після «Зберегти» форма закривається, шапка клубу одразу показує
нові значення (назва/місто змінюються без перезавантаження сторінки).
Якщо не так: обрали регіон тривог помилково (не той район) — клуб
реагуватиме на чужі тривоги або пропускатиме свої; перевірте адресу клубу і виправте
регіон, це не критично й виправляється в будь-який момент, наступна тривога піде вже
правильно.
Де це: та сама форма «✎ Редагувати» (крок 2) — блок «Ознаки клубу
(сервіси)»: чіпи-перемикачі, кожен клік одразу зберігається окремо (не треба тиснути
загальне «Зберегти» для ознак — вони автономні).
Якщо потрібної ознаки нема в списку чіпів: її спершу заводить адміністратор
мережі в «11. Налаштування» → «Довідник ознак» → поле «+ Нова ознака» — і лише ПІСЛЯ
цього вона зʼявиться як чіп у формах усіх клубів.
Приклад зі стенду — клуб ТЕР (реальний рядок мережевої таблиці):
Повний перелік ознак мережі (16 назв, що реально проставлені хоч одному
клубу): база, тз, групові, вендінг, солярій, лаунж, масаж, басейн, абонементи,
дк, сквош, секції вода, тб, тбс, тс, бар. Спеціальне правило: «база» = скрізь —
цю ознаку не треба вмикати вручну жодному клубу, контент з нею й так грає в усіх 48
клубах мережі. Повне пояснення кожної ознаки (включно з тими, які поки не підтверджені
на 100% — позначені «уточнити в Лариси») і чому це взагалі важливо —
розділ «8. Реклама» → Ознаки клубів ↓.
Навіщо це: саме ці чіпи вирішують, яка реклама «сама знаходить» цей клуб —
кампанія, таргетована на ознаку «сквош», зіграє в КОЖНОМУ клубі з увімкненим чипом
«сквош», без ручного додавання клубу в кожну кампанію окремо. Детальний наскрізний
приклад і повна таблиця «Клуб → ознаки» по всіх 48 клубах —
розділ «8. Реклама» → Таблиця клубів ↓.
Якщо не так: реклама «не знаходить» клуб — 9 з 10 випадків це саме тут:
потрібного чипа немає або він вимкнений. Перш ніж шукати проблему в самій кампанії,
перевірте чипи клубу.
Де це: НЕ у формі редагування — окремий блок «Графік клубу» прямо на
сторінці робочого простору клубу (крок 1), нижче шапки. Розгортається кліком, якщо
згорнутий.
Що ввести: окремий рядок на кожен день тижня (Пн–Нд): чекбокс «працює» +
час відкриття + час закриття. Приклад зі стенду: будні 07:00–22:00, вихідні —
зазвичай коротший день, скажімо 09:00–20:00 (типова практика мережі, у кожного клубу
може бути своє). Невідмічений день = клуб цього дня взагалі не працює.
Що це означає для ефіру: до відкриття й після закриття — тиша (або нічний
режим, якщо налаштований окремо), реклама там НІКОЛИ не лягає. Саме від цього графіка
рахується і зворотний відлік для оголошень закриття (крок 5 нижче).
🚨 Попередження «дірка покриття»: профілі доби (дейпарти) кожної зони мають
СУЦІЛЬНО покривати весь робочий час клубу з цього графіка, без прогалин. Якщо є
прогалина (наприклад, клуб працює до 22:00, а останній дейпарт зони закінчується о
21:00) — система НЕ дасть натиснути «Перегенерувати» в розкладі: поверне помилку
«дейпарти не покривають суцільно робочі години клубу» з точною вказівкою, який день і
яка саме прогалина. Це навмисний захист від тиші в зáлі через забутий дейпарт, а не
баг. Що робити: розділ «5. Музика» → додати чи розширити дейпарт зони так, щоб він
дотягував до фактичного часу закриття.
Якщо не так: час невірний — виправте прямо в цій таблиці, зберігається
одразу; клуб «здається зачиненим» удень — перевірте, чи не забули зняти чекбокс
«працює» для сьогоднішнього дня тижня.
Де це: блок «Клуб зачиняється» одразу під графіком годин (крок 4) — та сама
сторінка робочого простору клубу.
Що ввести: прапорець «Оголошувати про закриття» вмикає всю функцію.
Інтервали «за N хвилин до закриття» — типово 30/15/5 хвилин, для кожного можна
призначити свій запис з банку (за 30 хв — спокійне нагадування, за 5 хв — прохання
пройти до роздягалень); порожньо = система бере найкоротший придатний запис з банку
екстрених. Окремий рядок «у момент закриття» (0 хв) — запис «зачинено», розрахований
звучати так, щоб завершитись рівно на закритті.
Де взяти файли: «5. Музика» → банк файлів → тека службових/екстрених
записів. Якщо потрібного запису там нема — залийте новий (той самий діалог
завантаження, що для музики й реклами).
Що побачите: у прикладі клубу «Теремки тест» — інтервали 30, 15, 5 хв і
окремий запис «зачинено» на 0 хв.
Якщо не так: оголошення закриття не чути — перевірте, чи ввімкнено прапорець
і чи справді призначено файл на потрібний інтервал (порожнє поле — не помилка, просто
автопідбір, і якщо в банку екстрених взагалі нема файлів, автопідбору теж нічого
брати).
Коротко: зона — це одна озвучена зала/приміщення (не сам клуб). У щойно
створеному клубі зон іще нема — без хоча б однієї зони клубу нікуди прикріпити ні
музику, ні плеєр. Повний покроковий розбір створення зони, привʼязки до пристрою й
каналу L/R, типу зони, BPM і гучності — окремий розділ.
Коротко: плеєр — це фізичний ПК у клубі із застосунком-програвачем, який
реально видає звук у колонки. Клуб і зони можуть бути ідеально налаштовані, але без
прикріпленого й онлайн плеєра звуку в залі не буде фізично. Привʼязка за кодом
реєстрації, команди, діагностика — окремий розділ.
Де це: той самий рядок «Готовність клубу» в робочому просторі клубу (крок
1), одразу під шапкою — це підсумковий світлофор по всіх попередніх кроках, не окрема
настройка.
Що означає: рядок показує, чого ще бракує клубу до реального ефіру — типово
три речі: чи є хоча б одна зона (крок 6), чи прикріплений і онлайн плеєр (крок 7), чи
згенерований розклад (розділ «9. Розклад»). Незакритий пункт — конкретна й дослівна
причина, чому в залі може стояти тиша навіть коли решта налаштувань (графік, ознаки,
оголошення) зроблені бездоганно.
Що робити: клікніть по незакритому пункту (якщо клікабельний) або перейдіть
напряму в потрібний розділ за списком вище — після виправлення рядок оновлюється сам,
перезавантажувати сторінку не треба.
Нижче — кожен екран розділу окремо, повністю (те саме, на що посилається сценарій вище).
3
Головна — список клубів і робочий простір клубу
Список клубів зліва (тут обрано «Теремки тест»)
Ліворуч — список усіх клубів мережі (для адміністратора клубу тут буде лише його клуб), із пошуком і сортуванням зверху. Клік по клубу відкриває його робочий простір праворуч: шапку з назвою/містом/ознаками, рядок «Готовність клубу» (чого ще бракує — зон, плеєра, розкладу) і сітку карток зон. Кольоровий індикатор на картці клубу сигналить про проблему (плеєр офлайн, немає розкладу тощо) — на це варто дивитись щодня. Праворуч вгорі — перемикач «Зони / Плеєри» для того ж клубу.
Таблиця «Графік клубу» з відкриттям/закриттям по днях
Таблиця годин роботи клубу «Теремки тест» — окремий рядок на кожен день тижня (Пн–Нд). Чекбокс зліва вмикає/вимикає роботу клубу в цей день, два поля часу — «відкриття» і «закриття». За цим графіком система розуміє, коли зала «жива» (можна грати музику/рекламу) і коли клуб зачинено (тиша або нічний режим), а також коли рахувати відлік до оголошень закриття нижче. У прикладі клуб працює щодня з 07:00 до 22:00. Не збережений день підсвічується попередженням зверху картки.
Форма клубу — місто, регіон тривог, критичність, хвилина мовчання
Поля «Місто», «Регіон тривог», «Критичність для тривог»
Форма редагування клубу (та сама форма й для створення нового — тільки заголовок «Новий клуб» замість «Редагувати клуб»). «Регіон тривог» визначає, яка мережева тривога (повітряна, за областю/громадою) стосується саме цього клубу. «Критичність для тривог» (лише при редагуванні) підказує пріоритетність клубу для екстрених сповіщень — критичні клуби отримують реакцію першими. Нижче — перемикач «Хвилина мовчання»: коли увімкнено, система щодня о заданій хвилині (наприклад, 09:00, річниці й пам'ятні дати) сама зупиняє музику й оголошення на 60 секунд.
Що може піти не так. ⚠️ На бойовому порталі форму лише переглянули — закрили Escape, нічого не зберігали.
За замовчуванням хвилина мовчання по всій мережі — щодня о 09:00 (річниці, памʼятні дати). Клуб чи навіть окрема зона можуть перевизначити свій власний час — наприклад, якщо клуб відкривається пізніше й о 09:00 в залі ще нікого немає. Хвилина мовчання звучить НАВІТЬ під час тривоги — це один із двох пріоритетів, які тривога не глушить (другий — службові оголошення закриття).
Дрібні чіпи одразу під назвою й містом клубу — це «Ознаки клубу (сервіси)»: довідник послуг, які є саме в цьому клубі (басейн, сквош, лаунж, масаж, ТБ у залі тощо). Тут вони лише ПОКАЗУЮТЬСЯ; редагуються (клац-перемикач + окреме автозбереження на кожен клік) у формі «✎ Редагувати» кроком вище. Головне практичне застосування — таргетинг реклами «за ознаками»: кампанія з таргетингом на ознаку «сквош» сама почне грати в усіх клубах, де цю ознаку увімкнено, без ручного додавання кожного клубу. Спеціальна ознака «база» означає «скрізь» — контент/кампанія з нею грає в усіх клубах мережі незалежно від інших ознак. У прикладі клубу увімкнено: база, вендінг, дк, лаунж, масаж, сквош, тб, тбс, тс.
Поле
Що означає
Приклад на стенді Теремки
Ознаки клубу
мультивибір тегів-послуг клубу для таргетингу реклами
Порожня форма створення нового клубу — та сама форма, що й для редагування (заголовок міняється на «Новий клуб»). Заповнюємо назву, місто, обираємо регіон тривог, і після створення (кнопка внизу форми) переходимо одразу в майстер налаштування клубу.
Клуб «Демо клуб (інструкція)» створено — майстер налаштування
Заголовок майстра налаштування клубу
Після створення портал одразу пропонує майстер покрокового налаштування нового клубу «Демо клуб (інструкція)»: зони, шаблон, плеєр, звук. Демо-клуб лишається в системі після зйомки — саме для того, щоб цю ж інструкцію можна було безпечно перезняти пізніше без повторного створення сутностей з нуля.
Крок майстра налаштування клубу — ««Клуб»». Майстер веде послідовно від голого клубу до повністю робочої зали: спершу базові дані клубу, потім зони (можна створити одразу під час майстра), вибір шаблону налаштувань (клас × тип зони), приписка плеєра і фінальний тест звуку. Кожен крок можна пропустити і повернутись пізніше — клуб не блокується до завершення майстра.
Крок майстра налаштування клубу — ««Зони»». Майстер веде послідовно від голого клубу до повністю робочої зали: спершу базові дані клубу, потім зони (можна створити одразу під час майстра), вибір шаблону налаштувань (клас × тип зони), приписка плеєра і фінальний тест звуку. Кожен крок можна пропустити і повернутись пізніше — клуб не блокується до завершення майстра.
Крок майстра налаштування клубу — ««Шаблон»». Майстер веде послідовно від голого клубу до повністю робочої зали: спершу базові дані клубу, потім зони (можна створити одразу під час майстра), вибір шаблону налаштувань (клас × тип зони), приписка плеєра і фінальний тест звуку. Кожен крок можна пропустити і повернутись пізніше — клуб не блокується до завершення майстра.
Крок майстра налаштування клубу — ««Плеєр»». Майстер веде послідовно від голого клубу до повністю робочої зали: спершу базові дані клубу, потім зони (можна створити одразу під час майстра), вибір шаблону налаштувань (клас × тип зони), приписка плеєра і фінальний тест звуку. Кожен крок можна пропустити і повернутись пізніше — клуб не блокується до завершення майстра.
Крок майстра налаштування клубу — ««Звук»». Майстер веде послідовно від голого клубу до повністю робочої зали: спершу базові дані клубу, потім зони (можна створити одразу під час майстра), вибір шаблону налаштувань (клас × тип зони), приписка плеєра і фінальний тест звуку. Кожен крок можна пропустити і повернутись пізніше — клуб не блокується до завершення майстра.
Зона (словник ↑) — не фізичний
пристрій, а логічна точка відтворення: одна озвучена зала клубу. Без хоча б однієї зони
музику й рекламу нікуди «покласти», навіть якщо плеєр уже фізично стоїть у клубі.
Де це: робочий простір клубу («2. Клуб», крок 1) → кнопка «+ Нова зона» над
сіткою карток зон.
Що ввести: єдине обовʼязкове поле — «Назва зони» (приклад зі стенду: напр.
«Загальна», «Лаундж», «Роздягальня»). «Темп (BPM)» — опційний швидкий пресет, лише
підказка для подальшого підбору музики (крок 4). Чекбокс «Привʼязати до пристрою й
каналу зараз» — якщо в клубі вже є зареєстрований плеєр, зʼявляється одразу тут (крок
3 нижче можна зробити просто зараз, а не пізніше окремо).
Що побачите: нова картка зʼявляється в сітці робочого простору клубу зі
статусом «⏹ Тиша» — це нормально, звуку нема, поки не пройдені наступні кроки.
Якщо не так: зона не потрібна більше — її можна архівувати (мʼяке
видалення); архівація звільняє фізичний канал пристрою (крок 3), щоб цей самий порт
можна було віддати новій зоні — історія (плейлоги, дейпарти) лишається привʼязаною до
ID зони і не губиться.
Де це: довідникове поле в налаштуваннях зони — «Тип»: Тренажерка,
Роздягальня, Ресепшн, Басейн, Кардіо, Групові (мережевий довідник, адміністратор мережі
може розширити список).
Навіщо: це НЕ впливає на сам звук напряму — тип потрібен для мережевих
«Шаблонів» («11. Налаштування»): авто-правило «клас клубу × тип зони» саме за цією
парою підбирає, які налаштування (гучність, дейпарти) застосувати одним кліком до
десятків зон одразу, замість ручного налаштування кожної.
Якщо не так: тип не обрано — нічого не ламається негайно, просто зона не
підхопить майбутнє масове застосування шаблону за типом; можна дозаповнити будь-коли.
3
Привʼязати до пристрою і каналу L/R
Де це: чекбокс у формі зони (крок 1, якщо плеєр уже є) АБО пізніше — картка
зони → мапінг пристрою окремою дією, коли плеєр звʼявиться пізніше.
Що ввести: конкретний плеєр (пристрій) зі списку прикріплених до клубу
(«4. Плеєр») + канал — L (лівий) або R (правий). Одна звукова карта плеєра фізично має
два незалежні канали — може обслуговувати ДВІ різні зони одночасно, кожна зі своєю
музикою.
Що побачите: канал зайнятий іншою зоною — система не дасть зберегти (один
канал = одна зона, жорстке обмеження в базі). Переплутали зони місцями (L↔R навпаки чи
не той пристрій) — не треба видаляти й пересоздавати: є окрема дія «поміняти зони
місцями», яка міняє мапінг пристрою/каналу між двома зонами одним кліком, історія й
назви лишаються на місці.
Якщо не так: фізичний пристрій зник з інвентарю плеєра (замінили звукову
карту, відключили) — зона сама позначається «пристрій втрачено» і НЕ перепризначається
автоматично на щось інше (свідомий захист: краще тиша, ніж випадково полилась реклама в
роздягалку). Виправляється вручну — новий мапінг або рескан пристроїв плеєра.
Де це: налаштування зони (Експертний режим) — поле «Режим музики».
Що обрати: чотири варіанти — «off» (музика вимкнена в цій зоні взагалі),
«random» (випадково з банку/пулу), «intelligent» (з урахуванням BPM і «кривої дня» —
тихіше вранці, енергійніше ввечері), «manual» (ручний плейлист, без автопідбору).
Темп — діапазон BPM «від» і «до» (можна на рівні зони, і окремо перевизначити на
рівні кожного дейпарту, крок «5. Музика»).
Захист від повторів: окремі поля — мінімум годин до повтору того самого
треку і мінімум хвилин до повтору того самого виконавця, щоб плейлист не «зациклювався»
на кількох піснях.
Якщо не так: ⚠️ реальний баг, знайдений QA 2026-09-12 — зона з BPM «від 200
до 50» (переплутані місцями) створювалась МОВЧКИ, і під такий діапазон не підходив
жоден трек — розумний добір просто переставав працювати без жодного попередження.
Тепер форма одразу відмовляє зберегти, якщо «до» менше за «від».
Простий режим: один повзунок «Наскільки гучно» — людська шкала замість
технічних термінів, типово середина.
Експертний режим — детальніше: окремі цільові рівні гучності (LUFS) для
музики / реклами / оголошень цієї конкретної зони — override поверх мережевих дефолтів
−15 / −9 / −8 LUFS (розділ «8. Реклама» ↑), якщо в конкретній
залі акустика вимагає інших цифр. «Crossfade» — плавність переходу між треками
(мілісекунди). «Приглушення (duck) під оголошення» — на скільки відсотків і за скільки
мілісекунд музика притишується, коли починається службове оголошення чи реклама, і так
само плавно повертається назад.
Якщо не так: звук «ріже вухо» на стику треків — зменшіть crossfade; оголошення
губляться під музикою — збільшіть відсоток приглушення (duck level).
6
Лок системної гучності Windows
Де це: налаштування зони (Експертний режим) — «Тримати системну гучність
Windows, %».
Навіщо це зʼявилось: реальний випадок мережі (внутрішня назва задачі —
«персонал крутить системну гучність на Speedfit») — співробітники на місці крутили
гучність коліщатком миші чи клавішами клавіатури просто на ПК плеєра, і весь ретельно
підібраний баланс гучності (музика/реклама/оголошення) «зʼїжджав» без жодного сліду в
порталі. Поле приймає 0–100% (порожньо = функція вимкнена) — плеєр силою тримає
системну гучність ОС на цьому рівні й повертає назад, щойно хтось її змінить локально.
Якщо не так: звук на виході в принципі занадто тихий чи гучний АПАРАТНО
(не через баланс контенту) — це саме те поле, яке варто підняти чи опустити; для
звичайного балансу гучність/реклама краще користуватись повзунком «Наскільки гучно»
(крок 5), а не цим локом.
7
Перевірити статус зони
Де це: картка зони на дашборді клубу — живий бейдж «▶ Грає» / «⏸ Пауза» /
«⏹ Тиша». Клік по картці відкриває «Пульт зони» — детальніше керування прямо зараз
(не план на майбутнє, той — «9. Розклад»).
Якщо не так: статус «Тиша», хоча все з кроків 1–6 налаштовано правильно —
перевірте (1) чи зараз клуб «живий» за графіком («2. Клуб», крок 4), (2) чи плеєр
онлайн («4. Плеєр»), (3) чи є хоч один файл, що підходить під поточний дейпарт
(«5. Музика»).
Кожна картка в сітці — одна зона клубу («Загальна», «Лаундж» тощо) зі своєю музикою й гучністю. Зверху — назва зони і бейдж поточного стану: «▶ Грає» / «⏸ Пауза» / «⏹ Тиша» — це живий статус, не план. Тут же повзунок гучності й швидкі кнопки транспорту (пауза/скіп) — керування зоною прямо з дашборду, без переходу на інші сторінки. Клік по картці відкриває «Пульт зони» з детальнішим керуванням.
Що може піти не так. ⚠️ На бойовому порталі кнопки транспорту реально перемикають музику в залі клубу — на цьому знімку ми їх НЕ натискали.
Пульт зони — панель живого керування конкретною залою ПРЯМО ЗАРАЗ, а не план на майбутнє (той план — на сторінці «Розклад»). Зверху видно, що саме зараз має грати і стан плеєра: «▶ Грає» / «⏸ Пауза» / «⏹ Тиша». Кнопка транспорту перемикає плей/паузу, повзунок — миттєву гучність. Якщо плеєр зали офлайн, пульт показує попередження і команди стають неактивними — надсилати їх нікуди.
Що може піти не так. ⚠️ Кожна дія тут реально чутна в зали клубу — на бойовому порталі відкрили пульт лише для перегляду стану, транспорт і гучність НЕ чіпали.
Форма нової зони: обовʼязкова лише назва (наприклад, «Кардіозона», «Роздягальня», «Лаундж»). Темп (BPM) — необовʼязковий швидкий пресет діапазону, який потім підставиться в налаштування звуку зони. Якщо в клубі вже є привʼязаний плеєр, зʼявляється чекбокс «Привʼязати до пристрою й каналу зараз» — після нього можна одразу обрати конкретний аудіовихід плеєра і канал (лівий/правий, L/R); без плеєра зону теж можна завести — привʼязати залізо можна пізніше. Одна звукова карта плеєра може обслуговувати кілька зон одночасно, якщо в неї виведено кілька незалежних каналів.
Поле
Що означає
Приклад на стенді Теремки
Назва зони
людська назва приміщення (обовʼязкове)
напр. «Загальна», «Лаундж»
Темп (BPM)
необовʼязковий швидкий пресет діапазону темпу музики зони
напр. «Кардіо» 128–140
Пристрій / канал (L/R)
який аудіовихід і канал плеєра обслуговує зону — доступно лише коли в клубі вже є плеєр
зʼявляється після позначення чекбокса, якщо плеєр привʼязаний
Гучність зони — профіль і системна гучність Windows
Повзунок гучності зони
Картка «Звук зони» — повзунок «Наскільки гучно» замінює технічні терміни (LUFS, crossfade) простою людською шкалою. BPM-пресет тут же підказує, під який темп музики налаштовано зону. Нижче ховається (в Експертному режимі) поле «Тримати системну гучність Windows, %» — це фіксований рівень гучності самої ОС на клубному ПК, який плеєр підтримує незалежно від внутрішньої гучності треків; його змінюють, лише якщо звук на виході плеєра в принципі занадто тихий/гучний апаратно.
Поле
Що означає
Приклад на стенді Теремки
Наскільки гучно
простий повзунок цільової гучності зони
типово середина шкали
Тримати системну гучність Windows, %
фіксований рівень гучності ОС плеєра (апаратний, не per-трек)
Той самий чекбокс «Привʼязати до пристрою й каналу зараз» з форми нової зони — тут клуб уже має реальний плеєр, тож одразу під чекбоксом зʼявляється випадаючий список конкретних аудіовиходів («Пристрій — назва виходу») і перемикач каналу L/R під ним. Зайняті канали система показує сірим з підписом «зайнято зоною ...», щоб не переплутати з вільними. Обираємо пристрій, тоді канал — і зона одразу знає, куди слати звук.
Що може піти не так. ⚠️ На бойовому порталі форму лише переглянули й закрили Escape — нову зону клубу не створювали.
Поле
Що означає
Приклад на стенді Теремки
Пристрій
конкретний аудіовихід одного з плеєрів клубу
зі списку реальних виходів клубу «Теремки тест»
Канал L/R
лівий чи правий канал обраного виходу — один вихід може обслуговувати 2 зони
Плеєр (словник ↑) — застосунок на
звичайному ПК клубу, який реально видає звук у колонки. Клуб і зони можуть бути ідеально
налаштовані на порталі, але без прикріпленого й онлайн плеєра звуку в залі не буде фізично
— ані музики, ані реклами, ані навіть тривоги.
Де це: фізично на самому ПК у клубі (рецепція чи підсобка зі звуковою
картою) — інсталятор ставить застосунок, який сам генерує собі криптографічну пару
ключів (Ed25519) і реєструється на сервері без ручного введення паролів
(zero-touch-реєстрація). При першому запуску застосунок показує на екрані короткий
«код реєстрації» — саме його вводите на порталі в кроці 2.
Якщо не так: перевстановили застосунок на тому самому ПК (стерли теку даних)
— сервер розпізнає ту саму фізичну машину за стабільним апаратним ідентифікатором ОС і
підхопить ІСНУЮЧИЙ запис плеєра замість того, щоб наплодити дублікат-привида в списку;
спеціально це робити не треба, працює само.
2
Привʼязати плеєр до клубу
Де це: робочий простір клубу → перемикач «Зони / Плеєри» → «Плеєри» →
форма привʼязки. Загальний перелік ще НЕ приписаних плеєрів усієї мережі —
/clubs?view=unassigned.
Що ввести: код реєстрації з екрана застосунку плеєра (крок 1).
Що побачите: плеєр зʼявляється у списку клубу зі статусом звʼязку; тепер
його можна прикріпити до конкретних зон (крок 3).
плеєр зареєструвався на сервері (crok 1), але ще не привʼязаний до жодного клубу — «пул нерозподілені»; фактично склад запасних/ще не встановлених плеєрів мережі.
Онлайн
звʼязок із сервером живий прямо зараз — саме цей стан потрібен, щоб плеєр реально грав щось за розкладом.
Офлайн
звʼязку немає (вимкнений ПК, нема інтернету в клубі, завис застосунок) — сервер і портал далі показують «останній відомий» стан зони, не живий.
Помилка
плеєр на звʼязку, але сам повідомив про технічну проблему (наприклад, не бачить звукову карту) — вимагає уваги на місці, не лише перезапуску з порталу.
Що робити зараз: дивний звук, зависання, плеєр «ніби онлайн, але не грає» —
спробуйте спочатку дії з кроку 5 (перезапустити аудіопроцес, ресинхронізація, тест-тон).
Якщо не допомогло — пишіть в ІТ-службу мережі з номером/назвою плеєра й описом
симптому; на бекенді вже є команда збору діагностики (логи й техстан плеєра архівом),
ІТ-служба може запустити її віддалено — але власної кнопки для цього в самій картці
плеєра поки немає (очікується в майбутньому оновленні порталу).
Перемикач «Зони / Плеєри» на шапці клубу показує замість карток зон список фізичних плеєрів (ПК на рецепції/у залі), приписаних до клубу: версія клієнта, час останнього звʼязку, чи оновлений. Тут же приписують новий плеєр до клубу/зони або відв'язують старий. Порожній список для клубу з активними зонами — сигнал, що звук грає «в нікуди» (плеєр ще не встановлено чи не приписано). Загальний перелік ще не приписаних плеєрів мережі — на /clubs?view=unassigned.
У картці плеєра, нижче технічних деталей (версія, диски, аудіовиходи), — блок «Віддалені дії»: типово рестарт застосунку плеєра, примусова ресинхронізація розкладу/банку файлів і тест-тон (перевірити, що звук взагалі йде на потрібний вихід). Кожна кнопка відкриває підтвердження (ConfirmDialog) з поясненням наслідку — випадковий клік нічого не ламає, поки не підтвердите ще раз. Небезпечні дії позначені червоним.
Що може піти не так. ⚠️ Команди реально виконуються на живому ПК клубу — на бойовому порталі ми відкрили картку тільки для перегляду, жодної дії не підтверджували.
На бекенді мережі вже є команда «Зібрати діагностику» (collectDiagnostics) — плеєр сам вирішує, які логи й техстан зібрати, і вивантажує їх на сервер архівом, щоб ІТ-служба розібралась віддалено, без виїзду в клуб. У цій картці своєї кнопки для неї поки немає (з'явиться в майбутньому оновленні) — сьогодні цю команду за потреби запускає ІТ-служба мережі напряму, не менеджер контенту чи адміністратор клубу.
Форма привʼязки фізичного плеєра (ПК у клубі) до клубу — зазвичай за унікальним ключем/кодом реєстрації, який показує застосунок плеєра при першому запуску на місці. Після привʼязки плеєр зʼявляється у списку клубу зі статусом звʼязку, і його можна прикріпити до конкретних зон. Ми заповнили приклад і закрили форму без реального збереження, щоб не плодити тестові записи плеєрів.
Поле
Що означає
Приклад на стенді Теремки
Код реєстрації плеєра
унікальний ключ, який видає застосунок плеєра при першому запуску
В інтерфейсі поки нема — робиться. Не вдалося зняти автоматично: дії «Зібрати діагностику» немає в поточному UI — блок «Віддалені дії» картки плеєра містить рівно 5 команд: Рескан пристроїв, Рестарт аудіо-ядра, Рестарт служби, Ребут ПК, Примусовий ресинк (frontend/src/lib/playerRemoteActions.tsx, REMOTE_ACTIONS) — не вигадуємо шосту. Якщо елемент дійсно відсутній в UI — це зафіксовано свідомо, не вигадано.
Де шукати: https://slaudio.derg.in.ua/schedules?weekday=2&club=2&zone=3
5. Музика
Довідково — рівні гучності (LUFS). Система тримає різні цільові рівні гучності для різних типів контенту, щоб слухач не чув «стрибків» між музикою й рекламою: музика — −15 LUFS, реклама — −9 LUFS (голосніше за музику навмисно, щоб виділялась), службові оголошення — −8 LUFS (найгучніше — важливо, щоб почули). Ці цифри рахуються автоматично при заливці файлу в банк (колонка «Гучність (LUFS)» у кроці 5.1) — вручну підганяти нічого не треба.
Банк файлів — спільне сховище для ВСЬОГО аудіо мережі: музики,
реклами (разом з джинглами) і екстрених службових записів. Три типи, а не купа
безсистемних тек.
Де це: головне меню → «Файли». Ліва панель — дерево тек (як у звичайному
провіднику), права — таблиця файлів обраної теки.
Три типи файлів мережі: «music» (музика для дейпартів), «ad» (реклама — і
саме сюди технічно потрапляють джингли, семантично вони ближчі до реклами, ніж до
музики), «emergency» (службові/екстрені — хвилина мовчання, оголошення закриття,
тривоги). Тип визначає, у якій колонці/розділі порталу файл узагалі можна обрати.
Що натиснути: «+ Завантажити файли» → перетягнути або обрати з диска;
заливка пакетна, кожен файл — окремий прогрес.
Що відбувається автоматично: для кожного файлу запускається фонова черга
аналізу з чотирма станами — «в черзі» → «рахується» → «готово» (з’являється число
LUFS у таблиці) або «помилка» (пошкоджений/непідтримуваний файл). Поки статус не
«готово», файл технічно вже є в банку, але точну гучність система ще не знає.
Якщо не так: статус «помилка» не зникає — перевірте сам файл (формат,
цілісність), перезалийте; порожня колонка «Ознака» — назва файлу не збіглась з жодним
тегом довідника, див. розділ «8. Реклама» → Ознаки ↑.
Де це: «Налаштування» → зона → список профілів доби. Кількість профілів на
зону — ДОВІЛЬНА (від нуля до скількох завгодно), а не три захардкоджені «пік/непік/
решта» — просто рядки цієї таблиці.
Поле
Що означає
Приклад
Дні тижня / час дії
коли профіль активний
Пн–Пт, 07:00–12:00
Тривалість блоку
на які «корзинки» ріжеться цей відрізок доби (та сама одиниця, що в розділі «8. Реклама»)
20 хв
Макс. реклами на блок
скільки рекламних роликів максимум влізе в один блок
4
Частка музики, %
скільки відсотків блоку — музика, решта — реклама (одне явне поле замість трьох різних старих форматів)
Нагадування.
Профілі зони мають СУЦІЛЬНО покривати робочі години клубу без прогалин — інакше
«Перегенерувати» поверне помилку. Детально: розділ «2. Клуб»,
крок 4.
4
Джерело музики: банк, пул чи плейлист
Кожен профіль доби грає музику з ОДНОГО з трьох джерел (перемикач, не можна
одночасно): «банк» (типово, стара звична поведінка — весь відповідний банк без
фільтрів), «пул» (автоматична вибірка за критеріями — крок 5), «плейлист» (заздалегідь
складений вручну список треків, без жодного автопідбору — коли потрібен ПОВНИЙ ручний
контроль над порядком).
5
Автопул — налаштування
Що це: іменований набір критеріїв (жанр/ознака/BPM тощо), за яким система
сама щоразу заново збирає підбірку треків із банку — не статичний список, а жива
вибірка.
Захист від набридання: два окремі ліміти — мінімум ГОДИН до повторного показу
того самого треку, і мінімум ХВИЛИН до повторного показу того самого виконавця
(окремо один від одного). Порожньо на рівні пулу = успадкувати від зони.
Якщо не так: та сама пісня чи виконавець крутиться підозріло часто — перевірте
ці два ліміти пулу/зони, найімовірніше вони або не задані, або занадто малі відносно
розміру самого пулу (наприклад, у пулі всього 5 треків — 2-годинний ліміт повтору
фізично неможливо витримати).
Навіщо: коротка звукова відбивка, яка вводить рекламний блок — за прямим
наказом мережі джингли існують САМЕ для реклами й мають звучати ПЕРЕД нею, не
випадково серед музики.
Де налаштувати: конкретний файл джингла — на рівні зони (успадковується
всіма дейпартами, якщо не перевизначено); ГДЕ саме він лунає в блоці — поле «Джингл» у
самому профілі доби (крок 3: block/ad/none). Тривалість за замовчуванням — 3 секунди
(мережевий дефолт, коли в самого файлу довжина не визначена як пресет).
Якщо не так: джингл не задано (порожньо) — це НЕ помилка й не залишає «дірку»
в ефірі: генератор розкладу просто не створює позицію під джингл узагалі, а не створює
порожню позицію, яку плеєр потім пропускає з попередженням (так було раніше, тепер
виправлено).
Кроки за екранами (довідка зі скрінами)
Нижче — кожен екран розділу окремо, повністю.
23
Банк файлів — теки, файли, ознака й гучність
Таблиця файлів з колонками «Ознака» і «Гучність (LUFS)»
Банк файлів — сховище всієї музики, реклами й службових оголошень мережі, організоване по папках зліва (дерево тек, як у звичайному провіднику). Таблиця праворуч показує назву, тривалість, формат кожного файлу, а також дві важливі колонки: «Ознака» (жанр/призначення — за нею будуються автопули) і «Гучність (LUFS)» — результат автоматичного аналізу гучності при заливці, за яким система нормалізує звук між файлами. Прослухати файл можна прямо тут, без завантаження на свій пристрій.
Кнопка «+ Завантажити файли» відкриває зону перетягування (drag-and-drop) або вибір файлів з диска. Після вибору система сама запускає аналіз кожного файлу — визначає тривалість, формат і LUFS-гучність, без ручного втручання. Великі партії заливаються пакетно, прогрес видно по кожному файлу окремо.
Що може піти не так. ⚠️ Тут ми лише відкрили діалог для знімку — жодного реального файлу на бойовий портал не заливали.
Ліва панель банку файлів — дерево тек, як у звичайному провіднику: музика, реклама постійна/акційна, службові оголошення, джингли, і так далі за тим, як мережа сама організувала свій банк (структуру тек ніхто не нав'язує — заводьте під себе). Клік по теці фільтрує таблицю файлів праворуч лише на її вміст, лічильник поруч з назвою — скільки файлів усередині (з підтеками разом). Перетягування файлів між теками працює прямо тут.
Дейпарт — відрізок часу доби зі своїми правилами відтворення: «ранок» тихіше й повільніше, «вечірній пік» гучніше й енергійніше. У зони може бути один дейпарт на всю добу або кілька послідовних. Кожен рядок показує час дії, режим підбору музики (random — випадково з пулу, intelligent — з урахуванням BPM/енергії доби), і чи ввімкнено режим реклами та джингл для цього відрізка. Клік по рядку відкриває детальне редагування конкретного дейпарту.
Правило дейпарту — час, режим, BPM, реклама, джингл
Поля часового діапазону і режиму музики
Детальна форма одного профілю доби: часовий діапазон дії, режим підбору музики (random/intelligent), діапазон BPM (темп треків, які система вважає доречними для цього відрізка), увімкнення рекламного режиму («за піками» чи звичайний інтервальний/pacing) і джингл — коротка відбивка між треками чи перед рекламним блоком. Зміни в цій формі впливають на розклад одразу після перегенерації.
Що може піти не так. ⚠️ Форму на бойовому порталі тільки переглянули й закрили без збереження.
Поле
Що означає
Приклад на стенді Теремки
Час дії
початок і кінець відрізка доби
напр. 07:00–12:00
Режим
random (випадково) чи intelligent (за BPM/енергією)
intelligent
BPM
діапазон темпу треків, доречних у цей час
напр. 90–120
Реклама
чи вмикати рекламні вставки в цьому дейпарті
увімкнено, «за піками» або інтервальна
Джингл
файл-відбивка між музикою/рекламою в цьому дейпарті
Редактор профілів доби — список усіх профілів зони
Весь список профілів доби зони одним екраном
Той самий список профілів доби зони, але акцент саме на РЕДАКТОРІ списку — кожен рядок можна відкрити кліком (детальна форма вже показана окремим кроком інструкції), видалити чи додати новий профіль кнопкою зверху картки. Профілі йдуть по порядку часу доби й мають покривати добу без прогалин — прогалину плеєр заповнює локальним резервом, а не тишею, але це вже відхилення від плану, яке варто побачити тут одразу.
Вкладка «Плейлисти·Пули» бібліотеки розкладу — просунуте мережеве налаштування (видно лише в Експертному режимі). «Пули» — це НЕ фіксований список файлів, а жива вибірка за критеріями (ознака/жанр, темп BPM), яка щоразу перераховується заново; лічильник «N збігів» одразу показує, чи є що грати. Пул не перетягується на таймлайн файлом, як плейлист вище, — його призначають цілим ДЖЕРЕЛОМ МУЗИКИ конкретного профілю доби (клік по смузі дейпарта на таймлайні → «Джерело музики» → «Пул»).
Хвилина мовчання, закриття й живе оголошення — за 4 кроки
Службові оголошення — три РІЗНІ механізми, які часто плутають:
щоденна автоматична пауза (хвилина мовчання), заплановане попередження про закриття, і
разова ручна команда «сказати щось просто зараз».
Коротко: щоденна автоматична пауза музики й оголошень на 60 секунд у задану
хвилину — мережевий дефолт 09:00, клуб чи навіть окрема зона можуть перевизначити свій
власний час. Звучить НАВІТЬ під час тривоги — один із двох пріоритетів, вищих за
тривогу.
Коротко: заплановані попередження за N хвилин до закриття клубу (типово
30/15/5 хв) плюс окремий запис у момент фактичного закриття — кожен інтервал зі своїм
файлом з банку службових.
Що ввести: зону (або одразу всі зони клубу) і конкретний файл оголошення з
банку службових — і надіслати.
Чим відрізняється від кроків 1–2: це РАЗОВА негайна дія, не частина плану на
майбутнє — нічого не змінює в розкладі чи дейпартах, просто одноразово вставляє
оголошення в ефір прямо зараз (наприклад, «увага, через 5 хвилин починається
тренування в зáлі 2» — те, що не запланувати заздалегідь).
Якщо не так: кнопка неактивна чи оголошення не долетіло — перевірте статус
плеєра зони («4. Плеєр») — це так само жива команда, а не запис у базу, і працює,
лише поки плеєр онлайн. ⚠️ Це РЕАЛЬНА команда в живу залу — перш ніж тиснути
«Надіслати», переконайтесь, що обрали правильну зону і файл.
Де це: банк файлів («5. Музика») — тип «emergency» (службові/екстрені), той
самий банк, звідки беруться і хвилина мовчання, і закриття, і тривоги.
Якщо потрібного запису немає: залийте новий файл тим самим діалогом
завантаження, що й для музики/реклами — система однаково пораховує його тривалість і
гучність (LUFS). Порада: для оголошень закриття підбирайте файл під конкретний інтервал
так, щоб він природно завершувався до фактичного моменту закриття (особливо запис «у
момент закриття», 0 хв).
Кроки за екранами (довідка зі скрінами)
Нижче — кожен екран розділу окремо, повністю.
30
Оголошення «клуб зачиняється»
Таблиця інтервалів попередження про закриття (30/15/5 хв)
Нижче графіка годин — налаштування оголошень про закриття клубу. Прапорець «Оголошувати про закриття» вмикає всю функцію. Для кожного інтервалу «за N хвилин до закриття» можна призначити свій аудіозапис із банку (за півгодини — просте нагадування, за 5 хвилин — прохання пройти до роздягалень); якщо запис не обрано, система бере найкоротший придатний із банку екстрених. Останній рядок «у момент закриття» — окремий запис, розрахований звучати так, щоб завершитись рівно на закритті. У прикладі клубу налаштовано інтервали 30, 15 і 5 хвилин плюс запис «зачинено».
Поле
Що означає
Приклад на стенді Теремки
Оголошувати про закриття
вмикач усієї функції для клубу
увімкнено
за N хв до закриття
момент попередження до фактичного закриття
30, 15, 5 хв
Який запис звучить
файл з банку для цього інтервалу (порожньо = автопідбір)
Форма миттєвого службового оголошення «просто зараз», без чекання розкладу: обрати зону (або всі зони клубу), файл оголошення з банку службових записів, і надіслати. На відміну від дейпартів/розкладу, це РАЗОВА дія прямо зараз — нічого не змінює в плані на майбутнє. На бойовому порталі цю форму свідомо не відкривали (навіть зайве відкриття з реальними даними клубу — зайвий ризик випадкового кліку по відправці), тому знімок саме з dev-стенду.
Довідково — пріоритети в ефірі. Коли кілька речей претендують на той самий момент, система розставляє їх так (від найвищого пріоритету до найнижчого): тривога → хвилина мовчання → службові оголошення (закриття) → реклама → музика. Музика під будь-яким оголошенням падає в 0 — це нормально, не збій. Хвилина мовчання й оголошення закриття звучать НАВІТЬ під час тривоги — це навмисно. А от рекламу тривога глушить: для некритичних рівнів — жовтий профіль, гучність музики й реклами падає до 75%, для критичних — червоний профіль, повна тиша (0%), окрім самої сирени/дикторського тексту тривоги.
Уточнення для тих, хто читав старі матеріали: у мережі рівно
6 рівнів небезпеки — жовта повітряна, червона повітряна, артобстріл, вуличні
бої, хімічна загроза, ядерна загроза (за зростанням серйозності: ядерна й хімічна
загроза важливіші за звичайну повітряну). Число «18», яке зустрічається в інтерфейсі й
старих підписах, — це 6 рівнів × 3 типи файлів на кожен (старт тривоги / поки
триває / відбій) = 18 окремих аудіозаписів у ПОВНОМУ профілі, а не 18 різних сценаріїв
небезпеки.
Коли активні кілька тривог одночасно (різні джерела бачать різне) — на плеєрі
завжди грає НАЙВАЖЧА з активних, автоматично, без ручного вибору.
2
Мережеві дефолти тривоги
Де це: «11. Налаштування» → мережеві правила тривог — базовий набір, який
успадковує кожен клуб/зона, якщо немає власного перевизначення (крок 3).
3 типи хвиль на кожен рівень: «стартова» (грає на початку, можна кілька
разів підряд з паузою між повторами), «поки триває» (нагадування з певним інтервалом,
можна обмежити кількість повторів — наприклад, некритичний жовтий рівень нагадує один
раз через 15 хв і все, далі мовчить, хоча рівень технічно ще активний), «відбій»
(свій окремий файл на кожен рівень — «відбій жовтої» і «відбій червоної» звучать
по-різному, а не одним спільним записом). Окремо — рівень гучності музики МІЖ
хвилями оголошень (не 0 обов'язково, налаштовується).
Де це: «11. Налаштування» → зона → картка реакції на тривогу — лишається
видимою ЗАВЖДИ, в обох UI-режимах (Простому й Експертному), бо це питання безпеки
людей, не другорядна опція.
Навіщо перевизначати: «Критичність клубу» (розділ
«2. Клуб», крок 2) реально міняє СЦЕНАРІЙ — критичні клуби на старті тривоги
додатково окремо оголошують фразу «клуб зачиняється, пройдіть в укриття» (окрема фаза
закриття перед нагадуваннями), некритичні — просто одне нагадування через 15 хв.
Профіль конкретної зони перевизначає мережевий дефолт лише для неї.
Де це: кнопка «🚨 Тривога» на шапці клубу — той самий сценарій, що
спрацював би автоматично із зовнішнього джерела повітряних тривог, але оголошений
людиною вручну.
Що ввести: один із 6 рівнів + явне підтвердження перед відправкою.
Поки тривога активна: та сама кнопка перетворюється на дві окремі — «🔧
Рівень» (змінити рівень без відбою — наприклад, підвищити з жовтої до червоної) і
«✅ Відбій» (зняти тривогу) — навмисно ОКРЕМІ контроли, щоб випадковий клік не міг і
оголосити тривогу, і зняти її одним і тим самим натисканням.
Якщо не так: ⚠️ це РЕАЛЬНА команда в живі зали клубу — перевіряйте рівень
двічі перед підтвердженням, особливо на бойовому порталі.
Коротко: музика й реклама приглушуються за профілем рівня (типово жовтий —
до 75%, критичні — 0%), хвилина мовчання й закриття все одно звучать, реклама, перебита
тривогою, того самого дня не повторюється.
Кнопки «🚨 Тривога» і «📢 Оголошення» на шапці клубу
Дві швидкі дії на шапці клубу: «🚨 Тривога» вручну запускає мережеву тривогу (той самий сценарій, що й автоматична — сирена/дикторський текст у залах), «📢 Оголошення» — миттєве службове оголошення «просто зараз» без чекання розкладу. Обидві дії відкривають окрему форму з вибором рівня/тексту і ЯВНИМ підтвердженням перед відправкою.
Що може піти не так. ⚠️ Це РЕАЛЬНІ команди в живі зали клубу — на бойовому порталі ми відкрили лише кнопки для знімку, підтвердження всередині НЕ натискали.
Форми всередині (AnnounceNowModal / ManualAlarmModal) свідомо не відкривались на проді — навіть відкриття зайвого модального вікна з реальними даними клубу не додає цінності знімку, а ризик випадкового кліку по «Надіслати» є. Приклад форми — див. dev.
Форма хвиль тривоги (стартова / нагадування / закриття / відбій)
Мережевий дефолт тривоги — базовий набір хвиль (стартова, нагадування, закриття клубу, відбій), який успадковує кожен клуб, якщо не має власного перевизначення. Для кожної хвилі обирається аудіофайл, кількість повторів і пауза між ними; окремо — рівень гучності музики між оголошеннями (music_level_between_percent) і fade in/out. Це основа: конкретний клуб чи зона можуть мати власний, точніший профіль поверх цього дефолту.
Поле
Що означає
Приклад на стенді Теремки
Стартова хвиля
файл + скільки разів підряд + пауза між повторами на початок тривоги
файл сирени/диктора мережі
Нагадування
файл + інтервал повторів, поки тривога триває
напр. кожні 5 хв
Рівень музики між оголошеннями
на скільки % приглушується музика під час хвилі тривоги
Випадаючий список рівня тривоги і форма хвиль під ним
Ця картка лишається видимою завжди, в обох UI-режимах (Простому й Експертному) — це питання безпеки людей у залі, не другорядне налаштування. Випадаючий список дозволяє обрати один із 18 рівнів тривоги і побачити/змінити, що саме грає зоні на цьому рівні: критичні рівні (пряма загроза) зазвичай мають гучну недвозначну сирену без варіантів «тихіше», некритичні — м'якший попереджувальний сигнал. Профіль зони перевизначає мережевий дефолт вище лише для цієї конкретної зали.
Поле
Що означає
Приклад на стенді Теремки
Рівень тривоги
один із 18 рівнів мережевої класифікації небезпеки
обирається зі списку, для кожного — свій набір файлів
Один рівень тривоги — хвилі старт/закриття/нагадування/відбій
Розгорнутий рівень тривоги з полями всіх фаз хвилі
Реакція зони на тривогу — НЕ окремий діалог, а рядок зі списку 18 рівнів, що розгортається кліком по назві (акордеон, не модалка — свідомий вибір: рівнів багато, гортати попапи незручніше за список). Розгорнутий рівень показує всі фази хвилі одним екраном: файл і кількість повторів на старті тривоги, файл нагадування, що звучить поки триває, і файл відбою. Якщо для рівня немає власного налаштування зони — діє мережевий дефолт (кнопка «З мережі» одразу копіює його як стартову точку для правок).
Ручний запуск мережевої тривоги — той самий сценарій, що спрацював би автоматично (з зовнішнього джерела повітряних тривог), але оголошений людиною вручну: обрати один із 18 рівнів і явно підтвердити перед відправкою. Поки тривога активна, ця ж кнопка перетворюється на «🔧 Рівень» (змінити рівень без відбою) і «✅ Відбій» — окремо, щоб випадковий клік не міг і оголосити, і зняти тривогу одним і тим самим контролом.
Довідково — де реклама фізично не звучить. Незалежно від таргетингу й пріоритету кампанії, система НІКОЛИ не ставить рекламний блок ближче 20 секунд до хвилини мовчання чи оголошення закриття, і ніколи — після фактичного закриття клубу. Це захист від ситуації «реклама грає поверх хвилини мовчання» чи «реклама лунає в порожньому залі вночі».
Як додати рекламу і щоб вона зіграла в потрібному клубі — за 7 кроків
Наскрізний шлях від аудіофайлу на вашому диску до реального звуку в
залі. Кожен крок нижче — це «що натиснути → що побачити → якщо не так, то…», з посиланням
на повний крок зі скріном там, де він є.
Що зробити: назвіть mp3/wav-файл за форматом
<Назва>_<тег>_<XX>сек.mp3 — наприклад
Оренда корта_сквош_15сек.mp3. Для акційної реклами з дедлайном додайте дату
в назву: SL_Солярій_29.08-31.08 15сек.mp3.
Що побачите: нічого поки що — це підготовка файлу на вашому диску, до порталу
ще не торкались.
Якщо не так: тег визначається ЛИШЕ за довідником ознак (17 записів на проді) —
система шукає серед відомих тегів НАЙДОВШИЙ збіг, що стоїть одразу перед тривалістю.
Немає збігу в довіднику → тег не проставиться взагалі, парсер нічого не вигадує з
випадкового слова. Формати дати: «ДД.ММ-ДД.ММ», «до ДД.ММ», повна дата «ДД.ММ.РРРР» і
навіть назва місяця («Червень 2026»).
Повний перелік тегів нижче ↓
2
Залити файл у банк і перевірити ознаку
Що натиснути: «Банк файлів» → «+ Завантажити файли» → перетягнути файл або
обрати з диска.
Що побачите: система сама аналізує файл — тривалість, формат, гучність
(LUFS), і одразу підставляє розпізнаний тег у колонку «Ознака» таблиці банку.
Якщо не так: колонка «Ознака» лишилась порожньою — назва не збіглась з
жодним тегом довідника. Проставте тег вручну прямо в таблиці банку, або виправте
назву файлу й перезалийте.
Що натиснути: «Реклама» → «+ Нова кампанія» → майстер: крок 1 обирає ролик і
назву, крок 2 — клуби/таргетинг, крок 3 — період, крок 4 — перевірка перед стартом.
Таргетинг — що обрати: «за ознаками клубів» (рекомендовано для більшості
випадків) — кампанія сама зʼявляється у КОЖНОМУ клубі з увімкненим тегом, і в НОВИХ
клубах теж, без ручного донавчання. «Напряму на клуб/зону» — коли реклама справді
стосується лише конкретної адреси (наприклад, акція саме для одного клубу), а не
послуги, яка є в кількох клубах.
Пріоритет, квота, період: пріоритет вирішує, хто виграє слот при конфлікті;
квота — скільки показів на день у конкретному профілі доби; період — для акційної
реклами ставимо дату з назви файлу («до»). Повний розбір усіх полів —
нижче ↓.
Якщо не так: кампанія створена, але «Дні тижня» лишили порожніми — за
замовчуванням це означає «жодного дня», а не «щодня»! Найчастіша прихована причина
«кампанія є, а не грає».
Що перевірити: форма клубу → чіпи «Ознаки клубу (сервіси)» — саме ці чіпи
вирішують, чи «побачить» клуб кампанію, таргетовану за ознакою.
Якщо не так: ознаки нема в чипах клубу → кампанія цей клуб просто пропускає,
навіть якщо все інше налаштовано ідеально. Увімкніть ознаку у формі клубу (крок «✎
Редагувати») — реклама підхопиться без додаткових дій із боку кампанії.
Що це впливає: режим НЕ вирішує, чи потрапить ролик у клуб (це
крок 3–4 вище) — він
вирішує, ЯК покази розподілені протягом дня. «За піками» — корзинки
під реальні години напливу людей (блок ~20 хв у пік / ~30 хв у непік, деталі й цифри
— нижче ↓). «Простий»/«Профі» — рівномірний інтервальний
розподіл (pacing) по денній нормі.
Якщо не так: нічого не «ламається» при неправильному режимі — просто реклама
розподіляється не так, як очікує менеджер (наприклад, рівномірно замість концентрації
у вечірній пік).
Що натиснути: «Розклад» → клуб → зона → «Перегенерувати» → обрати область дії
(одна зона чи весь клуб) → підтвердити.
Що побачите: на таймлайні дня зʼявляються нові рекламні «кубики» — знайдіть
свій ролик за назвою кампанії (клік по кубику показує деталі). Прогноз показів
(«Вільно/заброньовано») видно на сітці піків, якщо клуб у режимі «за піками».
Якщо не так: кубика немає взагалі — найімовірніше зачепився один із
попередніх кроків (ознака / період / дні тижня / квота вичерпана) — див.
«Типові помилки» ↓. Перегенерація — руйнівна щодо
незакріплених (не pinned) ручних правок дія, тому підтвердження явне й окреме.
Прямо зараз: картка зони на дашборді клубу — бейдж «▶ Грає» і назва поточного
треку/ролика, живий статус, не план.
За минулий період: «Звіти» → фільтр по клубу/періоду → факт показів
(proof-of-play), можна вивантажити CSV. Детальніше про різницю «план vs факт» —
нижче ↓.
Якщо не так: у звіті нуль показів при налаштованій кампанії — повертайтесь
до кроків 3–6: найчастіше це квота 0, дні тижня порожні, або клуб без потрібної
ознаки.
«Профі»-форма кампанії (див. крок зі
скріном нижче) — це найповніший набір ручок у розділі. Ось кожне поле окремо: що означає,
які значення допустимі, приклад зі стенду Теремки, і що станеться, якщо виставити його
неправильно.
Поле
Що означає
Допустимі значення
Приклад зі стенду
Наслідок помилки
Назва
людська назва кампанії — лише для списків/пошуку, на ефір не впливає
будь-який текст
«Абонемент −20%»
лише незручно шукати в списку
Ролик / креативи
один основний файл (media_asset_id) або список кількох роликів (creatives) з вагою ротації (weight) — більша вага = частіше грає саме цей файл усередині кампанії; кожен креатив може мати свій мін. інтервал показу
1+ файлів з банку
1 ролик, вага 1 (типовий випадок)
жодного ролика не прикріплено → кампанія існує, показів 0
Категорія
довідникова тема оголошення (напр. «Солярій», «Абонементи», «Вендінг») — за нею рахується правило сусідства: той самий тег не звучить двічі поспіль ближче, ніж min_gap_minutes (типово = тривалості блоку дейпарту, якщо не задано вручну)
з довідника категорій мережі
категорія «Абонементи»
два ролики однієї теми можуть звучати підряд — не помилка системи, втрачена можливість розвести їх
Пріоритет
число «більше = важливіше»; у майстрі «Простий» — 4 фіксовані рівні, у «Профі»-формі — будь-яке ціле 0–100. Вирішує, хто виграє слот при конфлікті двох кампаній
100 Найвища / 75 Висока / 50 Середня / 25 Низька (пресети), або 0–100 вручну
постійна реклама мережі — типово 50 (Середня)
занадто низький → сусідні кампанії постійно перемагають за слот, показів мало навіть при вільній квоті
Клас спота
«звичайний» (standard) — звичайна конкуренція за слот за пріоритетом. «гарантований час» (fixed) — прикріплюється до конкретної позиції в конкретному профілі доби, завжди там. «гарантована частка» (sov) — займає задану % усіх слотів профілю. «наповнювач» (filler) — грає лише коли більше нічим заповнити слот
standard / fixed / sov / filler
більшість кампаній — «звичайний»
«гарантований час» без дейпарту й позиції форма просто не збереже (валідація вимагає обидва поля разом)
Період «діє з/до»
дата початку і кінця дії кампанії; порожньо з обох боків = безстроково («постійна»)
дата / порожньо
акційна: 29.08–31.08; постійна: без дат
⚠️ дата «до» раніша за «від» — реальний баг, знайдений 2026-09-12: система приймала це МОВЧКИ, і кампанія не грала ЖОДНОГО дня без жодного попередження; тепер форма одразу показує помилку
Дні тижня
мультивибір Пн–Нд
0–7 днів
«щодня» — усі 7 позначені
🚨 порожньо = кампанія НЕ грає ЖОДНОГО дня (не «всі дні за замовчуванням»!) — найчастіша прихована причина «кампанія є, а не грає»
Цілі (таргетинг)
три способи можна поєднувати одночасно: конкретні зони, конкретні клуби, і ознаки (теги) — кампанія грає всюди, де збігся ХОЧ ОДИН із критеріїв
зони / клуби / теги (можна кілька разом)
тег «сквош» — кампанії 33–48 таргетовані так
занадто вузько/відсутньо → ніде не грає; занадто широко (усі теги одразу) → грає там, де не мала б
Квота
окреме число показів НА ДЕНЬ для кожного профілю доби (дейпарту) окремо — не одне число на всю добу
0+ показів/день на дейпарт
6 показів/день у дейпарті «вечірній пік»
немає рядка квоти для дейпарту → кампанія в ньому не показується взагалі
Ціль (goal_type)
«daily» (типово) — квота вище і є денною ціллю напряму. «weekly»/«total» — квота стає стелею, реальна щоденна ціль рахується системою динамічно з тижневої/загальної суми (у базу не пишеться, рахується щоразу заново)
daily / weekly / total + число
daily — типовий вибір для більшості кампаній
—
Мін. інтервал показу
мінімум секунд між двома показами ОДНОГО й того самого ролика цієї кампанії — захист від «щойно відіграв, і одразу знову»
0+ секунд
напр. 1800 с (30 хв)
занадто малий інтервал → той самий ролик може звучати дратівливо часто
Не рахувати в лічильнику (uncapped)
показ «поверх» усіх квот, не витрачає власний ліміт — Вітине «не рахувати в лічильнику», типово для наповнювача
так/ні
типово вимкнено
—
Перенесення недобору (carry_underdelivery)
вимкнено типово — недобір показів за день просто пропадає. Увімкнено (Профі) — учорашній борг додається до сьогоднішньої цілі
так/ні
типово вимкнено
увімкнене без потреби може роздути покази наступного дня понад очікування
Тригери на подію
ролик прив'язується не до профілю доби, а до конкретної мережевої події клубу — «за N хвилин до закриття» або «на відкритті»
before_closing / on_opening + хвилини зсуву
напр. «за 10 хв до закриття»
—
Стан (is_active)
вимикач «показувати/не показувати» без видалення кампанії й історії показів
активна/на паузі
—
—
Кроки за екранами (8 скріншотів)
Нижче — кожен екран розділу окремо, зі скріншотом і повним описом полів (те саме, на що посилаються кроки сценарію вище).
37
Список рекламних кампаній
Список кампаній із бейджами статусу й темпу
Таблиця класичних кампаній мережі — статус (активна/на паузі/завершена), бейдж темпу показів (PacingBadge: наздоганяє кампанія свою денну норму чи відстає) і швидкий доступ до редагування/видалення. Кнопка «+ Нова кампанія» вгорі відкриває майстер у 4 простих кроки — типовий шлях створення. Повна «Профі»-форма з усіма ручками (пріоритет, квоти по дейпартах, точний таргетинг) доступна з кроку «Розширені налаштування» майстра або через «✎ Редагувати» вже наявної кампанії.
Єдиний дефолтний шлях створення нової класичної кампанії — майстер CampaignWizard: крок 1 обирає ролик і назву, крок 2 — клуби, крок 3 — період показу, крок 4 — перевірка перед стартом (звідти ж є перехід у повну «Профі»-форму). Зроблено навмисно простим — для людей, далеких від ПК, без розбору просунутих термінів.
Що може піти не так. ⚠️ На бойовому порталі кнопку не натискали навмисно: запуск майстра створює чернетку кампанії одразу при переході на крок 2, тому приклад повного майстра знято на dev.
Поле пошуку ролика в банку і поле «Назва кампанії»
Крок 1 майстра простої кампанії: перетягніть аудіофайл або знайдіть уже залитий у банку через поле «Або оберіть з медіабанку» (пошук за назвою файлу, як тут). Щойно обрано перший ролик — під ним зʼявляється поле «Назва кампанії», автозаповнене іменем файлу (без розширення); назву можна одразу переписати на людську. Кнопка «Далі» активна лише коли є і ролик, і назва.
Поле
Що означає
Приклад на стенді Теремки
Ролик
аудіофайл реклами — перетягнути або знайти в банку
Крок 2 «Де гратиме»: великі картки клубів замість дрібного списку зон — свідоме спрощення проти повної «Профі»-форми, де можна ціляти навіть в окрему зону. Кнопка «Усі клуби» позначає всю мережу одним кліком. Тут для знімку позначено лише «Демо клуб (інструкція)» — на реальному стенді так само можна обрати кілька конкретних клубів. Нижче — чіпи ознак клубу: додатково звужують вибір (ролик гратиме лише в клубах з обраною ознакою серед уже позначених), а не замінюють вибір клубів.
Крок 3 «Коли і скільки»: за замовчуванням кампанія «безстрокова» (без дати кінця) — можна перемкнути на конкретний період «з/до». Тут же — важливість кампанії (пріоритет при конфлікті слотів) і, якщо серед обраних клубів є зони в режимі «За піками», жива підказка прогнозу: чи вистачить місткості на обрану кількість показів, чи план буде обрізано.
Майстер простої кампанії, крок 4 — перевірка перед стартом
Зведення параметрів кампанії і кнопка «Створити»
Фінальний крок «Перевірка» — зведення всього обраного: ролик, клуби/ознаки, період і важливість одним екраном, перед тим як натиснути «Створити». Звідси ж є перехід у повну «Профі»-форму (`AdCampaignFormModal.tsx`) — якщо простих 4 кроків не вистачило й потрібні точний таргетинг по зонах, квоти по дейпартах чи ручний пріоритет.
Що може піти не так. ⚠️ Для знімку дійшли до цього кроку і закрили форму — кампанію на dev-стенді не створювали, щоб не плодити тестові записи при кожному перезнятті.
Кампанія — таргетинг, пріоритет, квота, період (реальні дані)
Блок «Таргетинг» з перемикачем ознаки/напряму
Повна («Профі») форма реальної кампанії мережі — таких на стенді 33–48. «Таргетинг» пропонує два взаємовиключні способи: «Ознаки клубу» (непрямий — кампанія автоматично грає в кожному клубі з обраною ознакою, зручно для масштабування на нові клуби) або прямий вибір конкретних клубів/зон (точковий контроль, але новий клуб треба додавати вручну). «Пріоритет» вирішує, яка кампанія програє при конфлікті слотів. «Квота» — скільки показів на день у конкретному дейпарті зони. «Період» — дата початку/кінця дії кампанії (або «безстроково»).
Що може піти не так. ⚠️ Форму тільки переглянули й закрили Escape — жодних змін не зберігали.
Реклама буває двох видів за назвою файлу. «Постійна» — без дедлайну в назві, грає, доки кампанію не зупинять вручну. «Акційна» — з датою в назві файлу, наприклад «SL_Солярій_29.08-31.08 15сек»: після 31.08 система сама знімає ролик з ротації, ручного втручання не треба (у картці кампанії/файлу це видно як бейдж «до 31.08»; сама функція автозняття прострочених роликів ще доопрацьовується, тож у перехідний період варто самому звіряти дедлайни в назвах файлів).
Поле
Що означає
Приклад на стенді Теремки
Таргетинг
за ознаками клубу (непрямо) чи напряму по клубах/зонах
Сітка календаря з позначеними активними кампаніями
Календарне уявлення показує наочно, які кампанії активні в які дні — зручно заздалегідь помітити накладки (наприклад, дві кампанії з високим пріоритетом претендують на той самий слот того самого дня). Клік по дню чи кампанії в календарі веде до її картки. Це доповнення до табличного списку кампаній, а не заміна — для щоденної роботи зручніший список, для планування наперед — календар.
Режим реклами визначає, ЯК система розподіляє рекламні покази протягом дня. «Класичний» — інтервальний pacing: рівномірно по денній нормі, прораховується автоматично. «За піками» — корзинки реклами прив'язані до реальних пікових годин відвідуваності клубу (з імпортованої сітки), реклама концентрується саме тоді, коли в залі найбільше людей. Перемикання режиму для клубу чи окремої зони одразу змінює логіку підбору на майбутній розклад.
Що може піти не так. ⚠️ Перемикач на бойовому порталі НЕ чіпали — зміна режиму застосовується одразу, без окремого підтвердження.
Поле
Що означає
Приклад на стенді Теремки
Режим реклами
класичний (pacing) чи «за піками» (за сіткою відвідуваності)
«Рекламні проєкти» — новіший, потужніший механізм над класичними кампаніями: один проєкт може містити кілька креативів, власний конструктор розкладу показу і призначення відразу на набір клубів із прогнозом покриття. Список показує назву проєкту, статус застосування і кількість клубів, на які він призначений. Кнопка «+ Новий проєкт» відкриває повний конструктор.
Конструктор рекламного проєкту: додаємо один чи кілька креативів (кожен — аудіофайл із власним прев'ю для прослуховування прямо у формі), обираємо джингл-відбивку між ними за потреби, і призначаємо проєкт на клуби. Кнопка внизу — «Створити» для нового проєкту; для вже наявного — «Зберегти» (лишає зміни чернеткою, клуби й далі грають стару версію) або «Зберегти й застосувати повторно» (одразу перерахувати розклад клубів під нову версію).
Що може піти не так. ⚠️ Форму заповнили прикладом і закрили Escape — на бойовому порталі жодного проєкту не створювали й не змінювали.
Fit-звіт / прогноз покриття (FitFailureReport) з'являється лише як результат помилки застосування (конфлікт слотів при реальному «Створити»/«Застосувати повторно») — на проді ми свідомо не робимо запис, тому цей екран не знято; приклад — лише на dev, де можна безпечно довести застосування до кінця.
Конструктор рекламного проєкту — крок з креативами і превʼю
Список креативів з кнопками превʼю і полем «+ додати ролик»
Крок додавання креативів у рекламний проєкт типу «Після N треків»: пошук ролика в банку за назвою файлу (як тут — уже додано один), кожен обраний рядок одразу можна прослухати прямо в конструкторі (превʼю без переходу в банк файлів), переставити порядок кнопками ↑/↓ або прибрати. Порожній список креативів проєкт зберегти технічно дозволяє, але грати йому тоді нічого — підказка про це є під списком.
Довідник ознак — тут адміністратор мережі заводить самі теги (басейн, сквош, лаунж, вендінг тощо), які потім проставляються кожному клубу у формі клубу (крок вище) і використовуються для таргетингу реклами. Додавання нової ознаки — просто новий рядок з назвою; видалення позначеної в клубах ознаки варто робити обережно, бо кампанії з таргетингом саме на неї перестануть її бачити. Особлива вбудована ознака «база» означає «скрізь» — не потребує явного проставлення в кожному клубі.
Механіка «ролик з ознакою в назві» працює і на рівні файлів у банку: якщо назва файлу має формат «<Назва>_<тег>_<XXсек>» (наприклад «SL_Солярій_15сек»), система сама повʼязує ролик з ознакою «солярій» — і він одразу зіграє в усіх клубах, де ця ознака увімкнена в довіднику клубу, без ручного призначення кожного клубу окремо. Ознака «база» — особлива: означає «скрізь», грає у 100% клубів мережі незалежно від інших ознак.
«Рекламні проєкти» — новіший механізм НАД класичними кампаніями. Беріть
проєкт замість кампанії, коли: (а) один рекламний «пакет» складається з кількох роликів
одразу (наприклад, серія акцій одного бренду), (б) треба одразу призначити на групу клубів і
заздалегідь побачити прогноз покриття, перш ніж застосовувати. Для простого «один ролик — на
клуби з ознакою X» класичної кампанії цілком достатньо.
Створити проєкт — «Рекламні проєкти» → «+ Новий проєкт» → назва.
Креативи — додаємо один чи кілька аудіофайлів; кожен креатив має власне
прев'ю — можна прослухати прямо у формі, не завантажуючи файл на свій пристрій.
Джингл — опційна коротка відбивка між креативами проєкту (файл з банку, тека
«джингли»).
Таргетинг — та сама логіка, що в кампанії: ознаки клубу і/або прямий вибір
клубів/зон, можна поєднувати.
Призначення на клуб(и) — обираємо, куди проєкт застосовується; форма показує,
скільки клубів зачепить дія, ДО того, як щось реально зміниться.
Fit-звіт / прогноз покриття — з'являється, коли застосування натрапляє на
конфлікт слотів (місткість дейпартів клубу вже зайнята іншими кампаніями вищого пріоритету).
Це НЕ помилка форми — це чесне попередження «частина запланованих показів фізично не
влізе», з переліком, де саме.
Кнопка «Зберегти» vs «Зберегти й застосувати повторно» — «Зберегти» лишає зміни
чернеткою: клуби й далі грають попередню версію проєкту, нічого не міняється в ефірі одразу.
«Зберегти й застосувати повторно» — та сама дія, що на порталі подекуди підписана
«Синхронізувати»: негайно перераховує розклад УСІХ призначених клубів під нову версію
проєкту (по суті — миттєвий «Перегенерувати» для всіх зачеплених зон одразу).
Перемикач на порталі пропонує три пункти: «За піками», «Простий»,
«Профі». Важливо розуміти різницю: «Простий» і «Профі» — це не різний алгоритм добору, а
різна СКЛАДНІСТЬ форми (скільки полів бачить менеджер) — обидва рахують покази однаковою
інтервальною логікою (pacing), рівномірно по денній нормі. «За піками» — це справді ІНША
логіка, історично відома в команді як «режим Віті» (за іменем автора первісної Excel-системи
розподілу реклами мережі, яку тут відтворили й розвинули).
Як влаштовано «За піками»: робочий день клубу ріжеться на послідовні «корзинки»
(блоки), окремо для пікових і непікових годин доби. У форматі запису «X:N / Y:M» — X/Y це
тривалість блоку в хвилинах, N/M — максимум рекламних роликів на один блок. На стенді мережі
зараз в УСІХ 48 клубах однаково: 20:4 / 30:4 — тобто в пік блок 20 хвилин і до 4
роликів у ньому, у непік блок 30 хвилин і теж до 4 роликів. Сітка пік/непік типово: Пік 1
08:00–12:00, Пік 2 17:00–21:00, решта доби — непік (будні й вихідні рахуються окремо).
Коли який режим обрати: «За піками» — коли в клубі є реальна нерівномірність
напливу людей і хочеться концентрувати рекламу саме в години максимальної аудиторії (типовий
вибір для більшості клубів мережі — звідси однакова пропорція 20:4/30:4 майже скрізь).
«Простий»/«Профі» — коли зала має рівномірний потік цілий день, або коли потрібні
просунуті інструменти («Профі»: кілька роликів у кампанії, ціль на тиждень, гарантований час,
тригери на подію), яких у «За піками» немає.
Як читати «Сітку піків»
Вкладка «Сітка піків» (доступна для клубів у режимі «за піками») показує повну мережеву
таблицю одним поглядом: для кожного профілю доби — рядок з написом виду «Вільно N ·
заброньовано M з C (K корзинок)» і прогрес-баром. C — це загальна місткість (кількість
корзинок × ліміт роликів на корзинку), M — скільки з неї вже зайнято чинними кампаніями, N —
скільки вільно. Жовте попередження означає: план якоїсь кампанії довелось обрізати, бо він
перевищив фізичну місткість — це попередження, НЕ заборона, кампанію все одно можна зберегти
з обрізаним планом.
Кожен блок у клітинці календаря підписаний коротко: назва кампанії ·
пріоритет · клас спота людською мовою («звичайний» / «гарантований час» / «гарантована
частка» / «наповнювач») · короткий опис таргетингу. Клік по дню чи кампанії веде до її
картки для редагування. Календар — доповнення до табличного списку кампаній: для щоденної
роботи зручніший список, для
планування наперед і пошуку накладок (дві кампанії з високим пріоритетом претендують на той
самий слот того самого дня) — календар.
Таймлайн дня (розділ «9. Розклад») показує ефір зони у вигляді
послідовних «кубиків» — музичний блок, рекламна вставка, службове оголошення, хвилина
мовчання. Клік по рекламному кубику показує, який саме ролик і яка кампанія в цій позиції.
Чому рекламні кубики зазвичай ближче до кінця блоку. У мережевих профілях доби
типовий блок триває 15–30 хвилин (у режимі «за піками» — конкретно 20 хв пік / 30 хв непік,
див. вище). Реклама технічно лягає в межах блоку разом з музикою, і на практиці візуально
щільніше тяжіє до кінця блоку — тобто ближче до переходу на наступний. Це залежить від
конкретної конфігурації дейпартів клубу, а не жорстко «завжди рівно на хвилині :14:30» — якщо
на вашому таймлайні позиції трохи інші, це нормально, звіряйтесь із самим таймлайном, а не з
універсальним правилом.
Захисний зазор 20 секунд. Планувальник МЕХАНІЧНО не дозволяє жодній рекламній чи
джингл-позиції закінчитись у вікні 20 секунд ПЕРЕД початком «фіксованої» події (хвилина
мовчання, оголошення закриття, реклама-тригер на подію) і не дозволяє почати всередині самої
події + 5 секунд після неї. Реклама так само ніколи не починається ПІСЛЯ фактичного закриття
клубу — вона має закінчитись до нього. Це той самий захист, про який ідеться в розділі
«Взаємодія з тривогами» нижче.
Таймлайн (вище) показує ПЛАН — що має прозвучати. Факт того, що реально
прозвучало, система пише в окремий журнал (play_log) щоразу, коли плеєр реально відтворює
позицію — з позначкою типу («music_block» — музичний блок, «ad» — реклама, «jingle» —
джингл, «service» — службове оголошення, «alarm» — тривога, «silence_minute» — хвилина
мовчання). План і факт можуть відрізнятись: наприклад, плеєр був офлайн у заплановану хвилину
— у плані кубик є, у факті запису нема.
Де дивитись факт: «Звіти» (розділ «10. Перевірка») — плитки KPI за період, фільтр по клубу й
датах, графік динаміки показів. Кнопка «⬇ Експорт CSV» вивантажує поточний фільтр у файл —
зручно для звітності перед рекламодавцем чи керівництвом (proof-of-play: скільки разів і де
саме ролик реально прозвучав). Для окремої кампанії — аналогічний швидкий «⬇ CSV» просто в
списку кампаній (бейдж темпу показів PacingBadge поруч підказує, наздоганяє кампанія денну
норму чи відстає, ще до відкриття звіту).
Реклама — найнижча за пріоритетом ланка в ефірі (нагадування: тривога →
хвилина мовчання → службові оголошення закриття → реклама → музика), тому саме її першою
«зʼїдає» будь-яка активна тривога.
Некритичний (жовтий) рівень тривоги — музика й реклама приглушуються до 75% від
звичайної гучності, не вимикаються повністю.
Критичний (червоний) рівень тривоги — повна тиша (0%) для музики й реклами,
лунає лише сама сирена/дикторський текст тривоги.
Перебитий тривогою ролик не повторюється. Якщо тривога перервала рекламу
посередині — це НЕ баг, система свідомо не «доганяє» той самий показ пізніше того самого
дня; кампанія просто продовжує свою чергу з наступної позиції.
Хвилина мовчання й оголошення закриття звучать НАВІТЬ під час тривоги — це два
пріоритети, вищі за саму тривогу в ланцюжку (навмисне рішення, безпека понад усе).
Захисний зазор 20 с / 5 с навколо хвилини мовчання й закриття діє незалежно від
тривоги — реклама ніколи не «наїжджає» на ці події впритул (детальніше — розділ «Як читати
таймлайн» вище).
→ Повний розбір ієрархії й профілів тривоги: розділ
«7. Тривоги».
Постійна vs акційна реклама і дедлайни
Постійна реклама — назва файлу БЕЗ дати, грає доки кампанію не
зупинять вручну (період «безстроково»). Акційна реклама — дата в самій назві файлу,
система розпізнає її автоматично при заливці в банк і сама проставляє період дії кампанії.
Формати дати, які розпізнає парсер (усі — реальні приклади з живої папки «Акційна
реклама» мережі):
Формат у назві файлу
Приклад
Що виходить
ДД.ММ-ДД.ММ
SL_Солярій_29.08-31.08 14сек.mp3
період з 29.08 по 31.08 (поточний рік)
ДД.ММ.РРРР-ДД.ММ.РРРР
26.08-28.08.2026
рік застосовується на весь діапазон
«до ДД.ММ[.РРРР]»
SL_Акція_до 15.09
лише дедлайн, дата початку не задана
Повна дата ДД.ММ.РРРР
SL_Розіграш_01.10.2026
одинична дата (рік обовʼязковий — без нього це НЕ вважається датою, щоб не хапати випадкові числа)
Назва місяця
SL_Банний Лаунж_Червень 2026_20сек
весь зазначений місяць
Що відбувається після дедлайну — це вже ПРАЦЮЄ, не «в планах»: раз на годину
мережевий фоновий цикл сам вимикає (is_active=false) кампанії, чий «до» вже в
минулому — записує подію в стрічку аудиту мережі (некритична, тому в Telegram нічого не
прилітає — це свідомо спокійне повідомлення, не тривога), ручного видалення не треба.
Бейджі поруч із періодом кампанії/файлу (список кампаній, банк файлів):
до 31.08 — дедлайн ще не близько.
завершується 31.08 — лишилось 3 дні або менше.
прострочено — дедлайн уже минув (короткий момент до щогодинного автовимкнення).
Якщо на вашому екрані бейджів поки не видно — оновіть сторінку/почекайте
на оновлення порталу, функція щойно докотилась і може ще не бути на кожному стенді.
Ознака (тег) — довідникова сутність (не текст навмання): на проді зараз
17 записів у довіднику, 16 із них реально проставлені хоч одному з 48 клубів мережі (є ще й
складені з пробілом, напр. «промо спільний» — мережевий тег без привʼязки до конкретної
послуги клубу). Правило впізнавання з назви файлу: система бере серед усіх відомих тегів
НАЙДОВШИЙ (за кількістю слів, тоді за довжиною) збіг, що стоїть одразу перед тривалістю
(«…сек») — тому складений тег на кшталт «секції вода» переможе одиночне слово «вода», навіть
якщо обидва технічно є в довіднику.
Тег
Що означає
база
спеціальна ознака «скрізь» — контент/кампанія з нею грає в УСІХ клубах мережі незалежно від інших ознак; проставляти клубу вручну не треба
тз
ймовірно «тренажерна зала» — уточнити в Лариси
групові
групові заняття (аеробіка, йога тощо)
вендінг
вендінгові апарати (напої/снеки)
солярій
солярій
лаунж
лаунж-зона відпочинку
масаж
масажний кабінет
басейн
басейн
абонементи
продаж/оформлення абонементів на місці
дк
за версією ІТ-директора мережі — «дитячий клуб»; уточнити в Лариси
сквош
сквош-корт
секції вода
дитячі секції з плавання/водних видів
тб
не підтверджено — можливо повʼязано з категорією тренерів; уточнити в Лариси
тбс
не підтверджено — імовірно варіант «тб» вищого рівня; уточнити в Лариси
тс
не підтверджено; уточнити в Лариси
бар
бар/кафе клубу
Для тегів з позначкою «уточнити в Лариси» — навмисно не вигадуємо
розшифровку, краще прогалина в документації, ніж хибна інформація в інструкції для
менеджера.
клубу не проставлена потрібна ознака / кампанія на паузі (is_active=false) / період
уже минув / квота дейпарту вичерпана / режим клубу несумісний з таргетингом (напр.
кампанія розрахована на «за піками», а клуб — «Простий»)
пройдіть по порядку: чіпи клубу → «✎ Редагувати» кампанії (стан/період/дні тижня) →
квота дейпарту → режим клубу
Реклама грає не там, де мала б
клубу проставлена зайва ознака (наприклад, тестова чи стара, яку забули зняти)
звірте чипи клубу з реальним переліком послуг, зніміть зайве
Реклама «обірвалась» серед тривоги і більше не звучала
це НЕ баг — перебитий тривогою показ свідомо не повторюється того самого дня
нічого робити не треба, це задум
Реклама занадто тиха/гучна відносно музики
цільові рівні гучності різні НАВМИСНО: музика −15 LUFS, реклама −9 LUFS — реклама
завжди трохи голосніша, щоб виділятись. Якщо різниця відчутно більша — питання до
гучності САМОГО файлу при заливці (аналізатор рахує LUFS автоматично)
перевірте колонку «Гучність (LUFS)» файлу в банку; під час некритичної тривоги і
музика, і реклама однаково приглушені до 75%, це очікувано
Таблиця «Клуб → ознаки»
Код клубу, ознаки (теги), пропорція
показів «пік/непік» (X хв блок : N роликів на блок) для режиму «за піками» й вікна пікових
годин (будні). 48 клубів мережі — почніть вводити код або ознаку в пошук, щоб звузити
список.
Що натиснути: кнопка «Перегенерувати» → обрати область дії (одна зона чи
весь клуб) → підтвердити.
Що робить: повний перерахунок розкладу з нуля на основі поточних дейпартів/
кампаній/оголошень — потрібна щоразу, коли змінили налаштування, а розклад лишився
старим.
Якщо не так: помилка «дейпарти не покривають робочі години клубу» — див.
розділ «2. Клуб», крок 4.
Що побачите: послідовні «кубики» одного з 6 типів — музичний блок, реклама,
джингл, службове оголошення, тривога, хвилина мовчання (той самий словник, що і в
звітах, розділ «8. Реклама» → Як перевірити ↑). Клік
по кубику показує деталі позиції.
Дії: перетягуванням можна поміняти позиції місцями, скопіювати весь день на
інші дні тижня. Кнопка «Ефір зараз» показує, який кубик грає в цю секунду.
Важлива деталь: «закріплено» — не окремий чекбокс, який треба вмикати вручну:
щойно ви руками перетягнули чи відредагували якусь позицію на таймлайні, вона
АВТОМАТИЧНО стає закріпленою. Наступна «Перегенерувати» (крок 2) закріплені позиції
НЕ чіпає — перебудовує заново лише все навколо них.
Якщо не так: ручна правка «зникає» після перегенерації — не мало б, це і є
весь сенс закріплення; якщо таке трапилось, це привід звернутись в ІТ-службу мережі.
5
Банер «Конфлікт плану»
Коли зʼявляється: дві чи більше речей претендують на той самий слот
(наприклад, забагато закріплених вручну позицій навколо, і кампанія фізично не може
добрати квоту) — банер зверху таймлайну підсвічує конфліктні позиції.
Сторінка «Розклад» — план ефіру на майбутнє (на відміну від «Пульта зони», який керує тільки поточною хвилиною). Кожна картка — одна зона з коротким переглядом тижня; клік відкриває детальний фокус на цю зону. Тут же кнопка «Перегенерувати» для повного перерахунку розкладу на основі поточних дейпартів/кампаній/оголошень — застосовується, коли щось у налаштуваннях змінилось, а розклад ще старий.
Таймлайн — детальний розклад однієї зони на день у вигляді послідовних «кубиків»: музичний блок, рекламна вставка, службове оголошення, хвилина мовчання. Перетягуванням можна поміняти позиції місцями, скопіювати весь день на інші дні тижня, або закріпити (pinned) конкретну позицію так, щоб перегенерація її не чіпала. Конфліктні місця (дві речі претендують на той самий слот) підсвічуються окремим банером зверху. Кнопка «Ефір зараз» показує, який кубик грає в цю секунду.
Клік по будь-якому кубику таймлайну відкриває попап з деталями саме цієї позиції: що це (трек/реклама/оголошення/тиша), точний час і тривалість, і — якщо позиція бере участь у конфлікті — конкретне пояснення яке (перекриття з іншою позицією, вихід за межі рекламного блоку тощо), а не просто червона рамка без причини. Звідси ж керують самою позицією: закріпити (pinned) від перегенерації, перемістити чи прибрати.
Таймлайн — конфліктні позиції (dev, навмисно створено для демонстрації)
В інтерфейсі поки нема — робиться. Не вдалося зняти автоматично: навіть після додавання двох позицій на 12:00 конфлікт не позначився в UI. Якщо елемент дійсно відсутній в UI — це зафіксовано свідомо, не вигадано.
Де шукати: http://192.168.88.4:8097/schedules?weekday=2&club=1994&zone=1702
54
Перегенерувати розклад — вибір стратегії
Вибір стратегії й кнопка підтвердження перегенерації
Модалка «Перегенерувати» дає вибрати область дії (одна зона чи весь клуб) і стратегію підбору реклами перед повним перерахунком розкладу. Це руйнівна щодо ручних правок дія — усі незакріплені (не pinned) позиції перебудовуються заново, тому підтвердження явне й окреме.
Що може піти не так. ⚠️ На бойовому порталі ми ЛИШЕ відкрили модалку для знімку і закрили Escape — жоден реальний розклад клубу не перераховували.
Де це: «Звіти» — плитки KPI за обраний період, фільтр по клубу й датах,
графік динаміки. Кнопка «⬇ Експорт CSV» вивантажує поточний фільтр.
План vs факт: таймлайн («9. Розклад») показує ПЛАН, журнал play_log — те,
що реально прозвучало (плеєр міг бути офлайн у заплановану хвилину — план є, факту
нема). Повний розбір — розділ «8. Реклама» → Як
перевірити, що зіграло.
Навіщо: кожен рядок людською мовою описує, ХТО і ЩО змінив (створив
кампанію, відредагував клуб, перегенерував розклад) — зручно для розслідування «хто й
коли щось поміняв». Сирий технічний JSON деталей — лише в Експертному режимі.
Фільтри: період, користувач, тип дії. Кнопка вивантаження CSV — та сама
логіка, що в звітах.
→ повний крок зі скріном: «Журнал аудиту» (розділ «10. Перевірка»)
4
Telegram-бот watchdog
Що це: мережа тримає Telegram-бота @slaudio_control_derg_bot —
він сам шле алерти watchdog і про рестарти плеєрів, окремо нічого налаштовувати не
треба. Некритичні події (наприклад, спливання дедлайну акційної кампанії) навмисно НЕ
штовхають туди пуш — лише лягають рядком у стрічку подій/аудит, щоб бот не набридав
дрібницями.
Якщо не так: бот мовчить довше, ніж зазвичай — це теж привід перевірити
звʼязок сервера, не лише сам факт відсутності алертів.
Кроки за екранами (довідка зі скрінами)
Нижче — кожен екран розділу окремо, повністю.
55
Звіти — KPI, період, динаміка показів
Плитки ключових показників (KPI)
Сторінка звітів — proof-of-play: що САПРАВДІ прозвучало в кожній залі, коли і скільки разів, основа для звітності перед рекламодавцем. Плитки KPI зверху дають загальну картину за обраний період без графіків, просто числа. Фільтр періоду перераховує всю сторінку під нові дати. Графік динаміки нижче показує зміну в часі — в Простому режимі без накладання «порівняти з періодом».
Журнал подій — кожен рядок людською мовою описує, хто і що змінив (створив кампанію, відредагував клуб, перегенерував розклад тощо); сирий технічний JSON деталей доступний лише в Експертному режимі. Фільтри зверху звужують список за періодом, користувачем і типом дії. Кнопка вивантаження справа готує CSV з поточного фільтра — зручно для звітності перед керівництвом чи розслідування інциденту (хто й коли щось змінив).
Пресети — ручний разовий знімок налаштувань КОНКРЕТНОЇ зони (гучність,
дейпарти тощо), застосовується до іншої зони одним кліком, коли треба скопіювати
«як тут» на кілька зон.
Шаблони — мережеві АВТО-правила «клас клубу × тип зони» (видно лише в
Експертному режимі UI) — просунутий інструмент масового налаштування (наприклад,
«усі зони типу «Кардіо» в клубах класу «Преміум» отримують такі-то дейпарти»).
Спільне для обох: кнопка «Застосувати» завжди показує прев'ю — скільки зон
зачепить дія, — ДО того, як щось реально зміниться.
«Пресети» — ручний разовий знімок налаштувань конкретної зони (гучність, дейпарти тощо), який можна застосувати до іншої зони одним кліком. «Шаблони» — мережеві авто-правила «клас клубу × тип зони» (видно лише в Експертному режимі UI) — просунутий інструмент масового налаштування. Кнопка «Застосувати» завжди показує прев'ю — скільки зон зачепить дія, — ДО того, як щось реально зміниться.
Таблиця всіх облікових записів мережі: логін, роль (адміністратор мережі / клубу / менеджер), клуби, до яких прив'язаний доступ, і статус (активний, ще не змінив тимчасовий пароль, 2FA не налаштовано). Кнопка «+ Новий користувач» праворуч відкриває форму створення — роль і набір клубів визначають, що людина побачить і зможе змінити, тож варто обирати найвужчий набір прав, який реально потрібен для роботи.
Форма створення користувача: логін, тимчасовий пароль (людина змінить його при першому вході — портал сам про це попросить), роль (адміністратор мережі / адміністратор клубу / менеджер) і список клубів, до яких дається доступ. Найвужчий набір прав, який реально потрібен людині для роботи, — правильний дефолт. Форму заповнили прикладом і закрили без збереження, щоб не створювати тестовий обліковий запис на стенді.
Мережа тримає Telegram-бота @slaudio_control_derg_bot — він шле алерти watchdog і про рестарти плеєрів автоматично, окремо налаштовувати нічого не треба. Якщо бот мовчить довше, ніж зазвичай, — це теж привід перевірити звʼязок.
Де змінити графік роботи клубу?
Не окрема сторінка — блок «Графік клубу» прямо на сторінці робочого простору клубу («2. Клуб», крок 4), одразу під шапкою з назвою й ознаками. Таблиця Пн–Нд: чекбокс «працює» + відкриття/закриття, зберігається одразу.
Де проставити ознаки (теги) клубу?
У формі клубу — кнопка «✎ Редагувати» в шапці робочого простору → блок «Ознаки клубу (сервіси)», чіпи-перемикачі (клік = автозбереження). Якщо потрібної ознаки нема в списку — спершу завести її в «11. Налаштування» → «Довідник ознак», і лише потім вона зʼявиться як чіп. Детально — «2. Клуб», крок 3.
У залі тиша, хоча все виглядає налаштованим
Перевірте по порядку: (1) клуб зараз «живий» за графіком годин — чи не зачинено зараз; (2) статус зони на дашборді — «Тиша» ≠ «Пауза»; (3) статус плеєра — онлайн і звʼязок свіжий («Плеєри» в клубі); (4) у зони є хоч один придатний файл музики в дейпарті поточної години. Якщо все в нормі, а звуку все одно нема — пишіть в ІТ-службу мережі, далі діагностика на боці плеєра/драйвера/звукової карти.
Реклама не грає в конкретному клубі
Найчастіша причина — таргетинг за ознаками: у клубу просто не ввімкнена та ознака, на яку націлена кампанія (перевірте «Ознаки клубу» у формі клубу проти «Таргетингу» кампанії). Друга причина — період дії кампанії вже скінчився або файл акційний і його дата в назві минула. Третя — конфлікт пріоритету/квоти, дивіться банер «Конфлікт плану» в розкладі.
Хвилину мовчання не чути
Перевірте (1) чи ввімкнено перемикач «Хвилина мовчання» у формі клубу і на яку годину, (2) чи не перевизначила зона свій власний час на інший, (3) чи є в банку службових сам файл «Хвилина мовчання» і чи не зламаний він (спробуйте прослухати прямо в банку файлів).
Персонал сам крутить гучність на ПК клубу
Для цього є «Тримати системну гучність Windows, %» у налаштуваннях звуку зони (Експертний режим) — плеєр силою тримає гучність ОС на заданому рівні й повертає її назад, навіть якщо хтось покрутив коліщатко чи гучність на клавіатурі.
Плеєр офлайн — що дивитись
Спершу картка плеєра в клубі — час останнього звʼязку і версія клієнта. Далі фізично: чи ввімкнений ПК, чи є інтернет у клубі, чи запущений застосунок плеєра (не згорнутий у трей аварійно). Якщо плеєр зовсім не на звʼязку — дистанційно вже нічого не подивитись, треба перевіряти на місці.
Забув пароль або не бачу свій клуб у списку
Це не самообслуговування — зверніться до адміністратора порталу мережі, він скине пароль або додасть потрібний клуб до вашого доступу.
Кампанія не набирає денну квоту показів
Найчастіше — заниженй пріоритет проти сусідніх кампаній того самого слота, або забагато вручну закріплених (pinned) позицій навколо, які фізично не лишають місця. Дивіться банер «Конфлікт плану» на таймлайні розкладу.