Closed peer69 closed 3 years ago
The same here.
Habe ich auch! netatmo.0 (6250) Object netatmo.0.Zuhause.Events.5e9f74fe549ba5311351ca49.time is invalid: obj.common.type has an invalid value (date) but has to be one of number, string, boolean, array, object, mixed, file, json netatmo.0 (6250) This object will not be created in future versions. Please report this to the developer.
Letzte Änderung auf Github vor 2 Jahren. Ob sich da noch was tut ist fraglich?
Na ja, ich bin kein Entwickler, aber so schwierig scheint das hier nicht zu sein. Problem ist ja das der Datentyp date nicht mehr geht (warum auch immer). Also mal eben schnell im Code gesucht (type: "date") - taucht in der netatmoWelcome.js genau 2 mal auf - Zeile 600 und Zeile 776. Dann hab ich mal untersucht, was die anderen Adapter so bei Datum/Zeitstempeln so nehmen (z.b. Backitup) - da wird immer string verwendet (auch wenn ich das nicht so ganz verstehe, weil der Zeitstempel eigentlich ne Zahl ist - Unix-Timestamp nur in Millisekunden). Ich war jetzt mal mutig und hab das in meinem iobroker in der netatmoWelcome.js geändert und ein neues Ereignis erzeugt (mal durch die Kamera gelaufen). Und siehe da, wie erwartet wird das Ereignis erzeugt und time ist vom typ string. Datum / Uhrzeit in der Objekte Ansicht sieht auch gut aus. Jetzt hab ich noch bei last_seen die Einträge von date auf string geändert, mal sehen was bei einem neuen Gesicht passiert. Da könnten nochmal Änderungen am Code notwendig sein. Mal sehen, was kann schon passieren?
@Nunmalfix Sorry für die vielleicht dumme Frage, aber wo finde ich den Adapter-Code? Dann würde ich es genauso fixen. Oder hast kam der Fehler wieder?
@Coffee-lover dumme Fragen gibts doch nicht. Also bei mir ist der Fehler weg und inzwischen sind bei allen events die time vom typ string. Also bei mir ist die Datei "netatmoWelcome.js" im Verzeichnis /opt/iobroker/node_modules/iobroker.netatmo - dort einfach mit einem Editor deiner Wahl (gut, wenn er Zeilennummern kann) öffnen und die Zeilen 600 und 776 ändern. Da steht sowas wie type: "date", und ich hab halt type: "string", daraus gemacht. Datei speichern, Netatmo Adapter neu starten und freuen ;-)
Hab leider auch etliche dieser Meldungen im Log.
Wird der Adapter aktualisiert?
Also die zwei Zeilen ändern ist wirklich nicht sooo schwer. Einfach mal probieren.
Ja, hat funktioniert.
Wäre trotzdem schön, wenn der Adapter noch weiter entwickelt werden würde. Wünsche mir z.B. eine Möglichkeit alle Personen als Abwesend zu setzen (so wie es eine Schaltfläche in der Netatmo-App gibt oder bei IFTTT).
Ja, hat funktioniert.
Wäre trotzdem schön, wenn der Adapter noch weiter entwickelt werden würde. Wünsche mir z.B. eine Möglichkeit alle Personen als Abwesend zu setzen (so wie es eine Schaltfläche in der Netatmo-App gibt oder bei IFTTT).
Das geht bereits. Die Funktion heißt setAway und ist auch schon in der Doku beschrieben. Nutze ich zusammen mit den Location Services in Homekit für die Familie. Mir fehlt da bisher nur die Möglichkeit, bestimmt Personen auch wieder mit einer Funktion auf Anwesend zu setzen. So muss man das leider manuell machen oder warten bis die Welcome ein Gesicht erkannt hat. So lange gibt es Meldungen.
Ich kenne mich leider nicht genug mit GitHub aus, aber mein Verständnis war immer, dass diese Platform dazu dient, dass ihre Repositories von beliebigen Entwicklern weiterentwickelt/upgedatet werden könnten. Leider weiß ich nicht, wie ich dazu vorgehen muss, aber bevor ich das lokal bei mir ändere, warum nicht gleich hier im Repository ändern und dann ein Update für alle machen?
Am Ende ist es recht simpel und es gibt mehrere Wege. Wenn Du lokal die änderungen machst kannst du hier einfach auch das File editieren und so eine Änderung die bei dir tut vorschlagen. oder du machst einen "Fork", checkst diesen bei DIr aus und commiteetst dann ... da musst Du dich aber ein bissl einlesen - gibt aber gute Anleitungen
@Coffee-lover dumme Fragen gibts doch nicht. Also bei mir ist der Fehler weg und inzwischen sind bei allen events die time vom typ string. Also bei mir ist die Datei "netatmoWelcome.js" im Verzeichnis /opt/iobroker/node_modules/iobroker.netatmo - dort einfach mit einem Editor deiner Wahl (gut, wenn er Zeilennummern kann) öffnen und die Zeilen 600 und 776 ändern. Da steht sowas wie type: "date", und ich hab halt type: "string", daraus gemacht. Datei speichern, Netatmo Adapter neu starten und freuen ;-)
Der Tipp funktioniert super!! Vielen Dank.
Ja, hat funktioniert. Wäre trotzdem schön, wenn der Adapter noch weiter entwickelt werden würde. Wünsche mir z.B. eine Möglichkeit alle Personen als Abwesend zu setzen (so wie es eine Schaltfläche in der Netatmo-App gibt oder bei IFTTT).
Das geht bereits. Die Funktion heißt setAway und ist auch schon in der Doku beschrieben. Nutze ich zusammen mit den Location Services in Homekit für die Familie.
Kannst du mir evtl. Hilfestellung geben, wie ich das per Blocky in iobroker mache (alle auf Abwesend setzen)?
Ich nutze Javascript und da sieht das so aus:
sendTo('netatmo.0', "setAway");
Das sollte sich mit dem SendTo Block von Blockly genau so machen lassen. Also einfach "setAway" an deine Netatmo Instanz senden.
Ja, das habe ich schon so versucht:
sieht im Code dann so aus:
{
sendTo("netatmo.0", "send", {
"parameter1": '"setAway"'
});
Ergibt aber einen Fehler:
Ich weiß nicht, wie ich den Block umbauen muss.
So auf den ersten Blick würde ich vermuten, dass setAway bei Befehl rein muss und du das ohne Parameter an den Adapter schickst.
exakt
Please test 1.3.4