"undefined" Value beim erstellen von Blockly

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Norick
Beiträge: 252
Registriert: 31. Jan 2022 06:35
Answers: 0

"undefined" Value beim erstellen von Blockly

Beitrag von Norick »

ich möchte von einem Gerät dass ich per serieller Schnittstell angeschlossen habe den Wert auslesen. Das Gerät schickt die Daten welche ich schon einlesen kann. Nun habe ich dazu ein Blockly erstellt dass so aussieht:
Block.PNG

Der code zeigt mir dann dies:

Code: Alles auswählen

var WetterstationData, Aussentemperatur;

if (typeof this.storedValues === 'undefined') {
  this.storedValues = [];
}


WetterstationData = itemRegistry.getItem('Wetterstation_Dach_Datastream');
this.storedValues[Aussentemperatur] = (WetterstationData.slice(0, 6));
events.sendCommand(WetterstationData, WetterstationData);
print(Aussentemperatur);

Was heisst hier den "undefined"? Muss ich hier noch zusätzlich irgendwo eine Variable lokal speichern oder?


Danke
von udo1toni » 15. Apr 2023 12:18
.storedValues sind "Variablen" die über die Laufzeit einer Rule hinaus aufbewahrt werden. Das machst Du mit dem store value Block.
Bevor Du diesen nutzen kannst, muss er initialisiert werden. Das muss aber nur bei der ersten Nutzung der Rule passieren (nachdem openHAB gestartet wurde). Deshalb prüft Blockly zu BEginn der Rule automatisch, ob der Bereich bereits definiert ist. Ist das nicht der Fall, initialisiert es den Speicherbereich.
Gehe zur vollständigen Antwort
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: "undefined" Value beim erstellen von Blockly

Beitrag von udo1toni »

.storedValues sind "Variablen" die über die Laufzeit einer Rule hinaus aufbewahrt werden. Das machst Du mit dem store value Block.
Bevor Du diesen nutzen kannst, muss er initialisiert werden. Das muss aber nur bei der ersten Nutzung der Rule passieren (nachdem openHAB gestartet wurde). Deshalb prüft Blockly zu BEginn der Rule automatisch, ob der Bereich bereits definiert ist. Ist das nicht der Fall, initialisiert es den Speicherbereich.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Antworten