NEWS
Test Adapter bshb (Bosch Smart Home) v0.0.x
-
@katos
SSL 42 heißt das der Controller den handshake abgebrochen hat, weil der Adapter kein Clientzertifikat geschickt hat. Das ist Teil vom Pairing. Im normalen Modus erwartet der Controller immer ein Zertifikat. Nur wenn du den Bosch Controller in den Pairingmodus bringst öffnet sich dieser für kurze Zeit und erwartet kein Zertifikat. Erst dann kann der Adapter das generierte Zertifikat dem Controller übermitteln und das Pairing ist dann abgeschlossen. Ab diesem Zeitpunkt schickt der Adapter das Zertifikat für die normale Kommunikation mitKurz gesagt es klingt dannach als wäre der Controller nicht im Pairing modus. Du musst den Knopf so lange drücken bis der Controller anfängt zu blinken. Ca 3s.
-
Vielen Dank für die Erklärung.
Es hat super funktioniert. Ampel ist jetzt komplett grün, Verbindung klappt und die Warnhinweise sind auch verschwunden.
-
@katos
Super! Freut mich das es geht. -
Ich habe einen Bosch Backofen der mit der App "Home Connect" zuverlässig zusammenarbeitet.
Nun wollte ich das ganze über ioBroker steuern können und habe den Adapter BSHB installiert.
Ich habe keinen Controller von Bosch, sondern nur die App die den Backofen direkt steuert.
In der BSHB Instance habe ich meine Daten eingegeben und erhalte folgende Fehler:bshb.0 2021-10-22 14:53:05.036 warn Could not pair client. Did you press the paring button on Bosch Smart Home Controller? Error details: Error: connect ECONNREFUSED 192.168.198.24:8443 bshb.0 2021-10-22 14:53:05.025 info Start pairing. Activate pairing on Bosch Smart Home Controller by pressing button until flashing. bshb.0 2021-10-22 14:53:05.024 info Client with identifier: ioBroker.bshb_CBE1465FFAB0F9A3BBB2C22C0AA5F68DEFD257ED32E12080BE37B3A092A8475D was not paired yet. bshb.0 2021-10-22 14:53:05.012 info Check if client with identifier: ioBroker.bshb_CBE1465FFAB0F9A3BBB2C22C0AA5F68DEFD257ED32E12080BE37B3A092A8475D is already paired
Kann ich meinen Backofen irgendwie "Pairen" auch ohne einen Controller?
-
Du brauchst diesen Adapter:
https://github.com/iobroker-community-adapters/ioBroker.homeconnect
-
@sigi234 Ja, Danke das hat mich schon mal weiter gebracht. Die Instance ist grün, jedoch sind keine relevanten Objekte da s. Bild .
Im Setup der Instance habe ich unter "Activation Url" folgendes eingetragen weil ich weiss was da reingehört.https://developer.home-connect.com/applications
Hat jemand eine Idee?
Ich habe nun versucht die Generierung der Url abzuwarten nach Anleitung, da man keine eintragen muss:
Konfiguration In der Adapter-Config muss nur die ClientID eingetragen werden. Wenn der Adapter läuft, wird eine Authorization-URL generiert, diese wird in den Einstellungen nach dem Speichern der ClientID angezeigt. Einfach nach dem Speichern die Einstellungen neuöffnen
Ich finde die URL bei mir nicht. Ist das die Url in den Objekten: homeconnect.0.dev.authUriComplete?
https://api.home-connect.com/security/oauth/device_verify?user_code=Y7DL-5N92 -
@holomekc
Leider gelingt es mir nicht, bei meinen beiden Außenkameras den PrivacySate zu ändern. Ich habe folgendes Verhalten:- Der Adapter ist komplett grün. Nach dem Start werden die Zustände beider Kameras korrekt angezeigt.
- Wenn ich in der Bosch App den PrivacyState ändere, wird diese Änderung auch in ioBroker korrekt übernommen.
- Ein Änderung des States in ioBroker (ENABLE <-> DISABLE) bewirkt aber gar nichts.
- Der Zustand der Lampe wird initial richtig übernommen. Änderungen in der App werden aber in ioBroker nicht sichtbar.
Ich habe die API-Schnittstelle nach der Bosch-Anleitung nachvollzogen. Nun kann ich über Postman die Zustände korrekt vom Controller lesen und verändern. Über Postman kann ich also sowohl den PrivacyState als auch den Lampenzustand verändern. Die API schein somit zu funktionieren.
Leider klappt es in ioBroker nicht. Woran kann das liegen?
Bin für jeden Hinweis dankbar.ioBroker läuft auf einem RasPi4 mit 4 MB. Mit Postman habe ich unter Windows 10 gearbeitet. Um Probleme in der RasPi-Konfiguration auszuschließen habe ich auch testweise einen ioBroker unter Ubuntu auf einem Laptop aufgesetzt. Da habe ich das gleiche Verhalten wie auf dem RasPi. Keine Änderung des PrivacyStates möglich.
Liebe Grüße!
-
@jrbwh
Ich konnte es bei mir mit der Kamera für den internen Bereich erfolgreich testen. Was du probieren kannst ist:- Adapter einmal neu starten
- Adapter auf debug oder silly stellen und schauen was in den Logs steht. Auf silly werden alle HTTP Requests und Responses protokolliert.
- Auf den neuen updates state schauen, um zu sehen ob Nachrichten vom Controller ankommen, wenn du bspw. die Kamera über die App änderst
Wenn Änderungen nicht erkannt werden klingt es eigentlich nach json rpc Probleme. Sowas hatte zumindest bisher noch keiner gemeldet. Ist aber eigentlich auch nur HTTP mit LongPolling. Aber auch das wird auf silly geloggt.
Ich hoffe das bringt dich weiter. Ansonsten kannst du mir auch gerne die Logs zuschicken (private Informationen bitte vorher entfernen), dann kann ich wenn ich Zeit habe ein bissle schauen.
Viele Grüße
Christopher -
@holomekc
Hallo Christopher, vielen für die super schnelle Antwort. Ich komme erst jetzt dazu, mich wieder mit dem Thema zu beschäftigen. Ich habe zur Sicherheit ioBroker upgedatet und neu gestartet, den Adapter auf silly gestellt und neu gestartet.
Im Log sieht man, dass alle POST Kommandos fehlschlagen: "{"timeout":32000,"hostname":"192.168.xxx.xx","port":8444,"path":"/remote/json-rpc","method":"POST","rejectUnauthorized":true"
Hier ein Screenshot:
Ich habe in der App das Mobilgerät "iobroker" gelöscht und den Adapter komplett neu installiert und am Smart Home Controller neu angemeldet. Das hat nichts geändert. Gleiche Fehlermeldung bei POST.
Woran kann das liegen? Meine Experimente mit Postman habe ich in einen curl-Befehl überführt. Das funktioniert auf dem RasPi einwandfrei und ich kann POST-Kommandos korrekt absetzen.
Ich sollte vielleicht noch erwähnen, dass ich in ioBroker Node.js v14.18.1 verwende. Kann mir aber nicht vorstellen, dass es daran liegen soll.Danke und Gruß
Jürgen -
@jrbwh
Hi. Sicher das du den richtigen Screenshot hast?
Die response vom jsonrpc Endpunkt ist auf dem Bild immer mit 200 beantwortet worden und result ist []. Was eigentlich erst einmal nur heißt, dass bei dem long polling alle 30s nur zurückkommt, dass es keine Änderungen gibt. Vielleicht mal aktiv erwas ändern und schauen wie dann die Nachricht aussieht. Aber genauso sieht es bei mir auch aus.Viele Grüße
Christopher -
@holomekc
Hallo, ja, Screenshot passt, denke ich. Ich habe um 12:31:58 den Privacy Mode von Hand auf ENABLED geändert. Dann passiert nichts weiter bis um 12:32:13. Stimmt, Antwort 200 sieht gut aus. Habe die Meldungen ein paar Zeilen drunter falsch interpretiert.
Aber dann ist die Frage: Nachdem ich den Privacy Mode geändert habe, passiert nichts weiter - weder im Log noch im Controller (ich habe den Kamerazustand die ganze Zeit in der App beobachtet). Warum bewirkt die Zustandsänderung nichts?
Viele Grüße
Jürgen -
@jrbwh
Hmm normalerweise kommt sowas zurück:2021-12-04 17:51:53.353 - silly: bshb.0 (11995) content: - ["{\"result\":[{\"path\":\"/devices/hdm:Cameras:3fe2a262-3028-32c3-9d14-ecb2472f46f1/services/PrivacyMode\",\"@type\":\"DeviceServiceData\",\"id\":\"PrivacyMode\",\"state\":...
In ioBroker
Habe es über ioBroker selber, die SmartHome App, als auch über die Bosch Kamera App probiert. Hmm Ich weiß nicht. Eigentlich habe ich nichts extra dafür einstellen müssen. Ich sehe auch nicht wirklich Optionen die man einstellen könnte.
Jetzt mal so ganz wilde Theorie. Hast du den Fernzugriff an? Vielleicht liegt es daran?
-
@holomekc
Fernzugriff ist aus. Ich mache Zugriffe von außen grundsätzlich über VPN. Folgende Einstellungen sind in ioBroker sichtbar:
Wenn man das Verhalten "Zustandsänderung bewirkt keine Aktion" absichtlich herbeiführen wollte, wie würde das gehen? Ich bin echt ratlos.
-
Ich auch ein wenig. Wenn Fehler kommen dann kann man besser etwas nachvollziehen, als wenn nichts kommt. . Oben hattest du erwähnt das auch das Ändern der Privacy Option keine Auswirkung hat. Was loggt der Adapter hier? Sieht man dort vielleicht mehr?
Das oben mit Fernzugriff meinte ich: Einmal kurz aktivieren und noch einmal schauen. Ich glaube nicht das es das ist, aber sonst habe ich auch nichts anders eingestellt.
Ich wüsste auch nicht das man die Updates via jsonrpc abstellen könnte.
-
@holomekc
Ich habe den Fernzugriff eingeschaltet, das hat keine Änderung bewirkt.
Hier nochmal ein Screenshot. Änderung des Privacy Modes von Hand um 23:56:39 geändert. Das gibt eine Zeile im Log. Mehr passiert nicht. Erst 24 Sekunden später gibt es den nächsten Eintrag.
Habe inzwischen auch mal mit dem Hue LED-Band rumgespielt. Wenn ich in der App die Helligkeit ändere, wird das sofort in ioBroker angezeigt. Ein Änderung der Helligkeit in ioBroker bewirkt aber gar nichts.
Vielleicht müssen wir das jetzt mal ein wenig sacken lassen. Wenn Du weitere Ideen hast, sind die sehr willkommen. Ansonsten erstmal herzlichen Dank für Deine Hilfe.Liebe Grüße und schönen Sonntag!
Jürgen -
@jrbwh
Hi beim Setzen hast du das über ioBroker getan? Im Screenshot steht ack: true. Das passt nicht. Es muss ack: false sein, sonst wird es nicht als Command interpretiert. Der Adapter selber setzt nur ack: true als Bestätigung, dass eine Aktion erfolgreich war. Das passiert, wenn hinterher Nachrichten über jsonrpc entgegengenommen werden. -
@holomekc
Oh, das ist mir jetzt unangenehm. Ich habe zum Ausprobieren den Wert immer im Dialogfenster in ioBroker geändert und dabei - ohne groß nachzudenken - das Häkchen bei 'Bestätigt' gemacht. Habe nun das Häkchen weggelassen und - kaum macht man's richtig - funktioniert es einwandfrei!
Tut mir leid, dass ich Dich deshalb belatschert habe.
Nochmals herzlichen Dank für Deinen super Support! Schönen Sonntag!
Jürgen -
@jrbwh
Kein Problem . Mach dir keinen Kopf. Bin froh das es jetzt funktioniert. Noch ein schönes WochenendeViele Grüße
Christopher -
Hallo Zusammen,
ich habe heute 2 Twinguard in Betrieb genommen. Wenn der Raumalarm losgeht... wo sehe ich den Alarm? Bei meinem Rauchmelder gibt es den DP
....Alarm.value
.Viiiielen Dank im Voraus!
-
bshb.0.intrusionDetectionSystem.SurveillanceAlarm.value
müsste es sein.
Viele Grüße
Christopher