Hallo zusammen,
ich habe den neuen Broadlink-Service entwickelt, um mit Ihren Geräten über Infrarot zu interagieren.
Ich verrate noch nicht alles auf einmal, denn ich möchte, dass die Community es erst einmal „blind“ testen kann und mir Feedback gibt, ob es intuitiv genug ist oder ob die Nachrichten klar genug sind.
In der Zwischenzeit sind die unterstützten Geräte die Broadlink-Geräte der Serien SP / MP / RM.
Sie finden das Docker-Image hier: atrovato/gladys:broadlink (frisch von heute Morgen, basierend auf Version 3.8.4)
Es sollte keine Risiken mit der Datenbank geben, aber ich empfehle trotzdem, ein Backup zu machen oder mit einer neuen Instanz zu beginnen.
Um den Service nicht zu überlasten, können nur einige Geräte verwaltet werden (Lichter und TV sind dabei). Die anderen kommen nach und nach, je nach Bedarf und Anfragen.
Hallo, erste Tests und erstes Feedback:
Schon die Oberfläche zum Erstellen einer Fernbedienung ist super, die Verknüpfung zwischen Funktion und Signalaufnahme ist wirklich intuitiv!
Ich bestätige, keine Probleme, das Beste zum Testen ist, seine Gladys-Instanz zu stoppen, eine Kopie der Datenbank zu erstellen und mit dem neuen Image neu zu starten.
Ich habe das an einem Fernseher getestet, keine Probleme bei der Verknüpfung, aber ich habe nur das Klassische getestet, Ein-/Ausschalten, Lautstärke +/- und Stummschaltung. Leider scheint es ein Problem mit der Stummschaltung zu geben, die nach der Signalaufnahme nicht gespeichert werden kann, die anderen beiden Funktionen funktionieren jedoch problemlos
Allerdings wird es im Dashboard meiner Meinung nach eine Fernbedienungsbox geben müssen, die Anzeige als Gerät in einem Raum ermöglicht keine feine Steuerung der Lautstärke zum Beispiel, ich habe es nur geschafft, mit diesem Slider um 1 zu verringern oder zum alten Level zurückzukehren:
Ansonsten unglaubliche Arbeit am Design der Parameter
EDIT: Nach der Verknüpfung des Stummschaltknopfes generiert der Speichern-Knopf keinen Fehler in den Gladys-Logs oder im Browser, aber der Test-Knopf generiert diese beiden Fehler:
2022-04-06T20:39:54+0200 <error> index.js:15 (process.<anonymous>) unhandledRejection catched: Promise {
<rejected> TypeError [ERR_INVALID_ARG_TYPE]: The first argument must be of type string or an instance of Buffer, ArrayBuffer, or Array or an Array-like Object. Received undefined
at new NodeError (internal/errors.js:322:7)
at Function.from (buffer.js:334:9)
at BroadlinkHandler.send (/src/server/services/broadlink/lib/learn/broadlink.send.js:24:31)
at send (/src/server/services/broadlink/api/broadlink.controller.js:39:28)
at Layer.handle [as handle_request] (/src/server/node_modules/express/lib/router/layer.js:95:5)
at next (/src/server/node_modules/express/lib/router/route.js:137:13)
at /src/server/api/middlewares/authMiddleware.js:28:7 {
code: 'ERR_INVALID_ARG_TYPE'
}
}
2022-04-06T20:39:54+0200 <error> index.js:16 (process.<anonymous>) TypeError [ERR_INVALID_ARG_TYPE]: The first argument must be of type string or an instance of Buffer, ArrayBuffer, or Array or an Array-like Object. Received undefined
at new NodeError (internal/errors.js:322:7)
at Function.from (buffer.js:334:9)
at BroadlinkHandler.send (/src/server/services/broadlink/lib/learn/broadlink.send.js:24:31)
at send (/src/server/services/broadlink/api/broadlink.controller.js:39:28)
at Layer.handle [as handle_request] (/src/server/node_modules/express/lib/router/layer.js:95:5)
at next (/src/server/node_modules/express/lib/router/route.js:137:13)
at /src/server/api/middlewares/authMiddleware.js:28:7 {
code: 'ERR_INVALID_ARG_TYPE'
}
}
Danke für das erste Feedback, ich beschäftige mich schon sehr lange mit dem Thema, das nichts mit der ersten Version zu tun hat, die ich vor einigen Jahren als Testbild bereitgestellt habe.
Ich freue mich, dass die Bedienung einfach ist, ich habe mir sehr viel Mühe gegeben, den „Lernmodus“ einzurichten.
Für das Dashboard werden wir eine Arbeit außerhalb des Broadlink-Dienstes durchführen, um nichts zu vermischen (es muss auch die Kompatibilität mit Google Home hinzugefügt werden ).
Ich glaube, ich habe den Bug beim Stummschaltknopf behoben.
Zur Info: Das betrifft alle Knöpfe, die nur einen einzigen Wert haben (Quelle, Stummschaltung, links, rechts, Abspielen, Pause…)
Eine neue Version des Docker-Images wird gerade erstellt, es dauert etwa 2 Stunden, bis sie verfügbar ist.
Ich glaube, das wird auf dem Mac nicht funktionieren. Docker für Mac startet eine Linux-VM in deinem Mac, die isoliert ist und keinen Zugriff auf das Netzwerk des Macs hat, sondern auf ein separates Netzwerk.
Um das Netzwerk scannen zu dürfen, muss der Container auf einer Linux-Maschine mit network=host gestartet werden! (der gleiche docker run wie auf der Gladys-Website)
Vielleicht ist es möglich, dies in einer Linux-VM auf dem Mac zu tun, aber das erfordert die richtige Netzwerkkonfiguration in der VM. Ich denke, es ist einfacher, den Container einfach auf einem Linux zu starten
Ich habe das gleiche Problem mit WSL… das Netzwerk ist nicht dasselbe… aber unter Linux (Raspberry) oder Windows habe ich das Problem nicht festgestellt.
RE PING !
Ich war gerade da, gibt es andere Rückmeldungen? @Albenss abgesehen vom Bug, den du erwähnt hast (den ich normalerweise behoben habe), konntest du es weiterverwenden?
Also, ich habe es gerade noch einmal getestet (nach einem Pull des Bildes atrovato/gladys:broadlink), aber ich habe immer noch ein Problem mit den einfachen Schaltflächen (z. B. Mute, Volume +, Volume -) in der Browserkonsole, wie z. B.:
RemoteCreation.jsx:104 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'min')
at RemoteCreation.jsx:104:31
at Array.forEach (<anonymous>)
at Object.saveDevice [as clickfalse] (RemoteCreation.jsx:78:33)
at HTMLButtonElement.w (props.js:153:20)
Ansonsten scheinen die anderen Aktionen funktionell zu sein! (Ich konnte nicht alles testen, aber abgesehen von diesem Problem habe ich nichts anderes bemerkt).
Übrigens, sollte die Ein-/Ausschalt-Taste nicht eine einfache Schaltfläche sein?
Also war der erste Test heute Abend, indem ich einfach ein Pull des bestehenden (also aktualisierten) Bildes durchgeführt habe, das den oben genannten Fehlercode hatte.
Das Neue ist nach dem Testen der Löschung und dem Herunterladen eines neuen Bildes und immer noch das gleiche Problem.
Nach dem Erfassen des Signals für die Funktion „Stumm“, versuche ich zu speichern und erhalte die gleiche Fehlermeldung in der Konsole:
RemoteCreation.jsx:104 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'min')
at RemoteCreation.jsx:104:31
at Array.forEach (<anonymous>)
at Object.saveDevice [as clickfalse] (RemoteCreation.jsx:78:33)
at HTMLButtonElement.w (props.js:153:20)