flowchart LR SAM["Sam
browser dashboard"] ADMIN["Admin app
kotlin_phone_app_admin"] HUB["Hub :8788
read-only /ask"] CADDY["Caddy on .35
webrestrict.lab.audasmedia.com.au"] CS["Control Service
Go + SQLite :8791"] APPRISE["Apprise :8210
alerts + tamper reports"] subgraph MQ["Mosquitto on .13 - two planes"] TLS["8883 TLS
per-device creds + topic ACLs"] PLAIN["1883 plain + anonymous"] end PHONE["Kids' Android client
Kotlin, Accessibility + overlay"] OTHER["Other house consumers"] SAM -->|HTTPS| CADDY CADDY --> CS ADMIN -->|"Bearer token /api/v1"| CS HUB -->|"Bearer token /ask"| CS CS -->|"retained config"| TLS TLS -->|"own config topic"| PHONE PHONE -->|"status + telemetry"| TLS TLS -->|reports| CS CS --> APPRISE PLAIN -.->|legacy| OTHER click CS "https://maps.lab.audasmedia.com.au/internet_use_control/docs/" "View Archify map" click TLS "https://maps.lab.audasmedia.com.au/internet_use_control/docs/" "View Archify map"