Beiträge von sschuste

    bei mir kommt nach dem /usr/local/bin/backup-homebridge-config-ui-x.sh der Fehler: parse error: Invalid numeric literal at line 1, column 10

    Das scheint erzeugt zu werden durch diesen einzeiligen (!) Befehl:


    curl http://192.168.1.22:8080/api/auth/login -H 'Content-Type: application/json' --data-binary '{"username":"admin","password":"admin"}'


    Gib diesen Befehl im Terminal direkt ein, wobei du natürlich die fett dargestellten Begriffe durch die von dir genutzten ersetzt werden müssen. Herauskommen sollte sowas wie:


    {"access_token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwibmFtZSI6IkFkbWluaXN0cmF0b3IiLCJhZG1pbiI6dHJ1ZSwiaW5zdKFuY2VJZCI6IjhiMzRiNTRkYzA0NTQ0ZjEyZDFjZjNjOTRkNzNhOTNhZGIzZliRVTNhYmNlMjQwNTUwQDI4Mjc3MWZjZDY1YWQiLCJpYXQiOjE1ODkwMzAxOTEsImV4cCI6MTU4OTA1ODk5MX0.F0omaKeF1TSAavqSCb11nv6hdAWAtUkkrrRUaKcuqn0","token_type":"Bearer","expires_in":28800}


    Was kommt bei dir da raus?

    • Wenn du einen Mac hast, dann lass das Skript da laufen und gibt als Adresse die IP deines Raspi an. Im Skript änderst du dann die Zeile UI_HOST=http://localhost:8080 in etwas wie UI_HOST=http://192.168.1.22:8080. Allerdings musst du erst auf dem Mac das Programm jq installieren. Dazu brauch man den Paketmanager brew:
      brew install jq

      Falls du kein brew hast, musst du es erst installieren mit
      /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
    • Wenn du einen anderen Raspi oder Linux-Rechner hast, lass es dort laufen und installiere vorher jq mit sudo apt-get install -y jq.
    • Wenn du einen Windows-Rechner hast, dann weiß ich nicht, wie das dort geht. Ich habe letzte Woche zum ersten Mal vor Windows 10 gesessen, weil mich eine Freundin bat, ihren neuen Laptop zu installieren. Jesses. Ich glaube, ich werde Windows nie begreifen. Ein echtes Betrübssystem. Dafür bin ich nicht hartgesotten genug.

    oder reicht es wenn dort drauf steht das es mit Google und Alexa fuktioniert?

    Wenn dort draufsteht, es funktioniert mit Google, dann funktioniert es mit Google. Wenn dort draufsteht, es funktioniert mit Alexa, dann funktioniert es mit Alexa. Wenn dort draufsteht, es funktioniert mit Google und Alexa, dann funktioniert es mit Google und Alexa.


    Der Satz "es funktioniert mit Apple" taucht irgendwie nicht auf.


    Du hast zwei Möglichkeiten: entweder es steht HomeKit drauf. Dann funktioniert es sofort mit Apple Home. Oder das Zeugs ist nicht HomeKit-kompatibel und dann geht es möglicherweise über die Homebridge, die das nicht Kompatible in Kompatibles übersetzt. Das spannende Wort ist hier: möglicherweise.

    Wie finde ich denn z.B. raus ob ein China-Gerät mit Homebridge funktionieren wird.

    1. Einfach kaufen und ausprobieren. Im Zweifel wegwerfen. Nicht gut.
    2. Hier fragen und einschätzen lassen.
    3. Geld in die Hand nehmen und nur Geräte mit dem HomeKit-Logo kaufen.
    4. Und ganz übel: lernen. Was ist Zigbee, was ist Z-Wave, was ist Homematic, was ist MQTT, was ist das jetzt wieder? Ich wollte das alles nicht wissen und hab's lernen müssen.

    Ich denke, Punkt 2 ist schon sehr brauchbar. Was von den Mitgliedern in diesem Forum schon alles ausprobiert worden ist, da bekommt man fast immer eine gute Antwort. Empfehlenswert ist auch Punkt 3: das erspart einem einen Haufen Bastelei und Frust. Punkt 4 ergibt sich nach einer Weile von selbst.

    Die einen oder anderen werden es schon gesehen haben: das Web-UI von homebridge-config-ui-x bietet die Möglichkeit, Backups von der Homebridge-Konfiguration zu machen. Wer es nicht kennt: oben rechts gibt es ein Menü mit drei Punkten, und darunter gibt es den Menüpunkt Backup/Wiederherstellen.



    Das Backup per homebridge-config-ui-x funktioniert so: das Backup erstellt ein Verzeichnis namens storage, in dem sich der Inhalt eures Konfigurationsverzeichnissen befindet. Gesichert wurden also die config.json und auch die Verzeichnisse persist und accessories. Zusätzlich wird alles andere, was sich im Konfigurationsverzeichnis noch so angesammelt hat, ebenfalls gesichert.


    Weiterhin werden zwei Dateien erstellt. Die eine, info.json, enthält Informationen über die verwendete Node-Version und die verwendete homebridge-config-ui-x-Version, mit der das Backup erstellt wurde. Die andere, plugins.json, enthält Informationen über alle installierten Plugins sowie deren Versionsnummer.


    Diese Bestandteile werden in eine große Datei gepackt, nämlich in ein sogenanntes tar-Archiv, und dann auf den Computer, der das Web-UI anzeigt (also euer Mac oder PC), heruntergeladen. Wenn man mit seiner Homebridge umziehen will oder eine kaputte Homebridge wiederherstellen will, dann kann man mittels der Wiederherstellen-Funktion dieses tar-Archiv laden und sowohl config.json, die Verzeichnisse accessories und persist als auch alle Plugins werden erneut installiert. Neuere Versionen von Plugins werden ersetzt durch diejenigen, die in plugins.json angegeben sind.


    Das ist doch schon mal ganz nett. Leider muss dieser Vorgang manuell angestoßen werden. Da wir in diesem Forum nicht so auf manuelles Ausführen stehen, wäre es wünschenswert, wenn man das Backup automatisieren könnte. Oznu, der Entwickler von homebridge-config-ui-x, hat mir mitgeteilt, dass er diese Automatik eines Tages in sein Plugin eingebaut werden wird. Bis dahin habe ich hier eine Lösung, mit der man das von der Shell aus automatisieren kann.


    Dazu muss man ein Shell-Skript schreiben und einen Cronjob. Das Skript stößt homebridge-config-ui-x an, das Backup zu erstellen. Der Cronjob führt das Skript automatisch einmal täglich aus. Das Skript ist übrigens ebenfalls von Oznu (siehe https://github.com/oznu/homebridge-config-ui-x/issues/660). Ich habe es leicht verändert.


    So wird's gemacht:

    jq installieren

    Zunächst müsst ihr ein weiteres Programm auf eurem Raspi installieren:

    sudo apt-get install -y jq


    Shell-Skript schreiben

    Danach schreibt ihr das Shell-Skript:

    sudo nano /usr/local/bin/backup-homebridge-config-ui-x.sh


    Ein leerer Editor erscheint. Dort wird eingefügt:


    Bitte beachtet, dass ihr im Skript eure Login-Daten für das Web-UI angeben müsst. Also den Usernamen und das Passwort, die ihr für das Login verwendet, wenn ihr die grafische Oberfläche der Homebridge aufruft. Ihr müsst im Skript eure Daten angeben, und zwar hier:


    USERNAME=admin

    PASSWORD=admin


    Bei vielen wird das möglicherweise schon so passen.


    Dann müsst ihr den Port angeben, den ihr für homebridge-config-ui-x verwendet:

    UI_HOST=http://localhost:8080


    Auch das wird bei den meisten so richtig sein.


    Nun könnt ihr das Skript speichern und den Editor verlassen, am besten indem ihr ctrl-x (oder strg-x) drückt, danach y und dann die Eingabetaste. Dann macht ihr das Skript ausführbar:


    sudo chmod +x /usr/local/bin/backup-homebridge-config-ui-x.sh


    Zeit zum Testen. Ruft das Skript auf mit

    /usr/local/bin/backup-homebridge-config-ui-x.sh


    Wenn alles funktioniert, gibt das Skript am Ende aus:

    Backup saved to /home/pi/backup-2020-05-08.tar.gz

    wobei das Datum im Dateinamen morgen schon ein anderes sein wird.


    Das tar-Archiv wurde heruntergeladen auf den Raspi. Ihr könnt es sehen, indem ihr einfach die Dateiliste anzeigt:

    ls -l

    Cronjob erstellen

    Das ist einfach. Geht so vor:


    cd /etc/cron.daily

    sudo ln -s /usr/local/bin/backup-homebridge-config-ui-x.sh .

    cd


    Das war's. Einmal am Tag wird nun das Backup erstellt. Bei mir ist das immer um 6.28 Uhr morgens, aber das mag bei jedem anders sein.


    Sicherlich kann man hier noch eine Menge verbessern. Vielleicht hat ja det noch ein paar Ideen, wie das Skript am besten in seine Backupstrategie passt.


    Viel Erfolg.

    Wie ist das denn z.B. bei einer BT-Steckdose? Die wird doch dann von den APTVs angesteuert und nicht von dem Raspberry-Pi, oder?

    Genau so ist es, solange die Steckdosen auf HomeKit-Basis laufen. Wenn ich es richtig sehe, sind die Ledvance-Steckdosen nicht HomeKit-kompatibel, sondern brauchen eine ZigBee-Bridge. Das bedeutet, diese Steckdosen werden nicht von ATVs erkannt oder irgendwie direkt angesteuert.


    Oder meinst du vielleicht andere Ledvance-Steckdosen? Steht HomeKit drauf?

    Du hast ja "nur" Homebridge im Einsatz

    Naja, auf meinem Raspi läuft die Homebridge, dazu Node Red, dazu eine infkuxdb und auch noch Grafana und trotzdem würden 2GB reichen. Als ich den 4er gekauft habe, konnte ich keinen kleineren als einen mit 4GB bekommen. Natürlich schaden die 4GB auch nicht ^^

    aber was ist denn in der Handhabe das einfachste?

    Das kann ich dir nicht sagen. Ganz allgemein gesprochen ist immer das einfachste dasjenige, das man gut kennt, oder? In meinem Fall ist das Homebridge. Die ist halt auch ganz dicht bei dem Apple-Zeugs. Die anderen Lösungen sind bestimmt auch geil und wahrscheinlich würde ich mir die Finger danach lecken, wenn ich sie kennen würde. Aber dies ist nun mal hauptsächlich ein HomeKit-Forum und die Homebridge ist nun mal für HomeKit gemacht.


    Home Assistant, iobroker oder auch FHEM sind Hausautomatisierungssysteme, die kein HomeKit benötigen. Die sind autark und man kann dort irgendwie HomeKit gangbar machen. Das hat sicherlich seine Vorteile und es ist keine leichte Entscheidung. Ich glaube aber, dass HomeKit und Homebridge die schnelleren Erfolgserlebnisse liefern - von daher wäre wohl die einfachste Handhabung die Homebridge. Was sie aber mit den anderen Systemen gemein hat, ist die Tatsache, dass man sich damit beschäftigen muss.

    1. Passt die Planung soweit?

    Ja.

    2. Gibt es eine einfache Lösung um die Garage zu steuern, z.B. mit einem potentialfreiem Taster und einem Sensor der dnn HomeKit sagt ob das Tor auf oder zu ist?

    Da ich keine Garage habe, kann ich dazu keine brauchbare Aussage treffen. Grundsätzlich: ja.

    3. Besteht mit HomeKit auch die Möglichkeit einzelne Steckdosen nasch dem Zufallsprinzip anzusteuern um Lampen zu schalten wenn man im Urlaub ist?

    Nein.

    4. Gibt es ein preisgünstiges Modul um Temperatur und Luftfeuchtigkeit bei der oben genannten Konfiguration einzubinden?

    Definiere: preisgünstig.

    5. Gibt es ein Möglichkeit die Temperatur des Pools in HomeKit anzeigen zu lassen?

    Ich hab auch keinen Pool. Soll heißen: ich weiß nicht, mit welchen Geräten eine Pooltemperatur gemessen wird.

    Zusätzlich mehrere Ledvance SMART+ Bluetooth-Schaltsteckdosen um diese direkt über HomeKit anzusteuern. (Oder wird eine Bridge benötigt?)

    Ich kenne diese Steckdosen nicht. Und dann kann ich auch Bluetooth nicht leiden. Ich halte das für lahm, unzuverlässig und saublöde - aber vielleicht ist das ja auch nur in meinem Leben so. Ich selbst habe Bluetooth-Steckdosen von EVE, die genau das tun, was ich will und somit meine Aussage direkt Lügen strafen. Aber trotzdem ziehe ich WLAN-basierte Steckdosen vor. Ich hab eine von Parce und drei Steckerleisten von Koogeek, die deutlich schneller schalten.


    Bluetooth auf dem Raspi und Homebridge führt, wenn ich es beschreiben müsste, zum Rauswurf aus diesem Forum wegen unflätiger Sprache, die keine Obszönität aussparen würde.

    Paspberry Pi mit Homebridge kaufen

    Meine Empfehlung lautet: Raspberry Pi ohne Homebridge kaufen. Die Homebridge manuell installieren, wie in unserer Forenanleitung beschrieben. Mit der bekommt das jeder hin und dafür gibt's hier reichlich Support. Keine App verwenden, um die Homebridge zu installieren, nicht einmal dann, wenn dir der Entwickler verspricht, dich zukünftig in sein Nachtgebet aufzunehmen.


    Ansonsten: willkommen im Forum :thumbup:

    Es ist komisch, daß das andere Plugin so verbinden konnte, mein Windows-PC und Seydx's Plugin aber keine Antwort bekommen...

    Da steht da nicht. Da steht, dass die angegeben Adresse nicht gefunden werden konnte: getaddrinfo ENOTFOUND. Get address info, Error not found.


    Da steht nicht, dass es keine Antwort gibt.

    Ok, das verstehe ich jetzt. Irgendeine Smartphone-App soll den Webhook auf dem Raspi triggern, sobald du dich irgendwo in den Geofence hinein oder aus ihm hinausbewegst. Und ja, du hast keine Chance ohne Port-Weiterleitung oder du baust eine sehr aufwändige Lösung.