projekte:schlosssystem_2026
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige Überarbeitung | ||
| projekte:schlosssystem_2026 [2026-03-07 16:29] – [NTP] wene | projekte:schlosssystem_2026 [2026-05-08 22:47] (aktuell) – [MQTT] wene | ||
|---|---|---|---|
| Zeile 49: | Zeile 49: | ||
| * Als Ruum42 Vollmitglied möchte ich das Schloss auch ohne Smartföhn öffnen können. Idee ist ein ESP. | * Als Ruum42 Vollmitglied möchte ich das Schloss auch ohne Smartföhn öffnen können. Idee ist ein ESP. | ||
| * (Allenfalls) Als Besucher ohne persönliches Login/ | * (Allenfalls) Als Besucher ohne persönliches Login/ | ||
| + | * Als Ruum42 Vollmitglied möchte ich mehrere Tokens zur Authentifizierung in meinem Account hinterlegen und verwalten können. Damit kann ich beispielsweise den SSH Schlüssen der Trigger App auf dem Smartphone sowie den SSH Schlüssel meines Laptops hinterlegen und im Falle eines Verlustes auch wieder getrennt zurückziehen. Die Schlüssel würde ich gerne anhand eines Namens, den ich selbst vergeben kann, identifizieren können. | ||
| + | * Als Vorstandsmitglied möchte ich Dienstleistern wie z.B. Getränkelieferanten einen Einmal-Schlüssel per E-Mail senden können. Dabei sollte der Dienstleister keine spezielle Hard- oder Software benötigen. Ein gängiges Smartphone mit Browser muss genügen. Der Einmal-Schlüssen wird ungültig, sobald er einmal benutzt wurde. (resp. ein paar Minuten danach, damit nach versehentlicher Schliessung nochmals geöffnet werden kann.) Beispiele für einen Schlüssel wären ein Link, der nur im Schloss-Netz gültig ist, oder ein Zahlencode der in einem Captive-Portal eingegeben werden muss. | ||
| === Schloss-Aktuatoren === | === Schloss-Aktuatoren === | ||
| Zeile 60: | Zeile 62: | ||
| === Module und Schnittstellen === | === Module und Schnittstellen === | ||
| - | {{ :projekte:schlosssystem_module_und_schnittstellen_v2.png |}} | + | {{: |
| Grafik erstellt mit [[https:// | Grafik erstellt mit [[https:// | ||
| Zeile 151: | Zeile 152: | ||
| # Kommando zum Öffnen an's Schloss schicken: | # Kommando zum Öffnen an's Schloss schicken: | ||
| - | mosquitto_pub -h wene-raspi-lock -t "main-door/lock" -m " | + | mosquitto_pub -h wene-raspi-lock -t "main_lock/command/ |
| # Das Schloss schickt den Status " | # Das Schloss schickt den Status " | ||
| - | mosquitto_pub -h wene-raspi-lock -t "main-door/ | + | mosquitto_pub -h wene-raspi-lock -t "main_lock/ |
| # Das Flag ' | # Das Flag ' | ||
| </ | </ | ||
| Zeile 172: | Zeile 173: | ||
| <file - tls.conf> | <file - tls.conf> | ||
| listener 8883 | listener 8883 | ||
| - | allow_anonymous true | ||
| cafile / | cafile / | ||
| certfile / | certfile / | ||
| keyfile / | keyfile / | ||
| + | </ | ||
| + | |||
| + | <file - password.conf> | ||
| + | password_file / | ||
| + | allow_anonymous false | ||
| + | </ | ||
| + | |||
| + | <file - acl.conf> | ||
| + | acl_file / | ||
| </ | </ | ||
| Die Datei '' | Die Datei '' | ||
| + | |||
| + | Die Datei '' | ||
| + | |||
| + | <code bash> | ||
| + | # Passwortdatei anlegen mit dem ersten Benutzer namens " | ||
| + | sudo mosquitto_passwd -c -b / | ||
| + | |||
| + | # Den Eigentümer der Passwortdatei festlegen | ||
| + | sudo chown mosquitto: | ||
| + | |||
| + | # Weitere Einträge zur existierenden Datei hinzufügen | ||
| + | sudo mosquitto_passwd -b / | ||
| + | # Es wird eine Warnung angezeigt, dass die Datei nicht root gehört. Diese kann | ||
| + | # ignoriert werden, da der mosquitto Service nicht als root ausgeführt wird. | ||
| + | # Um die Warnung zu vermeiden erst alle Passwörter eintragen, dann den Besitzer ändern. | ||
| + | </ | ||
| + | |||
| + | Über die Datei ''/ | ||
| + | |||
| + | <file - acl> | ||
| + | user system | ||
| + | topic read main_lock/ | ||
| + | topic write main_lock/ | ||
| + | |||
| + | user towel_key | ||
| + | topic write main_lock/ | ||
| + | topic read main_lock/ | ||
| + | </ | ||
| === Python Library Paho === | === Python Library Paho === | ||
projekte/schlosssystem_2026.1772897380.txt.gz · Zuletzt geändert: von wene