Hallo Leute!
Da ich vorhabe, viel über direkte Urls zu machen, hatte ich auch früh die Idee, Hostnamen zu vergeben. Diese trage ich in der Fritzbox ein. Ich habe ebenfalls feste IP-Adressen, habe diese auch aus einem Adressraum, den der DHCP nicht vergeben darf, und habe auch Nummernkreise definiert, um die einzelnen Gerätetypen zu sortieren, aber ich hatte keine Lust, ständig die Tabelle rauszukramen oder mir an den FIngern abzuzählen, wie wohl die Adresse dieses oder jenes Shellys ist. Ich habe mir folgendes System überlegt:
zz-{raum}-{funktion}
Wobei ich die Raumnamen auf maximal 4 Zeichen abkürze und die Funktionen nach Möglichkeit gleich nenne. Beispiele:
Ziel war es, möglichst leicht zu memorieren, wie jeder einzelne Shelly heißt, um auswendig action-urls tippen zu können:
http://zz-ess-deckenlicht/light/0?turn=on
Bei mehreren Ausprägung derselben Funktion habe ich erweitert oder alternativ benannt:
Das "zz" am Anfang sorgt lediglich dafür, dass in einer alphabetischen Liste alle Shellies beisammen sind, und nach der langen Liste auch nichts anderes mehr kommt.
Mein reservierter Adressraum geht von x.x.x.150 bis x.x.x.249, reicht also für 100 Shellies. Ein eigenes Netz habe ich erwogen, wollte aber zunächst keine Schwierigkeiten, die Dinger zu erreichen. Da ich aber jetzt Hostnamen habe, kann ich die IP-Adressen ja auch jederzeit ändern. Meine Nummernkreise habe ich wie folgt aufgeteilt:
- 150-189: Licht
- 190-199: Steckdosen (Hauptsächlich Verbrauch messen: Waschmaschine, Trockner,...)
- 200-210: Rollläden (ja es sind genau 11)
- 211-219: Fensterkontakte (das sind weniger, manche Fenster kann man nicht öffnen)
- 220-239: Bewegungsmelder
- 240-249: Temperaturen (nur vorgesehen)
Soweit, so gut. Allerdings ist mein DNS die Fritzbox, und wenn ich die tauschen muss, wird es vielleicht unangenehm (Export? Backup?).
Hat jemand dazu weitere Ideen oder Anmerkungen?
Die Shellys unterstützen aber auch mDNS, also Domain Namen per Multicast ohne DNS. Aber wie muss ich das dann einrichten und ansprechen? Irgendwas mit ".local." oder wie geht das? Und können die Shellies das dann auch als Client, in Action-URLs? Fände das supercool: Ein verteiltes System ohne "Single Point of Failure" (habe Haupt und Backup-WLAN): sehr robust!