NEWS
Test Adapter device-reminder V 3.x
-
@xenon Wie gesagt, nach einem händischen Neustart des Adapters läuft es!
Mit Startmeldung, Endmeldung und auch mit Endmeldung bei Abbruch
Danke für die schnelle Reaktion und Fehlerbeseitigung!
Ich hoffe dass es bei den anderen auch läuft! -
@guergen Wenn du ein Update von github machst, muss man glaube ich auch neustarten. Bin mir da aber jetzt nicht sicher
-
@xenon Macht er doch egtl von alleine, aber egal.
Zuverlässig kommt die Meldung aber leider nicht immer; weder Alexa, noch TG; keine Ahnung ob es an meinem System liegt oder woran. Kann morgen gerne noch ein paar mal den DR debuggen.
Vielleicht geht es ja bei anderen zuverlässig... -
Version 3.1.1 auf npm behebt den Bug
-
Guten Morgen,
kurze Frage am Rande, da auf GIT nicht beschrieben, was ist eine Benachrichtigung via MATRIX?BtW: Bei mir waren alle Objekte nach irgend einem Update einfach gelöscht und der Adapter hat auch keine Meldungen via Alexa mehr ausgegeben. Habe jetzt die GIT Version installiert und unter den Instanz Einstellungen (da war alles noch vorhanden) alle eingetragenen Geräte einmal auf "prüfen" gestellt und dann neu gespeichert.
Danach waren dann auch wieder alle Objekte vorhanden. Ich musste "nur "noch alle Verknüpfungen zu InfluxDB wieder herstellen.
Meiner Meinung nach einer der größten Pferdefüße von ioB, das nach einem löschen und neu anlegen von Objekten bereits bestehenden Kopplungen zu so Sachen wie InfluxDB, Sourceanalytix usw. nicht wieder automatisch hergestellt werden wenn auch der Datenpunkt wieder da.
-
@jb_sullivan said in Test Adapter device-reminder V 3.x:
Meiner Meinung nach einer der größten Pferdefüße von ioB, das nach einem löschen und neu anlegen von Objekten bereits bestehenden Kopplungen zu so Sachen wie InfluxDB, Sourceanalytix usw. nicht wieder automatisch hergestellt werden wenn auch der Datenpunkt wieder da.
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.
Wenn ein Adapter zu oft States löscht bitte ein Issue beim Adapter aufmachen - das muss dort gelöst werden. Technisch gibt es ausreichend Funktionen mit denen States geändert werden können ohne diese zu löschen.
Da aus diesem Posting nicht hervorgeht wann die States gelöscht wurden kann ich zu Ursache und möglicher Vermeidung nicht mehr sagen. Ein allfälliges Löschen / Deinstallieren des Adapters löscht aber jedenfalls alle States und damit auch die zugehörigen User Settings.
-
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.