Status Systemvariable aktualisieren

Moderator: seppy

Antworten
kopfnuss
Beiträge: 10
Registriert: 27. Dez 2023 00:16
Answers: 0

Status Systemvariable aktualisieren

Beitrag von kopfnuss »

Hallo,
ich versuche seit längerm einige SV´s von HM in OH4 einzubinden, teilweise klappt es aber teilweise erhalte ich nur NULL.
Ich habe folgende SV in HM angelegt mit aktuellem Status:
HM_SV_Test.jpg
In OH4 kommt aber nur das an:
Screenshot 2024-08-30 at 10-25-44 openHAB.png
Auch ein Refresh über ein script ändert daran nichts:

Code: Alles auswählen

SV_Test.sendCommand(REFRESH)
Screenshot 2024-08-30 at 10-27-51 openHAB.png
Hat irgendeiner eine Idee?

VG Rudi
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
openHAB4.1.0 im Debian-Docker-Container (bookworm)

rbeudel
Beiträge: 237
Registriert: 6. Jun 2019 11:25
Answers: 1

Re: Status Systemvariable aktualisieren

Beitrag von rbeudel »

Hallo,
erst mal ist das Intervall von 1 Sekunde viel zu kurz. Wenn der Script funktionite, würde Deine CCU die Flügel strecken. :roll:
Versuch mal eine andere SV als eine Werteliste anzusprechen. Hier ist mein Beispiel für eine Temperatur in blockly. Ein Variablenrefresh erneuert alle Variablen.

Code: Alles auswählen

configuration: {}
triggers:
  - id: "1"
    configuration:
      cronExpression: 0 0/5 * * * ? *
    type: timer.GenericCronTrigger
conditions: []
actions:
  - inputs: {}
    id: "2"
    configuration:
      blockSource: <xml xmlns="https://developers.google.com/blockly/xml"><block
        type="oh_event" id="zd)yJbc*+n;5DJ:jPmc$" x="80" y="82"><field
        name="eventType">sendCommand</field><value name="value"><shadow
        type="text" id="E@@SscqSB5jy{`(3.Gxt"><field
        name="TEXT">value</field></shadow><block type="text"
        id="E@@SscqSB5jy{`(3.Gxt"><field
        name="TEXT">REFRESH</field></block></value><value
        name="itemName"><shadow type="oh_item"
        id="f=BRcK-77?h#d-E?1p2s"><mutation itemName="MyItem"
        itemLabel="MyItem"></mutation><field
        name="itemName">MyItem</field></shadow><block type="oh_item"
        id="f=BRcK-77?h#d-E?1p2s"><mutation itemName="GATEWAYEXTRAS_As_Temp"
        itemLabel="As Temp"></mutation><field
        name="itemName">GATEWAYEXTRAS_As_Temp</field></block></value></block></xml>
      type: application/javascript
      script: |
        items.getItem('GATEWAYEXTRAS_As_Temp').sendCommand('REFRESH');
    type: script.ScriptAction
Viele Grüße,
Ralf


Debmatic und Openhab in Proxmox VM debian x86_64

Benutzeravatar
peter-pan
Beiträge: 2603
Registriert: 28. Nov 2018 12:03
Answers: 27
Wohnort: Schwäbisch Gmünd

Re: Status Systemvariable aktualisieren

Beitrag von peter-pan »

Ich weiss nicht genau was du letztendlich machen willst, aber hast du zu deinem Item (Systemvariablen) auch eine Kanalverknüpfung(Thing) vorgenommen?

Bei mir sieht das so aus:
.Items

Code: Alles auswählen

Number  GatewayExtras_1testzahl     "Test mit Systemvariablen + Follow-Profile"   <ccu3>     (gCCU3)   ["Point"]                    {channel="homematic:GATEWAY-EXTRAS-3014F711A0001F98A9AABCAF:3014F711A0001F98A9AABCAF:GWE00000000:1#test_Zahl" [profile="follow"], channel="mqtt:topic:danny:espv3_02:temp"}
Dabei wird dieser Systemvariablen automatisch über das Follow-Profil der Wert eines anderen Items (Channel-Verknüpfung) in meinem Falle die Zimmertemperatur weitergeleitet. Das passiert ganz ohne Script.

Du kannst das Ganze natürlich auch mit einer Regel machen, aber wie Ralf schon geschrieben hat, nicht im Sekunden-Takt, sondern mit einem realen Wert (z.B.:Temperatur)

Eine .rule-Datei könnte so aussehen:

Code: Alles auswählen

rule "Test Systemvariable"
 when 
   Item Dummy_4 changed to ON // Testschalter
   //   Item Socket_Fritz_02_Temp changed
 then 
   GatewayExtras_1testzahl.sendCommand((Socket_Fritz_02_Temp.state as Number).floatValue)
   logInfo("homematic","Gateway Testzahl")
end
Das sieht dann so aus:
testzhl.jpg
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.2.1 openhabian

Antworten