Skip to content

Visualisierung

Hilfe zu Visualisierungen

9.3k Themen 103.1k Beiträge

NEWS

  • VIS Text Widget zum blinken bringen

    5
    0 Stimmen
    5 Beiträge
    481 Aufrufe
    M
    @ro75 Danke, hat geklappt !
  • Heizkurve visualisieren

    5
    1
    0 Stimmen
    5 Beiträge
    2k Aufrufe
    HomeWolfH
    @loemic hast du es hinbekommen? Hätte da auch Interesse dran, wie hast du es gemacht?
  • Widget mit LongPress/LongClick in VIS 2

    2
    1
    0 Stimmen
    2 Beiträge
    166 Aufrufe
    mickymM
    Ich habe das mal mit dem vis 1 Taster Widget umgesetzt und NodeRed. hqwidget.mp4 Dein Taster muss nur beim Drücken true und beim Loslassen false liefern. Dazwischen steckt ein trigger und Du bestimmst anhand der Signale, ob es als Longpress oder Shortpress erkannt wird. Hiermal der NodeRed Flow von damals: Spoiler [ { "id": "9485df68.fd8ba", "type": "tab", "label": "Tutorial vis Taster", "disabled": false, "info": "" }, { "id": "b0c81813.4154f8", "type": "ioBroker in", "z": "9485df68.fd8ba", "d": true, "name": "taster", "attrname": "", "topic": "0_userdata.0.dimmer.taster", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "false", "x": 130, "y": 100, "wires": [ [ "16e2170a.87ef89" ] ] }, { "id": "dc014311.a8d3f", "type": "debug", "z": "9485df68.fd8ba", "name": "Taste gedrückt", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 600, "y": 60, "wires": [] }, { "id": "16e2170a.87ef89", "type": "trigger", "z": "9485df68.fd8ba", "name": "", "op1": "true", "op2": "", "op1type": "bool", "op2type": "payl", "duration": "-250", "extend": true, "overrideDelay": false, "units": "ms", "reset": "false", "bytopic": "all", "topic": "topic", "outputs": 1, "x": 370, "y": 100, "wires": [ [ "dc014311.a8d3f", "a123b62d.af5fa8" ] ] }, { "id": "9982d6c4.29e058", "type": "switch", "z": "9485df68.fd8ba", "name": "", "property": "payload", "propertyType": "msg", "rules": [ { "t": "false" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 310, "y": 220, "wires": [ [ "d38eb95d.854638", "a123b62d.af5fa8" ] ] }, { "id": "d38eb95d.854638", "type": "debug", "z": "9485df68.fd8ba", "name": "Taste losgelassen", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 490, "y": 280, "wires": [] }, { "id": "a123b62d.af5fa8", "type": "function", "z": "9485df68.fd8ba", "name": "", "func": "var count = context.get('count') || 0;\nvar longpress = context.get('longpress') || false;\nif (msg.payload){\n count += 1;\n context.set('count',count);\n if (count > 5) { // Wert erhöhen wenn Longpress zu früh erkannt wird\n longpress = true;\n context.set('longpress',longpress);\n return [null,msg];\n }\n} else {\n msg.payload=true;\n count = 0;\n context.set('count',count); \n if (!longpress) return [msg,null];\n longpress = false;\n context.set('longpress',longpress);\n}\n", "outputs": 2, "timeout": "", "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 590, "y": 180, "wires": [ [ "65393650.6cfcd8", "1dbf19e0.f8af96" ], [ "faaddc42.671cf", "c5e2ef2d.6e447" ] ], "outputLabels": [ "shortpress", "longpress" ] }, { "id": "65393650.6cfcd8", "type": "debug", "z": "9485df68.fd8ba", "name": "shortpress", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 810, "y": 100, "wires": [] }, { "id": "faaddc42.671cf", "type": "debug", "z": "9485df68.fd8ba", "name": "longpress", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 800, "y": 340, "wires": [] }, { "id": "a9311da5.e0c66", "type": "ioBroker in", "z": "9485df68.fd8ba", "d": true, "name": "status", "attrname": "", "topic": "mqtt.1.shellies.shellydimmer.light.0.status", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "false", "x": 130, "y": 520, "wires": [ [ "15d1fa89.761575" ] ] }, { "id": "35413631.c8570a", "type": "debug", "z": "9485df68.fd8ba", "name": "status", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 430, "y": 460, "wires": [] }, { "id": "15d1fa89.761575", "type": "json", "z": "9485df68.fd8ba", "name": "", "property": "payload", "action": "", "pretty": false, "x": 270, "y": 520, "wires": [ [ "35413631.c8570a", "eeebcf13.9b2fd", "af96a9a1.7e48c8" ] ] }, { "id": "eeebcf13.9b2fd", "type": "change", "z": "9485df68.fd8ba", "name": "setze flow Variablen", "rules": [ { "t": "set", "p": "ison", "pt": "flow", "to": "payload.ison", "tot": "msg" }, { "t": "set", "p": "brightness", "pt": "flow", "to": "payload.brightness", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 480, "y": 520, "wires": [ [] ] }, { "id": "1dbf19e0.f8af96", "type": "change", "z": "9485df68.fd8ba", "name": "switch (toggle)", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "ison", "tot": "flow" }, { "t": "set", "p": "payload", "pt": "msg", "to": "$not(payload)\t", "tot": "jsonata" }, { "t": "set", "p": "ison", "pt": "flow", "to": "payload", "tot": "msg" }, { "t": "set", "p": "down", "pt": "flow", "to": "payload", "tot": "msg" }, { "t": "change", "p": "payload", "pt": "msg", "from": "true", "fromt": "bool", "to": "on", "tot": "str" }, { "t": "change", "p": "payload", "pt": "msg", "from": "false", "fromt": "bool", "to": "off", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 800, "y": 140, "wires": [ [ "f48be0e6.d432f", "c4574d9a.44f53", "f2909e1e.20a93" ] ] }, { "id": "f48be0e6.d432f", "type": "debug", "z": "9485df68.fd8ba", "name": "command", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 1040, "y": 200, "wires": [] }, { "id": "c4574d9a.44f53", "type": "ioBroker out", "z": "9485df68.fd8ba", "d": true, "name": "command", "topic": "mqtt.1.shellies.shellydimmer.light.0.command", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1040, "y": 140, "wires": [] }, { "id": "f2909e1e.20a93", "type": "change", "z": "9485df68.fd8ba", "name": "", "rules": [ { "t": "change", "p": "payload", "pt": "msg", "from": "off", "fromt": "str", "to": "0", "tot": "num" }, { "t": "change", "p": "payload", "pt": "msg", "from": "on", "fromt": "str", "to": "brightness", "tot": "flow" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1050, "y": 80, "wires": [ [ "6d903925.3ff818" ] ] }, { "id": "6d903925.3ff818", "type": "ioBroker out", "z": "9485df68.fd8ba", "d": true, "name": "brightness", "topic": "0_userdata.0.dimmer.brightness", "ack": "true", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1240, "y": 80, "wires": [] }, { "id": "88d6e66a.ddb258", "type": "inject", "z": "9485df68.fd8ba", "name": "", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": true, "onceDelay": 0.1, "topic": "", "payload": "false", "payloadType": "bool", "x": 110, "y": 720, "wires": [ [ "e9fb15f5.98b588" ] ] }, { "id": "e9fb15f5.98b588", "type": "change", "z": "9485df68.fd8ba", "name": "", "rules": [ { "t": "set", "p": "down", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 290, "y": 720, "wires": [ [] ] }, { "id": "c5e2ef2d.6e447", "type": "switch", "z": "9485df68.fd8ba", "name": "", "property": "payload", "propertyType": "msg", "rules": [ { "t": "istype", "v": "boolean", "vt": "boolean" }, { "t": "istype", "v": "number", "vt": "number" } ], "checkall": "true", "repair": false, "outputs": 2, "x": 810, "y": 300, "wires": [ [ "ca4f99bd.cfa6f8" ], [ "ff1bde73.7c88" ] ] }, { "id": "ca4f99bd.cfa6f8", "type": "change", "z": "9485df68.fd8ba", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "brightness", "tot": "flow" }, { "t": "change", "p": "payload", "pt": "msg", "from": "100", "fromt": "num", "to": "98", "tot": "num" }, { "t": "change", "p": "payload", "pt": "msg", "from": "0", "fromt": "num", "to": "2", "tot": "num" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1020, "y": 240, "wires": [ [ "c5e2ef2d.6e447" ] ] }, { "id": "ff1bde73.7c88", "type": "switch", "z": "9485df68.fd8ba", "name": "brightness zwischen 2 und 98", "property": "payload", "propertyType": "msg", "rules": [ { "t": "btwn", "v": "2", "vt": "num", "v2": "98", "v2t": "num" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 1050, "y": 320, "wires": [ [ "4f962993.612978" ] ] }, { "id": "4f962993.612978", "type": "switch", "z": "9485df68.fd8ba", "name": "", "property": "down", "propertyType": "flow", "rules": [ { "t": "true" }, { "t": "false" } ], "checkall": "true", "repair": false, "outputs": 2, "x": 1270, "y": 320, "wires": [ [ "ece0bc1e.1d06c" ], [ "a0118b8f.a7ca18" ] ] }, { "id": "ece0bc1e.1d06c", "type": "change", "z": "9485df68.fd8ba", "name": "Verringere Brightness um 2", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "payload - 2", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1510, "y": 280, "wires": [ [ "71a8a0f2.c1756" ] ] }, { "id": "a0118b8f.a7ca18", "type": "change", "z": "9485df68.fd8ba", "name": "Erhöhe Brightness um 2", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "payload + 2", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1500, "y": 340, "wires": [ [ "71a8a0f2.c1756" ] ] }, { "id": "71a8a0f2.c1756", "type": "switch", "z": "9485df68.fd8ba", "name": "", "property": "payload", "propertyType": "msg", "rules": [ { "t": "gt", "v": "98", "vt": "num" }, { "t": "lt", "v": "2", "vt": "str" }, { "t": "else" } ], "checkall": "true", "repair": false, "outputs": 3, "x": 1740, "y": 300, "wires": [ [ "879502b2.7de07" ], [ "f57bd65b.705688" ], [ "58308d21.de8e84" ] ] }, { "id": "879502b2.7de07", "type": "change", "z": "9485df68.fd8ba", "name": "= 100", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "100", "tot": "num" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1900, "y": 260, "wires": [ [ "58308d21.de8e84" ] ] }, { "id": "f57bd65b.705688", "type": "change", "z": "9485df68.fd8ba", "name": "= 0", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "0", "tot": "num" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1900, "y": 300, "wires": [ [ "58308d21.de8e84" ] ] }, { "id": "58308d21.de8e84", "type": "change", "z": "9485df68.fd8ba", "name": "Update flow.brightness", "rules": [ { "t": "set", "p": "brightness", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 2120, "y": 340, "wires": [ [ "33d29b3d.a84344", "fb67d520.bc8208" ] ] }, { "id": "33d29b3d.a84344", "type": "rbe", "z": "9485df68.fd8ba", "name": "", "func": "rbe", "gap": "", "start": "", "inout": "out", "septopics": true, "property": "payload", "topi": "topic", "x": 2330, "y": 340, "wires": [ [ "8ef3400d.e495", "d66fdb59.ee3d88" ] ] }, { "id": "fb67d520.bc8208", "type": "trigger", "z": "9485df68.fd8ba", "name": "", "op1": "", "op2": "true", "op1type": "nul", "op2type": "bool", "duration": "1", "extend": true, "overrideDelay": false, "units": "s", "reset": "", "bytopic": "all", "topic": "topic", "outputs": 1, "x": 2350, "y": 420, "wires": [ [ "1110ff6a.6c0661" ] ] }, { "id": "1110ff6a.6c0661", "type": "change", "z": "9485df68.fd8ba", "name": "", "rules": [ { "t": "set", "p": "down", "pt": "flow", "to": "$not($flowContext('down'))\t", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 2550, "y": 420, "wires": [ [] ] }, { "id": "8ef3400d.e495", "type": "ioBroker out", "z": "9485df68.fd8ba", "d": true, "name": "brightness", "topic": "0_userdata.0.dimmer.brightness", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 2510, "y": 340, "wires": [] }, { "id": "b2d86076.b0a04", "type": "change", "z": "9485df68.fd8ba", "name": "", "rules": [ { "t": "move", "p": "payload", "pt": "msg", "to": "brightness", "tot": "msg" }, { "t": "set", "p": "payload", "pt": "msg", "to": "{\"brightness\":70,\"turn\":\"on\"}", "tot": "json" }, { "t": "move", "p": "brightness", "pt": "msg", "to": "payload.brightness", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 2680, "y": 280, "wires": [ [ "3fe9eb1.ff60414" ] ] }, { "id": "d66fdb59.ee3d88", "type": "switch", "z": "9485df68.fd8ba", "name": "", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "0", "vt": "num" }, { "t": "gt", "v": "0", "vt": "num" } ], "checkall": "true", "repair": false, "outputs": 2, "x": 2490, "y": 260, "wires": [ [ "b3cabeb1.02f96" ], [ "b2d86076.b0a04" ] ] }, { "id": "b3cabeb1.02f96", "type": "change", "z": "9485df68.fd8ba", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "{\"brightness\":0,\"turn\":\"off\"}", "tot": "json" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 2690, "y": 240, "wires": [ [ "3fe9eb1.ff60414" ] ] }, { "id": "3fe9eb1.ff60414", "type": "json", "z": "9485df68.fd8ba", "name": "", "property": "payload", "action": "", "pretty": false, "x": 2890, "y": 260, "wires": [ [ "583ee091.d82b2" ] ] }, { "id": "583ee091.d82b2", "type": "ioBroker out", "z": "9485df68.fd8ba", "d": true, "name": "", "topic": "mqtt.1.shellies.light.0.set", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 3110, "y": 260, "wires": [] }, { "id": "98936af7.b84158", "type": "ioBroker in", "z": "9485df68.fd8ba", "d": true, "name": "taster", "attrname": "", "topic": "0_userdata.0.dimmer.taster", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "false", "x": 130, "y": 220, "wires": [ [ "9982d6c4.29e058" ] ] }, { "id": "af96a9a1.7e48c8", "type": "change", "z": "9485df68.fd8ba", "name": "", "rules": [ { "t": "move", "p": "payload", "pt": "msg", "to": "status", "tot": "msg" }, { "t": "change", "p": "status.ison", "pt": "msg", "from": "false", "fromt": "bool", "to": "0", "tot": "num" }, { "t": "change", "p": "status.ison", "pt": "msg", "from": "true", "fromt": "bool", "to": "status.brightness", "tot": "msg" }, { "t": "set", "p": "payload", "pt": "msg", "to": "status.ison", "tot": "msg" }, { "t": "delete", "p": "status", "pt": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 460, "y": 580, "wires": [ [ "c281079b.e9e728" ] ] }, { "id": "c281079b.e9e728", "type": "ioBroker out", "z": "9485df68.fd8ba", "d": true, "name": "brightness", "topic": "0_userdata.0.dimmer.brightness", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 670, "y": 580, "wires": [] }, { "id": "b9b257e.70ef5a8", "type": "ui_template", "z": "9485df68.fd8ba", "group": "57f13d6f733e5c9d", "name": "momentary", "order": 17, "width": 3, "height": 1, "format": "<style>\n.nr-dashboard-template {\n padding: 0px;\n}\n</style>\n<div class=\"momentary_1\">\n <md-button style=\"width:100%; height:48px; margin: 0px; background-color: var(--nr-dashboard-widgetBackgroundColor); padding-top: 10px;\" ><i class=\"fa fa-lightbulb-o fa-2x\"> </i></md-button>\n</div>\n\n<script>\n\n(function($scope) {\n\n$('.momentary_1').on('touchstart mousedown', function(e) {\n // e.preventDefault(); //prevent default behavior\n $scope.send({\"payload\": true});\n});\n\n$('.momentary_1').on('touchend mouseup', function(e) {\n // e.preventDefault(); //prevent default behavior\n $scope.send({\"payload\": false});\n});\n \n})(scope);\n</script>", "storeOutMessages": false, "fwdInMessages": true, "resendOnRefresh": false, "templateScope": "local", "className": "", "x": 130, "y": 160, "wires": [ [ "16e2170a.87ef89", "9982d6c4.29e058" ] ] }, { "id": "bd9be677d25dbd6b", "type": "inject", "z": "9485df68.fd8ba", "name": "Test", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "{\"ison\":false,\"brightness\":0}", "payloadType": "json", "x": 230, "y": 460, "wires": [ [ "eeebcf13.9b2fd" ] ] }, { "id": "57f13d6f733e5c9d", "type": "ui_group", "name": "Test", "tab": "20b3095113f94d70", "order": 1, "disp": true, "width": "6", "collapse": false, "className": "" }, { "id": "20b3095113f94d70", "type": "ui_tab", "name": "Home", "icon": "dashboard", "order": 2, "disabled": false, "hidden": false } ] Ich weiß nicht, ob es diese Dimmer widgets auch in Vis 2 gibt. Jedenfalls konnte man diesen als Taster konfigurieren: [image: 1728159469200-3f02b6bf-009b-4e04-9afe-0f24fdd69882-image-resized.png] Herzstück des Flows war einfach, dass bei true ein trigger losläuft, der alle 250 ms ein Signal schickt. [image: 1728159672668-c5bdd521-be80-475e-b3ca-fd90085b8b81-image-resized.png] Die function Node hat dann einfach die Anzahl der 250 ms Signale gezählt und hat dann unter dieser Anzahl ein shortpress an den oberen Ausgang gegeben und longpress an den unteren Ausgang. [image: 1728159776041-3fcdc220-19eb-4c45-bf52-bfdc735795a1-image.png] [image: 1728159829268-c9b12a76-18ee-4afc-9ebd-f21fcac59103-image.png] Der Code in der function Node: var count = context.get('count') || 0; var longpress = context.get('longpress') || false; if (msg.payload){ count += 1; context.set('count',count); if (count > 5) { // Wert erhöhen wenn Longpress zu früh erkannt wird longpress = true; context.set('longpress',longpress); return [null,msg]; } } else { msg.payload=true; count = 0; context.set('count',count); if (!longpress) return [msg,null]; longpress = false; context.set('longpress',longpress); } Longpress wurde also erst bei 6 Signalen oder 1,5 Sekunden erkannt.
  • [geloest] Gembird, Energenie Lan-Steckdosen

    Verschoben
    24
    0 Stimmen
    24 Beiträge
    6k Aufrufe
    Basti97B
    @mickyboys Denkst du da man das Script auch direkt per iobroker auslösen kann. Ich weiß der Beitrag ist schon alt aber vielleicht hast du es ja in der zwischen Zeit laufen?
  • [gelöst] Backitup - Widgets fehlen

    5
    0 Stimmen
    5 Beiträge
    342 Aufrufe
    Meister MopperM
    @arteck sagte in Backitup - Widgets fehlen: @meister-mopper mach wie du willst danach den iob fix... und es sollte gut sein du musst aber zuerst einen iobroker installieren dann kannst du den mit deiner installation überklatschen... dann iob fix @arteck vielen, vielen, Dank, mal wieder! Habe es erst mit einem Kopieren des /opt/iobroker Verzeichnisses mit winscp versucht und bekam nach iob start und fix ein thomas@iobroker:~$ iob fix -bash: /usr/bin/iob: Keine Berechtigung Also mit sudo rm -r /opt/iobroker und sudo systemctl disable iobroker.service den ioBroker rausgekickt. Reboot und mit dem Oneliner ioBroker instaliert. Dann habe ich /opt/iobroker zunächst in /tmp kopiert, weil /opt nicht möglich war. Von dort habe ich /tmp/iobroker in /opt kopiert und den Fixer ausgeführt. Nach einem reboot lebt mein ioBroker jetzt fehlerfrei auf einer VM.
  • CCU2 Web-IF in VIS anzeigen?

    1
    1
    0 Stimmen
    1 Beiträge
    147 Aufrufe
    Niemand hat geantwortet
  • eCharts: falsche Datumsreferenz?

    7
    1
    0 Stimmen
    7 Beiträge
    540 Aufrufe
    sigi234S
    @arne-dieckmann sagte in eCharts: falsche Datumsreferenz?: Gibt es dafür auch noch einen Trick? Leider nein, ist keine Lösung sondern ein Workaround https://github.com/ioBroker/ioBroker.echarts/issues/279 https://github.com/ioBroker/ioBroker.echarts/issues/475#issuecomment-1884413208
  • [HowTo] Skripte im VIS Editor mit jQuery

    4
    3
    2 Stimmen
    4 Beiträge
    2k Aufrufe
    A
    @scrounger sagte in [HowTo] Skripte im VIS Editor mit jQuery: State abrufen (Wert eines Datenpunktes): function getState(id, callback) { vis.conn._socket.emit('getState', id, function (err, obj) { if (!err && obj) { callback(obj) } else { callback(undefined) } }); } Wenn ich das richtig verstanden habe, ist das die Definition der Funktion. Die Nutzung / der Aufruf erfolgt dann via var Test_Variable; Test_Variable = getState('0_userdata.0.Test_Datenpunkt', xxx); ? Da ich (noch) nicht genug Wissen über callback-Funktionen habe, bin ich derzeit am Grübeln, was ich in diesem speziellen Fall für den Parameter "callback" einsetzen muß, und wo es vielleicht etwas gibt, um das nachzulesen/sich anzueignen. Bei allen Versuchen, die ich bisher für "xxx" unternommen habe, sah es so aus, als ob in Test_Variable nichts geschrieben wird, weil in Test_Datenpunkt immer (null) geschrieben wurde. Fehlermeldung im Konsolen-Log: Uncaught TypeError: callback is not a function Hättest Du einen Hinweis für mich?
  • setState aus VIS-Script

    vis
    12
    0 Stimmen
    12 Beiträge
    1k Aufrufe
    A
    @oliverio Danke für die Warnung!:face_with_head_bandage:
  • Widget nur sichtbar von wenn von einem bestimmten Gerät

    9
    0 Stimmen
    9 Beiträge
    546 Aufrufe
    Dr. BakteriusD
    @wobbix sagte in Widget nur sichtbar von wenn von einem bestimmten Gerät: Leider zeigt der Fully meine Vis nicht wie gewollt an. Der Datenpunkt wird erst bei einer Abfrage aktualisiert. Also muss man den Seitenaufbau wiederholen damit es funktioniert.
  • VIS-2 Responsive Widgets gruppieren

    1
    0 Stimmen
    1 Beiträge
    164 Aufrufe
    Niemand hat geantwortet
  • [Gelöst] Vis im Kiosk Modus erster Start schneller aktuali

    18
    1
    0 Stimmen
    18 Beiträge
    1k Aufrufe
    R
    @bananajoe ich habe das jetzt so belassen, nur die Position der Schrift über und unter das Logo verschoben. Passt auch soweit, alles weitere wird sich dann zeigen, wenn das dann richtig in Betrieb geht, aber aktuell ist Baustop, da mir die Spannungsversorung noch im Wohnwagen fehlt, aber die Hardware schon verbaut ist. LG Daniel
  • VIS 2 / Kostenfreie Lizenz bei Pro Account

    5
    0 Stimmen
    5 Beiträge
    466 Aufrufe
    apollon77A
    @roesch-fe Ja einfach auf dem .net server nochmal anmelden. Ist aktuell so
  • HTML Tabelle für Shelly Device Übersicht

    261
    3
    3 Stimmen
    261 Beiträge
    43k Aufrufe
    da_WoodyD
    @liv-in-sky darum schrieb ich auch großteils grundsätzlich klappts in iQontrol, die ansicht tuts. hab ja lange damit gefummelt. inzwischen gibts halt in iQ auch listengeschichten...
  • Lade-Entladevorgang über justgage visualisieren

    2
    7
    0 Stimmen
    2 Beiträge
    192 Aufrufe
    P
    Liebe Mitstreiter, die Ursache ist, dass bei negativen Werten die Anzeige "unten" beginnt. Ein Wert von -6000 wird also so dargestellt: [image: 1727971514774-screenshot-2024-10-03-180158.png] Formal ist das richtig, benötigt wird aber der Teil von -6000 bis 0 Der Haken bei "Invertieren" bewirkt nun, dass die "Länge" des Bogens richtig dargestellt wird: [image: 1727971658747-screenshot-2024-10-03-180357.png] Da in meiner Grafik keine Werte angezeigt werden sollen, würde alles nach Spiegelung und Drehung, wie oben gezeigt, passen. Dummerweise wird nach Aktualisierung der Messwerte beim Aufbau der Grafik die Invertierung nicht mehr berücksichtigt. Um das Problem zu umgehen, werde ich also die negativen Werte in einem eigenen Objekt in positive Werte umwandeln und diese dann verwenden...
  • Jarvis: mehrere Instanzen mit getrenntem Inhalt möglich?

    12
    0 Stimmen
    12 Beiträge
    862 Aufrufe
    H
    Danke für den Thread. Bin über das gleiche Thema gestolpert und hab mich nun gefreut, dass es nicht an mir liegt :-) Warte nun auch gespannt auf das Update.
  • Bei Türruf bestimme View anzeigen lassen.

    49
    0 Stimmen
    49 Beiträge
    5k Aufrufe
    H
    @codierknecht danke für den Tipp. Habe es mit dem Views Namen versucht, leider ohne Erfolg. Der gleiche Nenner aller Displays ist die selben Image auf den (4 Stück) Raspberry`s. Auf dem PC funkt es ja wie ich heute drauf gekommen bin. Das Tablet muss ich erst probieren, da der Akku erst laden muss. Ich werde mal ein neues Image für den PI machen und neu einrichten - mal schauen was raus kommt. LG
  • VIS-2: Datepicker widget führt zu weißem Bildschirm

    1
    0 Stimmen
    1 Beiträge
    65 Aufrufe
    Niemand hat geantwortet
  • Material Widgets-Istwert mit Diagramm: Y-Achse Werte zu hoch

    5
    2
    0 Stimmen
    5 Beiträge
    436 Aufrufe
    S
    @sigi234 Hallo, genau das war es :) In der Expertenansicht: [image: 1727795149699-objekt01.png] Geändert auf : -10 und 50 [image: 1727795205726-objekt02.png] Ergebnis: [image: 1727795296278-objekt03.png] Ob Homatic das immer so default mäßig einstellt ?! Ich gehe dann mal alle Datenpunkte durch. Vielen Dank Speedy
  • bestimmter Bildausschnitt HTLM/IFRAME

    14
    2
    0 Stimmen
    14 Beiträge
    868 Aufrufe
    J
    @amg_666 ok, danke trotzdem

844

Online

32.4k

Benutzer

81.5k

Themen

1.3m

Beiträge