Beiträge von sschuste

    Und ich scheitere an lint:

    Lint meint nur:

    Code
    Error: Parse error on line 11:
    ...e-input-controls": ['menu', 'topmenu']	
    -----------------------^
    Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '[', ']', got 'undefined'

    Stefan

    Es wird nur die Anfangszeit vorgezogen. Die Endzeit bleibt, daher der Schalter ist länger Ein: Offsetdauer + Termindauer.

    Ich finde den Kalender toll, aber ich benutze ihn nicht für die Müllabfuhr. Bei mir kommen die nämlich einfach klingeln und suchen sich die Tonne dann selber raus. Ich benutze ihn für Fußballspiele von Eintracht Frankfurt. Bei mir soll der Kalender das Radio anmachen, und der Anfangsoffset ist prima, weil ich jetzt das Radio fünf Minuten vorher einschalten kann. Danke dafür, jetzt isses perfekt für mich.


    Tatsächlich fangen Fußballspiele eigentlich nie vor dem geplanten Datum an. Sie enden dafür manchmal später: Nachspielzeit, Verlängerung, das Spiel hat vielleicht später begonnen als geplant oder das Publikum hat in der Halbzeitpause das Stadion abgerissen und es muss jetzt erst ein neues gebaut werden. In meinem Fall wäre also ein Offset nach dem Termin ganz brauchbar, aber um ehrlich zu sein: da das Ende des Termins in keinem Fall absehbar ist, wüsste ich auch keinen Offset, und am Ende läuft es dann genau darauf hinaus, dass ich das Radio wie schon jetzt einfach manuell abstelle.


    Wie dem auch sei: ich wollte nur mal eine Kalenderanwendung vorstellen, die sich nicht an Müll orientiert... obwohl... wenn ich an das Spiel gegen Stuttgart denke...


    Stefan

    Ja. Sieht erstmal hässlicher aus als es wirklich ist. Ich mach's so auf der Shell:


    curl -H "Content-Type: application/json" -X PUT -d '{"effect":"colorloop"}' http://192.168.1.2/api/FmA2tRUxWr7pAi4DLjBsHF491bhcf5o5F3C1Uyk9/groups/2/action/


    Um das nachzumachen, musst du einen User auf der Hue-Bridge anlegen. Der User im obigen Beispiel heißt FmA2tRUxWr7pAi4DLjBsHF491bhcf5o5F3C1Uyk9. Der funktioniert bei dir nicht, sondern du musst deinen eigenen Usernamen kreieren.


    Das ist sehr einfach. Folge dieser Anleitung: https://www.developers.meethue.com/documentation/getting-started

    Einfach nachmachen.


    Wenn es dir gelungen ist, öffnest du ein neues Browserfenster und rufst auf:


    http://192.168.1.2/api/FmA2tRU…91bhcf5o5F3C1Uyk9/lights/


    Wobei du natürlich die IP-Adresse deiner Hue-Bridge einsetzt und deinen neuen Usernamen. Ein unleserlicher JSON-Verhau sollte deinen Bildschirm füllen. Um ihn leserlich zu machen, kopiere ihn und validiere ihn bei jsonlint.com. Oder gib auf der Shell ein:


    curl -H "Content-Type: application/json" -X GET http://192.168.1.2/api/FmA2tRUxWr7pAi4DLjBsHF491bhcf5o5F3C1Uyk9/lights/ | python -m json.tool


    Auch hier wieder deine IP-Adresse und deinen Usernamen verwenden, aber das sollte wohl inzwischen klar sein, oder? ;)


    Das Ergebnis ist in beiden Fällen ein lesbarer JSON-Output, der deine Lampen anzeigt. Das wird mit dem API-Request lights gemacht. Steht hinter dem Usernamen.


    Mein Beispiel ganz oben enthält den API-Request für groups. Damit sind die gruppierten Lampen gemeint, also beispielsweise Wohnzimmer oder Flur. Bei mir hat das Wohnzimmer die Nummer 2:


    curl -H "Content-Type: application/json" -X GET http://192.168.1.2/api/FmA2tRUxWr7pAi4DLjBsHF491bhcf5o5F3C1Uyk9/groups/ | python -m json.tool


    ergibt ein Ergebnis, das bei mir diesen Wust enthält:

    Wie man sieht, hat Wohnzimmer die Nummer 2. Das Beispiel schaltet also den Colorloop für den ganzen Raum ein. Wenn du eine einzelne Lampe loopen willst, musst du sie mit dem Request lights ermitteln. Was sich also bei dir ändern wird: /groups/2/action könnte sowas wie /lights/5/action sein.


    So, und das Ganze wird wieder ausgeschaltet mit:

    curl -H "Content-Type: application/json" -X PUT -d '{"effect":"none"}' http://192.168.1.2/api/FmA2tRUxWr7pAi4DLjBsHF491bhcf5o5F3C1Uyk9/groups/2/action/


    Auf dem Raspi könnte man nun ein Shell-Script namens loopy.sh schreiben und dieses per homebridge-cmd aufrufen:

    Bash
    #!/bin/bash
    
    if [ "$1" == "on" ]; then
            curl -H "Content-Type: application/json" -X PUT -d '{"effect":"colorloop"}' http://192.168.1.2/api/FmA2tRUxWr7pAi4DLjBsHF491bhcf5o5F3C1Uyk9/groups/2/action/
    else
            curl -H "Content-Type: application/json" -X PUT -d '{"effect":"none"}' http://192.168.1.2/api/FmA2tRUxWr7pAi4DLjBsHF491bhcf5o5F3C1Uyk9/groups/2/action/
    fi

    Ja, das geht auch eleganter, aber es funktioniert mit (nachdem man noch ein flottes chmod +x loopy.sh eingegeben hat):


    /home/pi/loopy.sh on und /home/pi/loopy.sh off.


    Viel Vergnügen.


    Stefan

    Das ist das schöne an den Parrot-Sensoren: Die haben diese Datenbank. Und wir haben viel zu wenig gegossen.

    Da hast du recht. Ich habe genau ein grünes Ding und genau einen Sensor, und so lange wie dieses grüne Ding hat hier noch nie was überlebt. Wird auch immer größer. Die Anschaffung hat sich gelohnt - zumindest für die Pflanze.


    Stefan

    Sorry, über Playlists weiß ich nix. Ich benutze die API nur für die Lautstärkenregelung, und zwar zusammen mit homebridge-http.


    Code
            {
                "accessory": "Http",
                "name": "Sonos Volume",
                "switchHandling": "realtime",
                "http_method": "GET",
                "on_url": "http://localhost:5005/Wohnzimmer/volume/40",
                "off_url": "http://localhost:5005/Wohnzimmer/volume/8"
            }


    Stefan

    Über die Adresszeile des Browsers geht das.


    http://192.168.1.21:5005/Wohnzimmer/play

    http://192.168.1.21:5005/Wohnzimmer/pause


    http://192.168.1.21:5005/Wohnzimmer/Volume/40

    http://192.168.1.21:5005/Wohnzimmer/Volume/20

    http://192.168.1.21:5005/Wohnzimmer/Volume/+17

    http://192.168.1.21:5005/Wohnzimmer/Volume/-9


    Oder von der Shell aus:

    curl http://192.168.1.21:5005/Wohnzimmer/play



    Es wäre natürlich äußerst zielführend dabei, wenn du IP-Adresse und Zone an deine Gegebenheiten anpasst ;)


    Stefan

    Ich habe auch die Dateiendung gelöscht. Trotzdem keine Zugriffsmöglichkeit.


    Wenn ich versuche, die IP anzupingen, bekomme ich auch einen Timeout?

    Woher weißt du die IP des Raspi? Du solltest nur dann einen Timeout bekommen, wenn der Raspi

    a) eine andere IP-Adresse hat

    b) überhaupt gestartet ist

    c) hinter einer Firewall steht, die den ping blockt (unwahrscheinlich)


    Stefan

    Mmh, also wenn ich homebridge mit sudo systemctl restart starte und anschließend mit

    sudo journalctl -f -au homebridge den live Status Abfrage bekomme ich immer die Meldung homebridge [1169]: -su: /var/log/homebridge.log: keine Berechtigung


    Wie soll ich hier die Rechte noch setzen hatte auch schon 755 versucht und es ging immer noch nicht ?

    Du hast 755 wie versucht?


    Versuch mal folgendes:

    sudo touch /var/log/homebridge.log

    sudo chown homebridge /var/log/homebridge.log


    Falls du homebridge als User pi startest (steht in /etc/systemd/system/homebridge.service oder in /etc/init.d/homebridge), heißt der zweite Schritt


    sudo chown pi /var/log/homebridge.log


    Und danach homebridge restarten mit


    sudo systemctl restart homebridge


    Stefan

    Das sind keine ERRORS, sondern nur WARNINGS, und sie können ignoriert werden, wie die Dokumentation auf https://www.npmjs.com/package/homebridge ganz unten erwähnt. Wir alle leben damit :)


    Stefan

    Habe exakt das gleiche Problem und bin auch blutiger Anfänger. Wolverine, hat das funktioniert?


    Ich besitze keine Tastatur und keinen Bildschirm, kann ich das auch über den Terminal des Mac erledigen? Welche Befehle muss ich dann eingeben?

    Kannst du nicht. Echt ätzend, ich musste selber erstmal eine Tastatur kaufen gehen und den Raspi an meinen Projektor anschließen - toll.


    Und dich vom Mac aus auf den Raspi einzuloggen, muss auf dem Raspi der sshd gestartet sein. Mit muss meine ich: muss muss muss muss. Und der wird im default-Zustand nicht gestartet. Solange der nicht gestartet ist, kannst vom Mac aus nichts machen.


    Stefan

    kommt folgende Meldung:


    -su: /var/log/homebridge.log: Permission denied


    Hatten wir oben schon: permission denied = falsche Rechte. Der User pi möchte auf die Datei /var/log/homebridge.log schreiben, was er nicht darf, weil sie ihm nicht gehört.


    Mach mal sudo chown pi:pi /var/log/homebridge.log und danach sudo /etc/init.d/homebridge start


    Stefan

    Pfad zu log files:

    var/log/homebridge.log

    var/log/homebridge.err

    Glaube ich nicht. Die heißen bestimmt

    /var/log/homebridge.log

    /var/log/homebridge.err


    Ich möchte an dieser Stelle vor allem das Augenmerk auf den / am Anfang des Pfades lenken, auch wenn es kleinkariert wirkt.


    Ansonsten: Rechte richtig gesetzt? Ein


    chmod 644 /var/log/homebridge* wirkt manchmal wahre Wunder.


    Bei mir übrigens liegt das Log in /var/log/daemon.log.


    Stefan

    Ich verstehe nicht, was man an Alexa besser finden kann als an Siri, außer das sie besser hört. Diese Skillgeschichte ist doch lachhaft umgesetzt ("Alexa, sage Dingsbums, es möge irgendwas machen"). Soll ich das alles auswendig lernen? Und die meisten der Skills kommen doch auch nicht über das Pfurzkissenstadium der ersten iOS-Apps hinaus.


    Ich sprach neulich in meinen Raum: „Alexa, mir ist kalt.“ Ich bekam diese Antwort: „Frag mich doch, ob ich dir eine warme Suppe bestellen kann.“ Das ließ ich mir nicht zweimal sagen und so fragte ich: „Alexa, kannst du mir eine warme Suppe bestellen?“ Und Alexa meinte: „Soll ich warme Suppe ins Stefans Amazon-Einkaufswagen legen?“ - „Ja!“ - Und daher habe ich jetzt „Thermobehälter Warmhaltebox "WunderJar" von 720°DGREE - 450ml | Premium Isolierbehälter Box für Warme Speisen, Babynahrung, Essen, Suppe“ in meinem Einkaufswagen. Da wird einem ja ganz heiß.


    Auf die Idee, die Heizung höherzustellen, kommt aber weder die eine noch die andere :D


    Gruß

    Tja, ich glaube, die eigentlichen Fragen lauten:


    a) wie sehr will man basteln?

    b) was hält der Rest der Wohngemeinschaft davon?


    Frage b) erübrigt sich für mich, da ich dem vollhedonistischen Single-Dasein fröne und ich es daher mit Würde ertragen kann, wenn ich wieder mal vollautomatisiert im Dunkeln sitze. Ich kenne keinen der Mitstreiter in diesem Forum persönlich, nehme aber an, dass sie mich manchmal heimlich beneiden, egal wie sehr sie ihre Ehefrauen oder Partnerinnen lieben 8o


    Frage a) ergibt sich aus der Überlegung, was man denn genau machen will. Um ehrlich zu sein: ich habe das nicht gewusst, als ich damals mein HUE Starterset gekauft habe. Ich habe nicht mal gewusst, was ich denn alles machen könnte. Ich hatte keinen blassen Schimmer.


    Auch wenn ich zugeben muss, dass ich immer noch nicht genau weiß, was ich auf einmal gegen Lichtschalter hatte, habe ich mich zumindest meinem kindlichen Spieltrieb völlig ergeben. Heimautomation macht schon einen Haufen Spaß.


    Trotzdem: ich setze vor allem auf Apple HomeKit und auf Homekit-fähige Geräte. Egal, was ich bislang dafür gekauft habe, funktioniert erstklassig. Nur wenn es gar nicht anders geht, kaufe ich ich Zeugs, das nicht HomeKit-fähig ist. Ich bin zwar völlig unzufrieden mit der Home-App von Apple, so dass ich noch eine Vielzahl anderer Apps benutze, aber ich versuche die Anzahl möglichst gering zu halten. Und da ich auf HomeKit setze, setze ich auch auf Homebridge.


    Womit wir zum Basteln kommen. Meine Homebridge läuft rund. Sie ist noch nie abgestürzt - gut, ich setze sie jetzt auch erst sechs Monate lang ein. Und wenn man anfängt zu basteln, muss man sich zwangsläufig damit auseinandersetzen und auf diese Art und Weise hab ich viel über den ganzen Schnickschnack gelernt.


    Ich kann HSV-Steph nicht recht geben mit der Aussage

    Zitat von HSV-Steph

    Was nicht geht ist halt Alexa

    Gut, geht bei ihm halt nicht, er hat wohl keine. Bei mir geht das bestens, seitdem ich erstmal den Bogen raushatte. Alexa ruft über Umwege die HomeKit-Szenen auf.


    Das meiste hab ich hier im Forum gelernt, vielen Dank nochmal an alle hier.


    Stefan