Habe eine Seite für die Wärmepumpe zusammengeschustert…

Seitenaufbau sieht so aus
{"comment": " ---------------------- Page 05 - HEIZUNG -------------------------- "}
{"page": 5, "id": 4, "obj": "img", "src": "L:/bg30.png", "auto_size": 0, "w": 480}
{"comment": " --- Navi Buttons .---- "}
{"page": 5, "id": 5, "obj": "btn", "x": 5, "y": 42, "w": 150, "h": 48, "action": {"down": "page prev"}, "bg_opa": 30, "bg_color": "#FFFFFF", "border_side": 0, "text": "\uE04D", "text_color": "#FFFFFF", "text_font": 32, "radius": 10}
{"page": 5, "id": 6, "obj": "btn", "x": 165, "y": 42, "w": 150, "h": 48, "action": {"down": "page back"}, "bg_opa": 30, "bg_color": "#FFFFFF", "border_side": 0, "text": "\uE2DC", "text_color": "#FFFFFF", "text_font": 32, "radius": 10}
{"page": 5, "id": 7, "obj": "btn", "x": 325, "y": 42, "w": 150, "h": 48, "action": {"down": "page next"}, "bg_opa": 30, "bg_color": "#FFFFFF", "border_side": 0, "text": "\uE054", "text_color": "#FFFFFF", "text_font": 32, "radius": 10}
{"comment":" --- Wärmepumpe --------------- "}
{"page": 5, "id": 10, "obj": "img", "x": 10, "y": 110,"auto_size":0,"w": 200, "h": 200, "src": "L:/WP_Off.png"}
{"page": 5, "id": 21, "obj": "label", "x": 230, "y": 115, "w": 240, "h": 25, "align": "left", "text": "Vorlauf: 45°C", "text_color": "#FFFFFF", "text_font": 22}
{"page": 5, "id": 22, "obj": "label", "x": 230, "y": 155, "w": 240, "h": 25, "align": "left", "text": "Rücklauf: 30°C", "text_color": "#FFFFFF", "text_font": 22}
{"page": 5, "id": 23, "obj": "label", "x": 230, "y": 195, "w": 240, "h": 25, "align": "left", "text": "Rücklauf Soll: 35°C", "text_color": "#FFFFFF", "text_font": 22}
{"page": 5, "id": 24, "obj": "label", "x": 230, "y": 235, "w": 240, "h": 25, "align": "left", "text": "Warmwasser: 50°C", "text_color": "#FFFFFF", "text_font": 22}
{"page": 5, "id": 25, "obj": "label", "x": 230, "y": 275, "w": 240, "h": 25, "align": "left", "text": "COP-Faktor: 3.9", "text_color": "#FFFFFF", "text_font": 22}
{"comment":" --- Temperaturkorrektur --------------- "}
{"page": 5, "id": 30, "obj": "slider", "x": 10, "y": 320, "w": 360, "h": 35, "min": 30, "max": 65, "val": 50,"radius":20,"bg_opa10":25,"bg_color10":"#FFFFFF","bg_grad_color10":"#C0F0C0","border_side":0,"radius20":40,"bg_grad_dir20":0,"bg_color20":"#FFFFFF","pad_top":0,"pad_bottom":0,"pad_left":0,"pad_right":0,"bg_opa":70,"border_side10":0}
{"page": 5, "id": 31, "obj": "label", "x": 380, "y": 320, "w": 100, "h": 35, "align": "center", "text": "50°C", "text_color": "#FFFFFF", "text_font": 30}
{"page": 5, "id": 32, "obj": "label", "x": 10, "y": 360, "w": 360, "h": 25, "align": "center", "text": "Warmwasser-Soll", "text_color": "#FFFFFF", "text_font": 22}
{"page": 5, "id": 40, "obj": "slider", "x": 10, "y": 405, "w": 360, "h": 35, "min": -5, "max": 5, "val": 0, "radius":20,"bg_opa10":25,"bg_color10":"#FFFFFF","bg_grad_color10":"#C0F0C0","border_side":0,"radius20":40,"bg_grad_dir20":0,"bg_color20":"#FFFFFF","pad_top":0,"pad_bottom":0,"pad_left":0,"pad_right":0,"bg_opa":70,"border_side10":0}
{"page": 5, "id": 41, "obj": "label", "x": 380, "y": 405, "w": 100, "h": 35, "align": "center", "text": "0°C", "text_color": "#FFFFFF", "text_font": 30}
{"page": 5, "id": 42, "obj": "label", "x": 10, "y": 445, "w": 360, "h": 25, "align": "center", "text": "Temperatur-Korrektur", "text_color": "#FFFFFF", "text_font": 22}
Mit diesem Script werden die Bilder anhand der Integer-Statusvariable der Wärmepumpe gewechselt
<?php
// ID der Integervariable
$variableID = 16696; // Hier die richtige ID der Integervariable eintragen
// Aktuellen Wert der Integervariable auslesen
$status = GetValueInteger($variableID);
// Ziel-ID für WWXRD_SendJSONL
$targetID = 32211;
// JSON-Befehle basierend auf dem Status senden
switch ($status) {
case 0: // Heating
WWXRD_SendJSONL($targetID, [
'page' => 5,
'id' => 10,
'obj' => 'img',
'x' => 10,
'y' => 110,
'auto_size' => 0,
'w' => 200,
'h' => 200,
'src' => "L:/WP_Heating.png"
]);
break;
case 1: // HotWater
WWXRD_SendJSONL($targetID, [
'page' => 5,
'id' => 10,
'obj' => 'img',
'x' => 10,
'y' => 110,
'auto_size' => 0,
'w' => 200,
'h' => 200,
'src' => "L:/WP_HotWater.png"
]);
break;
case 5: // Off
WWXRD_SendJSONL($targetID, [
'page' => 5,
'id' => 10,
'obj' => 'img',
'x' => 10,
'y' => 110,
'auto_size' => 0,
'w' => 200,
'h' => 200,
'src' => "L:/WP_Off.png"
]);
break;
case 7: // Cooling
WWXRD_SendJSONL($targetID, [
'page' => 5,
'id' => 10,
'obj' => 'img',
'x' => 10,
'y' => 110,
'auto_size' => 0,
'w' => 200,
'h' => 200,
'src' => "L:/WP_Cooling.png"
]);
break;
default: // Falls kein gültiger Wert
echo "Unbekannter Status: $status";
break;
}
Und hier die Bilder, die dazu per FTP auf Display geladen werden müssen, um sie später mit dem Script abzurufen.
WP.zip (177,3 KB)
@pitti gerne zur Integration, natürlich auch in modifizierter Form, in deinen publizierten Seitenaufbau.