NDM DIGITAL SIGNAGE AGENT - PLNY INSTALATOR 0.1.16
==================================================

Konsolidovany instalator pro novy nebo jiz pouzivany Raspberry Pi. Vychazi
z agenta 0.1.15 overeneho na fyzickem Raspberry Pi 5 se serverem NDM Digital
Signage 0.2.4 a pridava okamzitou cernou pri chybejicim vychozim playlistu.

PODPOROVANA PLATFORMA
---------------------
- Raspberry Pi 5
- Raspberry Pi OS Lite / Debian 13 (trixie), arm64
- headless provoz bez grafickeho desktopu a bez Chromium
- jeden nebo dva nezavisle HDMI vystupy pres DRM/KMS
- fotografie JPG a video MP4

FUNKCE VERZE 0.1.16
---------------------------
- plynule prechody fotografie/fotografie, fotografie/video a video/fotografie,
- okamzita cerna po skonceni planu bez vychoziho playlistu; KMS zustava aktivni,
- lokalni cache a pokracovani s posledni platnou konfiguraci pri vypadku site,
- cerna obrazovka na dalku bez zastaveni playlistu,
- barevne textove sdeleni ve trech polohach bez trhani videa,
- spravna orientace obsahu a textu na landscape i portrait-270,
- okamzity odpocet s vlastnim textem a lokalnim monotonnim casem,
- nadpis a cas odpoctu ve dvou oddelenych vrstvach bez prekryvani,
- diagnostika stahovani, aktivniho playlistu a prehravaneho media,
- samostatny DRM descriptor pro kazdy HDMI vystup.

Zvuk je v teto verzi vypnuty. Potrebna ALSA cast je ale nainstalovana a format
konfigurace uz obsahuje volbu audio_enabled pro budouci rozsireni.

PRED INSTALACI
--------------
1. Nainstaluj aktualni Raspberry Pi OS Lite 13 arm64.
2. Zajisti, aby nove RPi melo stabilni IP adresu a dosahlo na NDM server.
3. Na serveru NDM Digital Signage 0.2.4 nebo novejsim otevri Prehravace.
4. Vytvor prehravac s IP adresou noveho RPi a definuj jeho HDMI vystupy.

Registrace uspeje pouze tehdy, kdyz server podle zdrojove IP najde prave jeden
aktivni Signage prehravac. Token a identitu si agent po startu ulozi automaticky.

INSTALACE NA NOVEM RPI
----------------------
Rozbal archiv, vstup do adresare a spust:

  tar -xzf ndm-signage-agent-full-installer-0.1.16.tar.gz
  cd ndm-signage-agent-installer-0.1.16
  sudo ./install.sh --server http://192.168.12.16

Adresu v prikladu nahrad adresou sveho NDM serveru. Bez parametru --server se
instalator na adresu interaktivne zepta.

Volbu --skip-server-check pouzij jen vedome, pokud server docasne neni dostupny.
Agent se bez uspesne registrace nespusti do bezneho provozu.

Instalator:
- overi Raspberry Pi 5, Debian 13 a arm64,
- zkontroluje vlastni SHA-256 soucty,
- nainstaluje Python, PyGObject, GStreamer, kodeky, textoverlay a kms++-utils,
- predem otestuje vsechny GStreamer prvky a vlastnosti pouzite agentem,
- overi registraci prehravace proti serveru podle IP,
- vytvori systemovy ucet ndm-signage-agent ve skupinach video a render,
- vytvori konfiguraci, cache a zabezpecene uloziste identity,
- nainstaluje, povoli a spusti systemd sluzbu,
- provede zaverecnou lokalni i serverovou kontrolu,
- pred zmenou vytvori zalohu pripadne starsi instalace.

AKTUALIZACE EXISTUJICIHO RPI
----------------------------
Stejny balik lze pouzit i pro aktualizaci. Pokud uz existuje soubor
/etc/ndm-signage-agent/config.json a neni zadan parametr --server, instalator
zachova soucasnou konfiguraci i registraci.

MAPOVANI HDMI
-------------
- fyzicky port HDMI A: HDMI-A-1
- fyzicky port HDMI B: HDMI-A-2

Agent pri kazdem startu dynamicky zjisti aktualni connector-id. Ciselne hodnoty
connector-id se proto do konfigurace neukladaji napevno.

KONFIGURACE
-----------
Soubor: /etc/ndm-signage-agent/config.json
Prava: root:ndm-signage-agent, 0640

Vychozi vystupy:

  "outputs": {
    "A": {"connector": "HDMI-A-1", "audio_enabled": false},
    "B": {"connector": "HDMI-A-2", "audio_enabled": false}
  }

Po rucni zmene konfigurace spust:

  sudo systemctl restart ndm-signage-agent

KONTROLA A LOG
--------------
  sudo ./verify.sh
  sudo systemctl status ndm-signage-agent --no-pager
  sudo journalctl -u ndm-signage-agent -n 100 --no-pager

Cache a posledni platna konfigurace:
  /var/lib/ndm-signage-agent/

Automaticky vytvorena identita:
  /var/lib/ndm-signage-agent/credentials.json

ROLLBACK
--------
Instalator na konci vypise presny prikaz. Obecny tvar:

  sudo ./rollback.sh /root/ndm-signage-agent-backup-CAS

Rollback vraci soubory agenta, konfiguraci a systemd jednotku. Neodinstaluje
systemove balicky, ktere byly pri instalaci doplneny.

Po prvni instalaci uloz vystup prikazu:

  sudo ./verify.sh

Pri problemu pridej poslednich 100 radku logu:

  sudo journalctl -u ndm-signage-agent -n 100 --no-pager
