Hallo,
ich baue mir mittels Node-RED ein Dashboard auf. Zur Steuerung von Zeitplänen habe ich mir den ui scheduler installiert. Damit kann man ganz gut Zeitpläne unter Einbeziehung der Wochentage erstellen.
Soweit so gut. Jedoch werden die Daten nur in den RAM geschrieben, sodass nach einem Neustart die Daten gelöscht sind. Man könnte zwar den context storage auf einen USB Stick speichern, aber das möchte ich erstmal nicht machen. Stattdessen speichere ich mir alle wesentlichen Daten in Homematic Variablen.
DIes sollte auch mit dem ui scheduler funktionieren, denn der Node gibt bei jeder Änderung des Zeitplanes einen JSON String aus, welchen man nach einem Reboot einlesen kann und der Zeitplan ist wieder aktiv. Diesen String möchte ich in eine Homematic Variable schreiben. Jedoch wird der String nicht übergeben.
Was ist bei dem String das Problem? Testweise habe ich den String händisch über die WebUI der CCU eingegeben und er wurde akzeptiert. Im Node-RED konnte ich die Variable auslesen und den Zeitplan im Scheduler reaktivieren. Es scheitert derzeit nur an der Übergabe des JSON String in die Homematic Variable.
JSON String in Homematic Variable schreiben
Moderator: Co-Administratoren
-
- Beiträge: 49
- Registriert: 09.04.2019, 12:46
- Danksagung erhalten: 12 Mal
Re: JSON String in Homematic Variable schreiben
Moin
Gerade mal ausprobiert, das ist auch kein String den man einfach mal in eine Systemvariable speichern kann.
Was geht ist die JSON-Ausgabe mittels base64 umzuwandeln und in eine Systemvariable zu speichern. Zurück geht das ganze dann über base64 in String
Andreas
Gerade mal ausprobiert, das ist auch kein String den man einfach mal in eine Systemvariable speichern kann.
Was geht ist die JSON-Ausgabe mittels base64 umzuwandeln und in eine Systemvariable zu speichern. Zurück geht das ganze dann über base64 in String
Andreas
Re: JSON String in Homematic Variable schreiben
Danke für den Lösungsvorschlag.
Ich dachte, es sei ein String. Ich habe den ui scheduler mit einem Debug Node verknüpft und da wurde mir angezeigt, dass es ein String sei.
Was genau ist denn base64?
Ich dachte, es sei ein String. Ich habe den ui scheduler mit einem Debug Node verknüpft und da wurde mir angezeigt, dass es ein String sei.
Was genau ist denn base64?
-
- Beiträge: 49
- Registriert: 09.04.2019, 12:46
- Danksagung erhalten: 12 Mal
Re: JSON String in Homematic Variable schreiben
Moin
Ich Zitiere mal aus Wikipedia
Andreas
Ich Zitiere mal aus Wikipedia
Damit verschwinden alle Problemzeichen wie z.B. geschweifte Klammern etc.Base64 ist ein Verfahren zur Kodierung von 8-Bit-Binärdaten (z. B. ausführbare Programme, ZIP-Dateien oder Bilder) in eine Zeichenfolge, die nur aus lesbaren, Codepage-unabhängigen ASCII-Zeichen besteht.
Andreas