Стіна камер на телевізорі в цеху¶
Потрібні стани й час завершення замість відео?
Використайте монітор стану: 50 однакових плиток на Full HD, спочатку увага й окремі подання принтерів і черги. Для нього є власний ТВ-токен Монітор стану; токен Стіна камер у цьому сценарії призначений для камер.
Ситуація¶
Сорок вісім принтерів у двох приміщеннях. Оператор обходить ряди, щоб побачити, що відбувається; зі столу сторінка принтерів — це стіна карток, а камери — по одному кліку кожна. Телевізор у цеху вже висить. Показувати він має всі камери одразу — і нічого такого, що відвідувач не повинен прочитати з екрана в приміщенні, куди може зайти будь-хто: ні назв файлів, ні серійних номерів, ні адрес.
Мета¶
URL, який телевізор — або Raspberry Pi за ним — відкриває раз і показує далі: уся ферма плитками камер зі значком стану на кожній, без логіну, і з відкликанням у Налаштуваннях того дня, коли телевізор списують.
Що задіяно¶
| Функція | Її роль |
|---|---|
| Стіна камер | Сітка плиток: живі потоки до ліміту, знімки для решти, пауза поза екраном. |
| Стіна камер на ТБ або кіоску | Власний URL стіни, /camwall, і її режим із токеном. |
| Довготривалі токени | Токен з обсягом Cam Wall: облікові дані в URL, відкликні, не старші за рік. |
Крок за кроком¶
-
Спробуйте стіну, увійшовши. На сторінці принтерів перемкніть Картки / Стіна камер або відкрийте
http://your-bamdude:8000/camwallу власному браузері. Це повна стіна — плитки клікабельні, шестерня відкриває її налаштування. Запам'ятайте, що виглядає правильно: скільки плиток живі водночас, інтервал знімків. -
Зробіть токен для телевізора. Налаштування → Довготривалі токени → створити: назвіть за екраном — ТБ у цеху, — обсяг Cam Wall і термін (щонайбільше рік; назавжди відмовляється навмисно). Скопіюйте токен: він показується один раз.
-
Складіть URL.
maxLive— скільки плиток транслюють наживо водночас (1–16),interval— секунди між оновленнями знімків на решті (2–60),status— накладка:offабоcompact. Кіоск не може відкрити шестерню налаштувань, тож налаштування їдуть у URL; значення поза діапазоном відкочується до типового, а не ламає стіну. -
Наведіть телевізор. Браузер у режимі кіоску на Pi або власний браузер телевізора, на весь екран. Це вся конфігурація.
-
Спишіть його одного дня. Налаштування → Довготривалі токени, знайдіть ТБ у цеху за назвою або за префіксом, Revoke. Стіна гасне на наступному запиті; кеша, який треба перечекати, немає.
Що BamDude робить далі сам¶
- Транслюють лише плитки на екрані. Плитка вважається видимою, щойно на екрані 40 % її площі; перші
maxLiveвидимих плиток транслюють живий MJPEG, решта видимих опитують знімки, а принтери поза екраном чи відключені стоять на паузі повністю — ні мережі, ні процесуffmpegдля камери, на яку ніхто не дивиться. - Стіна з токеном навмисно менша за стіну з логіном. Без клікабельних плиток, без шестерні налаштувань, лише значок стану: канал за нею взагалі не віддає назв файлів друку, тож деталь на столі ніколи не названа приміщенню. Адреси принтерів і серійні номери теж не віддаються. Архівовані принтери не з'являються; принтери в режимі обслуговування — так, вони досі на фермі.
- Кожен глядач ділить один потік. Плитка на телевізорі, ваш вбудований переглядач і спливне вікно колеги читають один роздавальний потік на принтер; закриття одного ніколи не заморожує іншого, а потік гаситься лише тоді, коли пішов останній глядач.
- Кіоск ніколи не записує налаштування назад. Відкрити кіосковий URL у власному браузері — не перезаписати власних налаштувань стіни: параметри URL читаються, а не зберігаються.
- Останнє використання токена штампується (щонайбільше раз на хвилину), тож токен, що простоює 30 днів, отримує попереджувальний чіп у Налаштуваннях, а секція All users в адміністратора перелічує кожен живий токен інсталяції.
Пастки і «а якщо»¶
URL — це і є облікові дані
Будь-хто, хто прочитає URL — з екрана, з конфігураційного файлу кіоску, з історії браузера, — може дивитись стіну. Ставтеся до нього як до ключа: не пускайте в скріншоти і відкликайте того дня, коли екран списано або Pi зник.
- Токен Cam Wall відкриває лише стіну. Його відкидає ендпоінт потоку однієї камери і OBS-оверлей, а токен потоку камери відкидає стіна — обсяги є стінами в обидва боки, тож токен, виданий телевізору, не переробити на витягування потоку одного принтера з назвою файлу.
- Raspberry Pi 4 тягне близько чотирьох живих плиток. Ставте
maxLiveтаким, скільки коробка справді декодує; решта — знімки, і з іншого кінця приміщення вони виглядають майже так само. - Накладка
fullна стіні з токеном недоступна — вона показала б назву файлу. URL приймаєoffабоcompact. - Стіна не керує принтером. Біля телевізора ніхто не стоїть; пауза й зупинка лишаються на сторінці принтерів і в Telegram.
- Токен прив'язаний лише до часу. Він не звужується на принтер — токен Cam Wall показує кожен принтер, який показує стіна. Для потоку одного принтера використовуйте API-ключ.
Суміжні сценарії¶
- Нічна зміна без людини в цеху — стіна показує ніч; будять тривоги.
- Три фази — по одному нагріву столу на фазу — ті самі теги фарбують картки принтерів, які ви бачите зі столу.