Cloud-Ebene
Die Cloud lebt im Repo de.profipos.web und laeuft unter https://profipos.de.
Komponenten
| Bereich | Pfad | Beschreibung |
|---|---|---|
| Marketing-Site | / | Landing-Page mit Funktionen, Branchen, Hardware, Compliance |
| Backoffice | /backoffice | Login-geschuetzte UI fuer Stammdaten + Mandanten-Verwaltung |
| REST-API | /api/v6/* | JSON-API fuer Bestellportal + Standort-Server-Sync |
Stack
- PHP 8.3 / CodeIgniter 4.7
- MariaDB (Single-DB Multi-Mandant via
mandant_uuid) - Argon2id fuer Passworter
- Tailwind CDN + Inter-Font im Frontend
Auth-Modell
Backoffice-Login per E-Mail+Passwort. Sessions sind File-basiert
(CI4-Session, Pfad writable/session). Ein Benutzer kann mehreren
Mandanten zugeordnet sein (benutzer_zuordnungen) — der aktive
Mandant wird in der Session gespeichert und ist im Backoffice
oben rechts via Dropdown umschaltbar.
Ein Sonderfall ist der Anesda-Admin (ist_anesda_admin=1): er
sieht und verwaltet alle Mandanten und kann neue Mandanten anlegen.
Mandanten-Verwaltung
Nur der Anesda-Admin kann unter /backoffice/mandanten neue
Mandanten anlegen, deaktivieren oder DSGVO-loeschen.
Standort-Verwaltung
Jeder eingeloggte Benutzer (mit Mandant-Zuordnung) kann unter
/backoffice/standorte die Standorte seines aktiven Mandanten
verwalten. Pro Standort werden hinterlegt:
- Adresse, Geo-Koordinaten, Zeitzone
server_endpoint(z. B.profipos.local:8443)server_pubkey(fuer Cloud-Server-Auth)- MQTT-Broker-Host/Port/User/Pass (verschluesselt)
REST-API
Die REST-API ist unter /api/v6/* erreichbar. Wichtige Gruppen:
/api/v6/server/*— Standort-Server-Pairing + Inbox/api/v6/einrichtung/*— Geraete-Onboarding (Display-basiert)/api/v6/devices/*— Geraete-Discovery (headless)/api/v6/bestellportal/*— Kunden-Bestellportal (anonym, CORS)
Siehe REST-API fuer Details.
Deploy
Der Cloud-Code liegt auf 88.99.138.84 unter /srv/www/git/de.profipos.web.
Deploy via git pull, Cache via rm -rf writable/cache/*, Reload via
apache2ctl graceful (NICHT systemctl reload apache2 — Bug auf dem Host).