Hvordan opprette en virtuell bryter til å stille på en bool variabel?

Hvordan kan man lage en virtuell bryter, som man kan bruke til å sette verdi på en bool variabel (false-true), samt knytte den virtuelle bryteren til et rom.

Er ikke hjemme nå, men kan gi deg koden senere idag.

Men å koble den til et helt rom er ikke mulig, dessverre.

Takk, det vil jeg gjerne ha.

etter man har lagret den med navn og laget global variablen, klikk på register as device og den burde vises som en enhet.

{
  "Id": "nqTmk5ZwravXLrQ",
  "ClassId": "nPJPNdWg11nzMvQ",
  "Author": "espenh.no",
  "Version": 0,
  "CreatedAt": "2023-03-09T15:07:21.330142747+01:00",
  "UpdatedAt": "2023-03-09T15:08:14.45407559+01:00",
  "Name": "Low Cost Mode",
  "Group": "home controls",
  "Description": "Low Electricity Cost mode",
  "Nodes": [
    {
      "Id": "1",
      "Type": "trigger",
      "Label": "button",
      "SuccessTransition": "2",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "pt:j1/mt:cmd/rt:dev/rn:flow/ad:1/sv:out_bin_switch/ad:nqTmk5ZwravXLrQ_0",
      "Service": "out_bin_switch",
      "ServiceInterface": "cmd.binary.set",
      "Config": {
        "InputVariableType": "",
        "IsValueFilterEnabled": false,
        "LookupServiceNameAndLocation": false,
        "PropFilterName": "",
        "PropFilterValue": "",
        "RegisterAsVirtualService": true,
        "Timeout": 0,
        "ValueFilter": {
          "Value": null,
          "ValueType": "bool"
        },
        "ValueJPath": "",
        "ValueJPathResultType": "",
        "VirtualServiceGroup": "ch_0",
        "VirtualServiceProps": null
      },
      "Ui": {
        "nodeType": "",
        "x": 60,
        "y": 209
      },
      "TypeAlias": "Trigger"
    },
    {
      "Id": "2",
      "Type": "action",
      "Label": "send response",
      "SuccessTransition": "3",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "pt:j1/mt:evt/rt:dev/rn:flow/ad:1/sv:out_bin_switch/ad:nqTmk5ZwravXLrQ_0",
      "Service": "out_bin_switch",
      "ServiceInterface": "evt.binary.report",
      "Config": {
        "DefaultValue": {
          "Value": "",
          "ValueType": "bool"
        },
        "IsVariableGlobal": false,
        "Props": {},
        "RegisterAsVirtualService": false,
        "ResponseToTopic": "",
        "VariableName": "",
        "VirtualServiceGroup": "ch_0",
        "VirtualServiceProps": {}
      },
      "Ui": {
        "nodeType": "",
        "x": 128,
        "y": 396
      },
      "TypeAlias": "Action"
    },
    {
      "Id": "3",
      "Type": "set_variable",
      "Label": "",
      "SuccessTransition": "",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "",
      "Service": "",
      "ServiceInterface": "",
      "Config": {
        "DefaultValue": {
          "Value": 0,
          "ValueType": ""
        },
        "IsVariableInMemory": false,
        "Name": "low cost mode",
        "UpdateGlobal": true,
        "UpdateInputMsg": false
      },
      "Ui": {
        "nodeType": "",
        "x": 188,
        "y": 572
      },
      "TypeAlias": "Set variable"
    }
  ],
  "Settings": null,
  "IsDisabled": false,
  "IsDefault": false,
  "ParallelExecution": "parallel"
}

Det virket. Importerte koden, valgte global bool variabel.

Enheten som dukket opp i appen ser ut som en bryter, jeg lagret den som et apparat, og valgte et rom.
Det som er problemet nå er at bryteren lar seg ikke flytte (variabelen endres ikke).
Er det noe som må gjøres for å få dette til virke?

image

Jeg får det samme problem av og til. Prøv å åpne flow og:

  1. Trykk på “deregister”
  2. Lagre flow
  3. Trykk på “register”
  4. Lagre flow igjen

Det har løst det for meg noen ganger.

Av og til måtte jeg slette flow og start fra nytt.

Si ifra om det fungerer!

Ja, jeg fikk det til å fungere nå. Takk :slightly_smiling_face:

2 Likes