Skip to content

Meeting 5

Fabienne Rosa Schedler edited this page Jun 24, 2026 · 11 revisions

Meeting

Teilnehmer:innen:

  • Prahbdip Singh
  • Maria Kuhn
  • Adriano Paganini
  • Emma Danko
  • Fabienne Schedler

Datum, Uhrzeit: 18.03.2026, 11:00-14:30

Meeting-Typ: V2 Feedback umsetzen, Systemdurchstich

Ort: IRL

Schriftführer:in: Fabienne Schedler

Mitschrift

Feedback von Andrea Mussmann Schritt für Schritt durchgehen und besprechen, was noch offen ist. Vieles wurde aber schon erledigt.

Wie bekommt Abteilung einen Abteilungsleiter? Das macht der Root-Systemadmin. Komplexe Abläufe:

Employee muss Raum und Department haben Department has lead

  1. Root Sysadmin
  2. Root Sysadmn kann alle User erstellen, User kann direkt eine Absense haben, ohne weitere Abhängigkeiten
  3. Rootadmin erstellt Adresse (Idee: Adresse und Building im UI unter einmal)
  4. erstellt Building
  5. Departmentlead (User mit dieser Rolle) hat keinen direkten Verweis auf das Department
  6. Department wird erstellt, Departmentlead wird zugeteilt) Department hat Liste von Räumen, die dazugehören
  7. Room (verweist auf Building), dürfen ohne Department sein, Raum weiss nicht, welches Department
  8. Nach Raum, kann Systemadin Raspberry erstellen
  9. Danach die Sensorstation (muss nach Raspberry gemacht werden)
  10. Threshold pro Raum (kann theoretisch parallell zu Sensorstation passieren)
  11. Threshold muss min ein Climatehint haben (im UI Erstellung von von Threshold und Hint) es kann mehree Hints pro Threshold geben
  12. Violation braucht Threshold und Raum (werden dann zur Laufzeit erstellt)

Sensorstation: setzt Raspberry und Raum voraus, BLE Service braucht Sensorstation und Charakteristic braucht BLE Service

Danach: wegklicken von Grenzwertungsdings? wie wird es propagiert?

Was wenn Raum Department wechselt? Liste in den jeweilgen Department wird upgedated, Referenz zu Building ändert sich nicht

TODOs

Entscheidung: Im Raspberry hardcoden, average der letzten 5min, wenn der Threshold verletzt wird

Komplexe Abläufe: Backend spricht Heartbeat Endpunkt an, das triggert Heartbeat infos für Arduiones, schickt das dann als möglichst schöne und detaillierte Info zurück, Todo: Details überlegen. User kann Meldung im Frontend und auf Sensorstation wegklicken.

Bei Grenzverletzung sendet Raspberry Alert and Bakcend, loggt das und speichert nochmal explizit ide letzte Verletzung mit Timestamp. Neue Alerts erst senden, wenn vorheriger mehr als 15min her ist und ist sie noch aktiv (dann wird keine neue geschickt).

POST update disabled grenzwert von backend, wird an Arduino weitergeleitet. dann braucht Backend aber auch einen Endpunkt für disabled meldungen.

Todo: Frage: Warnungen nur für datenschutzkonforme Grenzwertüberschreitungen? Späteres Todo: Setup DB, User, etc. Frage: Bulk Edits von Thresholds, whats up

Details der ID Erstellung besprechen Wichtig: erstkonfig definieren!

Id vs uuid id von Arduion ist hardcoded, Raspberry bekommt seine über conf.yaml

wird ip im Raspberry gehardcoded

Raspberry Device Setup: Das Bashscript das conf.yaml beim startup ausführt, liefern wir mit.

  1. Im Frontend wird Raspberry erstellt
  2. Backend generiert ID (zusätzlich zur DB ID) und schreibt diese in conf.yaml
  3. Wir gehen davon aus, dass Server im gleichen Netzwerk ist. Server schreibt Wlan Credentails und hostname ins conf.yaml. Wir gehen davon aus, dass DNS verfügbar. Beim ersten Mal muss Sysadmin conf.yaml manuell auf die SIM-Karte packen.

Dann ist Raspberry verbunden mit Wlan verbunden. Server verbindet sich mit diesem Hostname. Jetzt sollte Verbindung sein. Alle weitern Änderung von conf.yaml werden passenden POST Endpunkt auf dem Pi gesendet.

Server scannt 5. Raspberry Gateway ID, Hostname oder DeviceToken und Wifi Credentials. 6. wie bekommen wir IP vom Raspberry? 7. conf.yml wird an POST Endpunkt auf Raspberry gesendet 8.

Adruine steht schon im Wiki.

  1. Sysadmin klickt neue sensorstation erstellen
  2. Backend generiert ID
  3. Arduino id muss mna hardcode.

Clone this wiki locally