NEWS
Geräte für die es keinen eigenen Adapter gibt über ioBroker steuern - hier z.B. Cololight
-
Hallo zusammen,
meinen ioBroker habe ich mir nun erfolgreich mit den nötigen Adaptern eingerichtet und auch erfolgreich meine ersten Schaltungen mit Blockly umgesetzt....
Nun habe ich aber noch Geräte, für die es keinen eigenen Adapter gibt - diese würde ich auch gerne über ioBroker ansteuern.
Ein Beispiel:
LifeSmart Cololight (Lichtpanels) - diese werden über eine App eingerichtet, laufen über WLAN und sind auch mit Alexa steuerbar...
Da diese Panels auch über Alexa laufen, dachte ich mir ich könnte das über den Alexa 2.0 Adapter machen...
Die Panels tauchen zwar unter den Smart Geräten auf, jedoch ändern sich die States nicht...
Wenn ich die Panels im ioBroker unter den Objekten aufrufe, im Alexa 2.0 Adapter beobachte und währendessen über den Alexa Sprachbefehl die Panels anschalte - ändert sich im Adapter kein Status...Gibt es eventuell andere Adapter, über die man solche Geräte in ioBroker integrieren kann?
-
unter dieser seite zeigt jemand, wie er cololoight mit fhem steuert :
https://haus-automatisierung.com/projekt/2019/04/05/projekt-cololight-fhem.htmldas müße man auch für iobrocker umsetzen können
-
du kannst ja mal testen:
öffne ein terminal (linux) und kopiere diesen befehl - dieser sendet "ein" an cololight - du musst die ip-adresse und evtl. den port noch einrichten --> zu ändern: nc -u "deine ip" "dein port" (ich nehme an, der port wird bei dir auch 8900 sein
einschalten:echo -n -e "\x53\x5a\x30\x30\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x01\x03\x01\xcf\x35" | nc -u 192.168.0.72 8900
ausschalten:
echo -n -e "\x53\x5a\x30\x30\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x01\x03\x01\xce\x1e" | nc -u 192.168.0.72 8900
funktioniert das, kann man ganz einfach in einem blockly den exec befehl nutzen.
oder später ein richtiges javascript schreiben
-
danke dir, das hört sich schonmal gut an.
nc -u "deine ip" - bezieht sich das auf die IP vom Cololight? -
ja
-
@liv-in-sky said in Geräte für die es keinen eigenen Adapter gibt über ioBroker steuern - hier z.B. Cololight:
funktioniert das, kann man ganz einfach in einem blockly den exec befehl nutzen.
oder später ein richtiges javascript schreibenHey @liv-in-sky
Ich konnte das ganze erst jetzt gerade mal testen... also das klappt schonmal sehr gut mit den AN und AUS Befehlen
Welcher Baustein wäre das denn genau in Blockly? Wo ich den Befehl dann eingeben kann?Edit:
Ich nehme an dieser und der Befehlstext muss dann in "text" ?
-
ja dieser ist es - du mußt nur den befehl bei "text" hineinkopieren - das mußte funktionieren - macht dann das selbe wie im terminal
falls du das feedback des befehls auch noch sehen willst, häkchen bei "mit ergebnissen" und eine neue variable result erzeugen - diese variable kannst du dann z.b über das debug blockly ausgeben
hier mal ein beispiel:
-
Ich habe mir jetzt auch eine cololight besorgt. Wenn ich den AN Befehl
echo -n -e "\x53\x5a\x30\x30\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x01\x03\x01\xcf\x35" | nc -u 192.168.178.36 8900
in putty in die Konsole eingebe dann geht die cololight tatsächlich an.
Mache ich das gleiche in blockly mit exec geht es leider nicht. Hat es einer von euch mit blockly zum laufen bekommen?
Würde mich riesig freuen wenn ich die cololight in meinen iobroker integrieren könnte grundsätzlich scheint es ja zu funktionieren...
-
Kannst du mir bitte mal kurz zeigen wie der exec mit debug ausehen muss? Was fehlt bei mir noch?
-
@saeft_2003 sagte in Geräte für die es keinen eigenen Adapter gibt über ioBroker steuern - hier z.B. Cololight:
Mache ich das gleiche in blockly mit exec geht es leider nicht.
Hast du in der Javascript-Instanz das exec freigegeben?
-
Ja ich habe mehrere verschiedene exec Blöcke im Einsatz die funktionieren...
Kann es ein Rechte Problem sein?
-
@saeft_2003 sagte in Geräte für die es keinen eigenen Adapter gibt über ioBroker steuern - hier z.B. Cololight:
Kann es ein Rechte Problem sein?
Was sagt denn das log beim Auslösen?
ggf. die Instanz auf debug setzen!Was nimmst du als Trigger?
-
Beim test hab ich keinen trigger genommen. Weil normal wird doch jeder block ohne trigger beim speichern ausgeführt. So kenne ich es zumindest...
Wegen dem log kann ich gerade nicht schauen muss ich heute Abend in ruhe machen. Melde mich dann nochmal.
-
@saeft_2003 sagte in Geräte für die es keinen eigenen Adapter gibt über ioBroker steuern - hier z.B. Cololight:
Weil normal wird doch jeder block ohne trigger beim speichern ausgeführt. So kenne ich es zumindest...
Beim Scriptstart - zum testen aber ok
-
Die JavaScript Instanz hat soweit ich weiß nur iobroker Rechte? Kann es damit was zu tun haben? Weil ich hatte schonmal das Problem das wegen fehlender Rechte ein exec Block nichts in einen Ordner schreiben durfte.
Kann man die Rechte einer Instanz ändern?
-
@saeft_2003 sagte in Geräte für die es keinen eigenen Adapter gibt über ioBroker steuern - hier z.B. Cololight:
nur iobroker Rechte
Und der hat die nötigen Rechte
-
@saeft_2003 sagte in Geräte für die es keinen eigenen Adapter gibt über ioBroker steuern - hier z.B. Cololight:
Kannst du mir bitte mal kurz zeigen wie der exec mit debug ausehen muss? Was fehlt bei mir noch?
einfach eine variable erzeugen die result heißt
-
@saeft_2003 es könnte sein, das der nc befehl nach der pipe ein reche problem hat - dann müßten wir ihn wohl in die datei /etc/sudoers.d/iobroker einpflegen
was sagt den das log mit dem debug blockly ?
-
@Homoran sagte in Geräte für die es keinen eigenen Adapter gibt über ioBroker steuern - hier z.B. Cololight:
@saeft_2003 sagte in Geräte für die es keinen eigenen Adapter gibt über ioBroker steuern - hier z.B. Cololight:
Kann es ein Rechte Problem sein?
Was sagt denn das log beim Auslösen?
ggf. die Instanz auf debug setzen! -
Der log sagt irgendwie gar nichts nur dass das Skript gestartet wurde. Mache ich irgendwas falsch?