# LoggerService — radni paket za agenta (kontrolna ravan) > **Misija:** izgraditi serversku kontrolnu ravan za flote terminala — RBAC stablo > organizacija, uređaji + heartbeat, servisni grantovi, provisioning i katalog > firmvera — kao **proširenje postojećeg `licence-server`-a** (server 151). > Jedan backend, **dva lica**: `terminia.net` = vendor (licence/fw), > **`loggerservice.com` = serviserski brend** (isti mozak, drugi izgled). > > **Jezik projekta:** srpski (ekavica), latinica; Go komentari srpski ASCII. > **Poreklo:** paket je nastao u firmverskom repou (`asp-terminia/serviseri/`) i > prebačen ovde 2026-07-25 — isti backend/baza kao paket `docs/asp-terminia/` > (licenciranje), koordinacija migracija mora ići kroz jedan repo. Firmverska > strana (`svc.cpp`, discovery/heartbeat) je gotova i ostaje u firmverskom repou. > „**ASP repo**" u tekstu znači . ## Sadržaj foldera | Fajl | Šta je unutra | |---|---| | [00-vizija-i-mvp.md](00-vizija-i-mvp.md) | **ČITATI PRVO** — LoggerService je aplikacija za servisne firme (oprema/klijenti/nalozi/zaduženja); uređaji su MODUL; MVP obim (dogovor 2026-07-24 uveče) | | [01-rbac-model.md](01-rbac-model.md) | ZAKLJUČEN model: stablo orgs, 4 role, grantovi, invarijante, šeme tabela | | [02-uredjaji-heartbeat-discovery.md](02-uredjaji-heartbeat-discovery.md) | šta uređaj VEĆ šalje (UDP formati) i šta server treba da primi | | [03-provisioning-i-fw-katalog.md](03-provisioning-i-fw-katalog.md) | Model B/A, postojeći bootstrap FW, katalog `.bin`-ova, potpisani URL | | [04-zadaci.md](04-zadaci.md) | zadaci redom sa kriterijumima prihvatanja | | [05-pravila-rada.md](05-pravila-rada.md) | **OBAVEZNO prvo** — produkcija, backup, granice | ## Kontekst u 6 redova 1. **Proizvod:** ESP32‑S3 terminali (linija ASP; prvi proizvod ASP‑Terminia — kontrola prolaza za bazene/spa). Terminal je autonoman i radi offline; platforma je **opcioni sloj** za flote (više vlasnika, servis, prodaja, OTA). 2. **Hijerarhija:** **Terminia = vendor/koren stabla** (vlasnik svega); **DAL = KUPAC** (org pod Terminijom) — ne vendor. 3. **Serviseri NISU nivo u stablu** nego **grant preko stabla** (razdvaja vlasništvo od servisnog pristupa) — detalji u 01. 4. **Server:** isti `licence-server` (Go/MySQL, produkcija!) — RBAC se DODAJE migracijama; koordinacija sa paketom [`docs/asp-terminia/`](../asp-terminia/README.md) (deli bazu i admin sloj). 5. **Uređaj već emituje:** LAN discovery (UDP 46464, upit `TERMINIA?` → JSON identitet), heartbeat (UDP JSON na podesiv interval), dbg dnevnik (UDP) — formati u 02. `devices.status` na serveru se hrani iz heartbeat-a. 6. **Brend:** `loggerservice.com` domen kupuje vlasnik (kredencijali kod njega); do tada se sve gradi i testira na IP-u / internim rutama. ## Šta agent NE radi - Ne kupuje/podešava domene (vlasnik) — ali priprema nginx blokove da se uključe. - Ne dira postojeće proizvode/licence, `terminia` SaaS, ESIR, Gitea-u. - Ne implementira ništa na SAMOM uređaju (firmware) — uređaj je gotov za ovaj obim; ako zatreba izmena FW, zapisati ZAHTEV u 04 (sekcija „Zahtevi ka firmveru"). ## Veze - **Firmware repo (ASP repo):** (servisni kanal: `firmware/10_terminia/svc.cpp`; bootstrap: `firmware/00_inicijalni/`). Firmverska strana je GOTOVA za ovaj obim — ovaj paket je ne dira. - Istorijat odluka: ASP repo `docs/21-platforma-i-provisioning.md` (dogovor 2026-07-24). - Licencna strana: [`docs/asp-terminia/`](../asp-terminia/README.md) (isti server; Z-zadaci tamo idu PRE RBAC UI-ja jer odblokiraju uređaje na terenu). - Serverski kod i konvencije: [../../CLAUDE.md](../../CLAUDE.md), [../ARCHITECTURE.md](../ARCHITECTURE.md), [../../API.md](../../API.md).