NEWS
Test Adapter device-reminder V 3.x
-
Aktuell ist es tatsächlich so, dass Datenpunkte entfernt werden, wenn das device nicht mehr in der gui existiert. Das ist in vielen Adaptern so gang und gäbe.
Ich werde zwei Änderungen einbringen, die das in Zukunft verhindern.
-
Sollte die Konfig im admin nicht richtig geladen werden (warum auch immer), werde ich den Fehler catchen und eine Fehlermeldung anzeigen lassen
-
Das automatische Löschen werde ich erstmal deaktivieren und entweder einen Button in die GUI einbauen, welcher die Leichen löscht oder ich lasse die Objekte da, diese müssen dann händisch entfernt werden
-
-
@xenon said in Test Adapter device-reminder V 3.x:
Aktuell ist es tatsächlich so, dass Datenpunkte entfernt werden, wenn das device nicht mehr in der gui existiert. Das ist in vielen Adaptern so gang und gäbe.
Ich werde zwei Änderungen einbringen, die das in Zukunft verhindern.
-
Sollte die Konfig im admin nicht richtig geladen werden (warum auch immer), werde ich den Fehler catchen und eine Fehlermeldung anzeigen lassen
-
Das automatische Löschen werde ich erstmal deaktivieren und entweder einen Button in die GUI einbauen, welcher die Leichen löscht oder ich lasse die Objekte da, diese müssen dann händisch entfernt werden
An sich ist es VÖLLIG in Ordnung dass States entfernt werden wenn Geräte entfernt werden. Persönlich seh ich da keinen Handlungsbedarf. Andernfalls besteht die Gefahr dass das System mit State-Zombies unnötig aufgebläht und verlangsamt wird.
Aber ob das Bereinigen nun automatisch erfolgt oder via "Cleanup Button" ist ein Feinheit die natürlich der Maintainer entscheiden kann. Die Luxusvariante könnte z.B. im Log beim Start darauf hinweisen dass es löschbereite States gibt und eine Bereinigung via Button anregen oder abfragen wann der State zuletzt beschrieben wurde und erst nach einigen Wochen löschen .... :-). Will aber hier nicht Arbeit schaffen. Und die Grundursache war ja ein Fehler der die Config verschwinden ließ - also alles andere als ein normaler Betriebszustand und nur in einer Test / Beta Software - das soll man auch nicht vergessen
Suboptimal empfinde ich den Ansatz mancher Adapter nur dem User zu empfehlen States manuell zu löschen. Das ist eine Aktion die ein 'Standard-User' nicht manuell machen sollte - ist zumindest meine Ansicht.
Jedenfalls DANKE @xenon dass du der Gemeinschaft diesen Adapter zur Verfügung stellst, aktiv wartest und deine Zeit dafpr spendest.
-
-
@mcm57 Danke dir. Vor der nächsten größeren Code Änderung spreche ich euch an und gehe es einmal durch. Ein Adapter mit 5,5k installs darf solche Fehler nicht haben, meine Meinung dazu.
Ich selber bin Programmierer für Industrie Roboter und Anlagen, JS ist Hobby. Ich gehe natürlich immer von der letzten stable aus, Was da aber noch an Versionen im Umlauf ist, weiß ich ja nicht. Daher denke ich wahrscheinlich nicht immer weit genug und dann kommt es zu solchen Fehlern.
Wie es dieses Mal gelaufen ist tut mir wirklich Leid und ich werde in Zukunft noch besser aufpassen...
Schönen Sonntag an alle
-
Vielleicht habt ihr ja ein Idee für mich.
Ich bekomme es nicht hin, dass der device.reminder etwas über alexa.2 sagt.Wenn ich auf Test klicke kommt im Log vom iobroker folgendes:
[messageHandler - error] <TypeError: Cannot read properties of undefined (reading 'val')>Zeigen tute ich auf
alexa2.0.Echo-Devices.G2A1B505149502QU.Commands.speakInstalliert habe ich alexa.2 auch die aktuellste Version von github.
Zur Info.
Telegram funktioniert -
@cooper19888 sagte in Test Adapter device-reminder V 3.x:
Vielleicht habt ihr ja ein Idee für mich.
Ich bekomme es nicht hin, dass der device.reminder etwas über alexa.2 sagt.Wenn ich auf Test klicke kommt im Log vom iobroker folgendes:
[messageHandler - error] <TypeError: Cannot read properties of undefined (reading 'val')>Zeigen tute ich auf
alexa2.0.Echo-Devices.G2A1B505149502QU.Commands.speakInstalliert habe ich alexa.2 auch die aktuellste Version von github.
Zur Info.
Telegram funktioniertVersion 3.1.1?
Das wird dann ein Bug sein, der aber zumindest abgefangen wurde. So funktioniert dann alexa nicht aber der restliche Adapter. Falls du bei github bist mach bitte ein Bug issue auf, ich schaue es mir nachher an
-
@mcm57 sagte in Test Adapter device-reminder V 3.x:
Diese Verküpfungen werden als Attribute des States gespeichert. Wenn nun ein State gelöscht wird, dann werden diese Informationen natürlich auch gelöscht. Aus diesem Grunde sollten States nur dann gelöscht werden, wenn der Adapter deinstalliert wird aber natürlich NICHT bei einem upgrade / downgrade etc.
Hat jetzt nichts mit diesem Adapter speziell zu tun, aber vielleicht sollte man in ioB mal drüber nachdenken, sowas wieder automatisch herstellen zu lassen. Es wird ganz ganz häufig, quer über alle Adapter hinweg, bei Problemen empfohlen, die Objekte zu löschen und durch einen Instanz Neustart wieder neu erzeugen zu lassen.
Das mag sogar für viele Probleme funktionieren, wenn man dann aber bei solchen Adaptern über InfluxDB große grafische Auswertungen in Grafana betreibt, sind alle diese Attribut Verknüpfungen nach der Neuanlage weg, obwohl der DP evtl. sogar genau den gleichen DP Namen bekommen hat.
Aus meiner Sicht wäre es hier wünschenswert, wenn wiederhergestellte DP`s mit gleichen Namen, woher auch immer, ihre Attribut Verknüpfungen automatisch wieder hergestellt bekommen würde.
Aber genug O.T. an dieser Stelle.
-
Für den Fall das es oben überlesen wurde - kurze Frage am Rande, da auf GIT nicht beschrieben, was ist eine Benachrichtigung via MATRIX?
BtW: Bei mir funktioniert auch mit der 3.1.1 die Alexa Test Ausgabe nicht.
device-reminder.1 7508 2024-01-21 11:40:47.160 error [messageHandler - error] <TypeError: Cannot read properties of undefined (reading 'val')>
-
@xenon , Mahlzeit, der Geschirrspüler wurde gerade angeschaltet. Es gab nur eine Meldung via Telegram. Alexa blieb ruhig.
Normal hätte dort der Geschirrspüler drinnen stehen müssen.
Version 3.1.1
Auch eine Testnachricht via Alexa geht nicht.
-
@xenon said in Test Adapter device-reminder V 3.x:
@cooper19888 sagte in Test Adapter device-reminder V 3.x:
Vielleicht habt ihr ja ein Idee für mich.
Ich bekomme es nicht hin, dass der device.reminder etwas über alexa.2 sagt.Wenn ich auf Test klicke kommt im Log vom iobroker folgendes:
[messageHandler - error] <TypeError: Cannot read properties of undefined (reading 'val')>Zeigen tute ich auf
alexa2.0.Echo-Devices.G2A1B505149502QU.Commands.speakInstalliert habe ich alexa.2 auch die aktuellste Version von github.
Zur Info.
Telegram funktioniertVersion 3.1.1?
Das wird dann ein Bug sein, der aber zumindest abgefangen wurde. So funktioniert dann alexa nicht aber der restliche Adapter. Falls du bei github bist mach bitte ein Bug issue auf, ich schaue es mir nachher an
Ja korrekt. Die letzte Version die es aktuell auf github gibt und ist bei mir 3.1.1.
Ich mache ein Issue auf.
https://github.com/Xenon-s/ioBroker.device-reminder/issues/381 -
@xenon said in Test Adapter device-reminder V 3.x:
Ein Adapter mit 5,5k installs darf solche Fehler nicht haben, meine Meinung dazu.
Wie es dieses Mal gelaufen ist tut mir wirklich Leid und ich werde in Zukunft noch besser aufpassen...
Schön dass du das so siehst.
ABER bitte stress dich nicht zu sehr. Du hast die Release sicher gestestet und da war alles in Ordnung, Und BETA / LATEST ist genau dafür gedacht Fehler zu finden die beim eigenen Test nicht aufpoppen. Dass es diesmal größere Auswirkungen hatte ist unangenehm - aber BETA / LATEST soll(t)en User nur auf Testsystemen und mit funktionierendem Backup installieren.
Ergo GANZ TOLL das du das nicht als "na was solls" siehst - aber es sehe keinen Grund dir irgendwas vorzuwerfen oder zu kritisieren.
mcm1957
-
Weitere Test´s mit meinem Gerät am Device-Reminder:
Habe ich keinen Starttext aber einen Endtext eingebeben (ich melde grade über Alaexa und TG) kommt weder über Alaexa, noch über TG eine Start- (so soll es ja auch sein) als auch keine End-Meldung.
Trage ich einen Starttext ein, bekomme ich über Alexa und über TG eine Startmeldung und auch eine Endmeldung.Kann das jemand bestätigen?
-
@mcm57 sagte in Test Adapter device-reminder V 3.x:
- aber BETA / LATEST soll(t)en User nur auf Testsystemen und mit funktionierendem Backup installieren.
Ich habe gar kein anderes System. Was soll denn hier noch laufen.....ich bin schon immer mit Beta unterwegs. Mache 2x am Tag, um 2Uhr und 14 Uhr ein Backup......ich finde das sollte schon bei beta Betrieb sein. Ich hatte noch nie Probleme und wenn geht es mit Restore zurück.
-
@jb_sullivan said in Test Adapter device-reminder V 3.x:
Es wird ganz ganz häufig, quer über alle Adapter hinweg, bei Problemen empfohlen, die Objekte zu löschen und durch einen Instanz Neustart wieder neu erzeugen zu lassen.
Ja, das kenne ich auch. Ist aber nicht wirklich eine tolle Empfehlung wegen der obigen Nebenwirkungen. Ich seh diese Empfehlung nur als allerletzte Notlösung. Ein guter Adapter könnte da via Code jedenfalls fast alles bereinigen - insbeondere falsche Typdefnitionen die ein häufoiger Grund für solche "Empfehlungen" sind. Ev. beim Adapter jeweils ein Issue erstellen dazu - ist meiner Ansicht nach ein Mangel im Adapter wenn so eine Empfehlung notwendig ist.
Das mag sogar für viele Probleme funktionieren, wenn man dann aber bei solchen Adaptern über InfluxDB große grafische Auswertungen in Grafana betreibt, sind alle diese Attribut Verknüpfungen nach der Neuanlage weg, obwohl der DP evtl. sogar genau den gleichen DP Namen bekommen hat.
Ja - nur der Name zählt hier nicht - die (interne) id ist jedenfalls neu.
Aus meiner Sicht wäre es hier wünschenswert, wenn wiederhergestellte DP`s mit gleichen Namen, woher auch immer, ihre Attribut Verknüpfungen automatisch wieder hergestellt bekommen würde.
Erstell ggF ein Feature Issue beim js-controller. Ich seh im Moment zwar keine Lösung für das Problem da ich nicht erkennen kann nach welchem Kriterium diese Information "vergessen" werden könnte. Und alle irgendwann mal gewesenen Zuweisungen von State x zu Adapter y auf "ewig" zu merken ist sicher keine Lösung. IoBroker kann nicht ahnen ob du z.B. einen Adapter löscht um ihn gleich wieder zu installieren oder nie mehr wieder ... Aber vielleicht gibts dazu ja Ideen. Den Benefit seh ich durchaus - allein eine praktikable Lösung derzeit nicht.
-
@esp8266 said in Test Adapter device-reminder V 3.x:
@mcm57 sagte in Test Adapter device-reminder V 3.x:
- aber BETA / LATEST soll(t)en User nur auf Testsystemen und mit funktionierendem Backup installieren.
Ich habe gar kein anderes System. Was soll denn hier noch laufen.....ich bin schon immer mit Beta unterwegs. Mache 2x am Tag, um 2Uhr und 14 Uhr ein Backup......ich finde das sollte schon bei beta Betrieb sein. Ich hatte noch nie Probleme und wenn geht es mit Restore zurück.
No risk no Fun
Wenn dir bewusst ist dass LATEST eben BETA Software ist und du weißt was du tust wird es dir niemand verbieten. Es kommt nicht ogt vor (DANK der sorgfältigen Entwicklung von 99,99% aller dev - aber Begta Software hat ein deutlich höheres Risiko für auch fatale Fehler. Wenn du da kein Problem hast mal schnell ein Backup einzuspielen - ok, ist ausschließlich deine Entscheidung.
Und DANKE dass du die BETA Software für andere auf Fehler testest.
-
@guergen @Xenon Ich habe mal ein Debug-Log erstellt:
Zuerst starte ich mit eingetragenem Starttext den Wasserkocher: TG- und Alexa- Meldungen kommen, danach mit ausgeschaltetem Starttext: keine Meldungen kommen (weder TG noch Alexa)
Device-Reminder.txt -
Mir wird hier auch kein freier Sonntag gegönnt
Spaß beiseite. Ich habe einen messageHandler in der neuen Version gebaut, der die Nachrichten verteilt. Es kann durchaus sein, dass der Fehler dadurch entsteht. Das gleiche gilt für den alexa Fehler.Mach bitte ein issue dazu auf, schaue ich mir dann mit der alexa Geschichte später zusammen an
-
@jb_sullivan sagte in Test Adapter device-reminder V 3.x:
Für den Fall das es oben überlesen wurde - kurze Frage am Rande, da auf GIT nicht beschrieben, was ist eine Benachrichtigung via MATRIX?
BtW: Bei mir funktioniert auch mit der 3.1.1 die Alexa Test Ausgabe nicht.
device-reminder.1 7508 2024-01-21 11:40:47.160 error [messageHandler - error] <TypeError: Cannot read properties of undefined (reading 'val')>
War ein enhancement issue, keine Ahnung was das ist
-
@xenon Du sollst den Sonntag genießen, will ja nur helfen
Mache dazu ein Issue auf und packe das log dann da rein!
Issue #382 -
mit der nächsten Version sollten die beiden Bugs weg sein
ich habe noch einen Button eingefügt, mit dem man das Anzeigen der Speicherbuttons erzwingen kann. Eigentlich blende ich diese nur ein, wenn der User seinen Inhalt geprüft hat. Allerdings scheint es immer mal wieder den Fall zu geben, dass die Buttons dann trotzdem nicht angezeigt werden
https://github.com/Xenon-s/ioBroker.device-reminder/issues/381
https://github.com/Xenon-s/ioBroker.device-reminder/issues/382Sollten weiterhin Probleme auftauchen oder andere Fragen sein, einfach melden
Schönen Tag
-
@xenon seltsamerweise war nach dem letzten Update in den Objekten der Trockner verschwunden. Waschmaschine noch vorhanden.
In den Einstellungen "verknüpfte Geräte" einmal Haken weg, wieder rein, speichern, waren die Objekte wieder da.