Hjelp med å sette opp en Flow?

Ønsker å sette opp Fibaro motion sensor sin lux måler til å sette på lys pr rom, ikke pr enhet.

Men siden jeg er heeelt grønn og ikke skjønner et kvekk nærmest. Så hadde det vært supert å fått litt bistand på veien :blush:

Forferdelig dårlig respons å hente her da

Hei,

Jeg har en flow som gjør det motsatte av det du ønsker, men med litt justeringer, kan du bruke den.
Dersom du skal slå på ‘et helt rom’ må du enten sette en Action for hver og en lampe i rommet, eller så må du kjøre en snarvei, som igjen er definert på lapenivå i appen


Flowen i sin helhet finner du her:

{
  "Id": "zARoAI5v8dHlG02",
  "ClassId": "zARoAI5v8dHlG02",
  "Author": "",
  "Version": 0,
  "CreatedAt": "2019-10-20T01:30:39.487721296+02:00",
  "UpdatedAt": "2020-06-08T23:25:59.462126603+02:00",
  "Name": "LUX trigger Aleks",
  "Group": "Varsler",
  "Description": "Slår av lyset ved 1700 lux",
  "Nodes": [
    {
      "Id": "1",
      "Type": "trigger",
      "Label": "LUX meter Aleks",
      "SuccessTransition": "7",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "pt:j1/mt:evt/rt:dev/rn:zw/ad:1/sv:sensor_lumin/ad:7_0",
      "Service": "sensor_lumin",
      "ServiceInterface": "evt.sensor.report",
      "Config": {
        "InputVariableType": "",
        "IsValueFilterEnabled": false,
        "LookupServiceNameAndLocation": false,
        "RegisterAsVirtualService": false,
        "Timeout": 0,
        "ValueFilter": {
          "Value": null,
          "ValueType": ""
        },
        "ValueJPath": "",
        "ValueJPathResultType": "",
        "VirtualServiceGroup": "",
        "VirtualServiceProps": null
      },
      "Ui": {
        "nodeType": "",
        "x": 70,
        "y": 170
      },
      "TypeAlias": "Trigger"
    },
    {
      "Id": "3",
      "Type": "action",
      "Label": "Push notification",
      "SuccessTransition": "",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "pt:j1/mt:evt/rt:app/rn:kind_owl/ad:1",
      "Service": "kind-owl",
      "ServiceInterface": "evt.notification.report",
      "Config": {
        "DefaultValue": {
          "Value": {
            "EventName": "custom",
            "MessageContent": "Mye sol hos Aleks, slår av lys",
            "SiteId": "5b9a7d73-f5c8-4fc4-b8ef-8491be34bad2"
          },
          "ValueType": "object"
        },
        "IsVariableGlobal": false,
        "Props": {},
        "RegisterAsVirtualService": false,
        "VariableName": "",
        "VirtualServiceGroup": "",
        "VirtualServiceProps": {}
      },
      "Ui": {
        "nodeType": "notification_action",
        "x": 68,
        "y": 793
      },
      "TypeAlias": "Notification"
    },
    {
      "Id": "6",
      "Type": "set_variable",
      "Label": "Set global status",
      "SuccessTransition": "",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "",
      "Service": "",
      "ServiceInterface": "",
      "Config": {
        "DefaultValue": {
          "Value": 0,
          "ValueType": ""
        },
        "Name": "Taklys Aleks",
        "UpdateGlobal": true,
        "UpdateInputMsg": false
      },
      "Ui": {
        "nodeType": "",
        "x": 378,
        "y": 368
      },
      "TypeAlias": "Set variable"
    },
    {
      "Id": "7",
      "Type": "if",
      "Label": "Hvis lys er på og lux over 1700",
      "SuccessTransition": "",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "",
      "Service": "",
      "ServiceInterface": "",
      "Config": {
        "Expression": [
          {
            "BooleanOperator": "and",
            "LeftVariableIsGlobal": false,
            "LeftVariableName": "",
            "Operand": "gt",
            "RightVariable": {
              "Value": 1700,
              "ValueType": "float"
            }
          },
          {
            "BooleanOperator": "",
            "LeftVariableIsGlobal": true,
            "LeftVariableName": "Taklys Aleks",
            "Operand": "eq",
            "RightVariable": {
              "Value": true,
              "ValueType": "bool"
            }
          }
        ],
        "FalseTransition": "",
        "TrueTransition": "9"
      },
      "Ui": {
        "nodeType": "",
        "x": 67,
        "y": 375
      },
      "TypeAlias": "If condition"
    },
    {
      "Id": "8",
      "Type": "trigger",
      "Label": "Lysbryter Aleks",
      "SuccessTransition": "6",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "pt:j1/mt:evt/rt:dev/rn:zw/ad:1/sv:out_bin_switch/ad:67_0",
      "Service": "out_bin_switch",
      "ServiceInterface": "evt.binary.report",
      "Config": {
        "IsValueFilterEnabled": false,
        "LookupServiceNameAndLocation": false,
        "RegisterAsVirtualService": false,
        "Timeout": 0,
        "ValueFilter": {
          "Value": "",
          "ValueType": "bool"
        },
        "VirtualServiceGroup": "ch_0",
        "VirtualServiceProps": {}
      },
      "Ui": {
        "nodeType": "",
        "x": 367,
        "y": 156
      },
      "TypeAlias": "Trigger"
    },
    {
      "Id": "9",
      "Type": "action",
      "Label": "Slå av taklys ALeks",
      "SuccessTransition": "3",
      "TimeoutTransition": "",
      "ErrorTransition": "",
      "Address": "pt:j1/mt:cmd/rt:dev/rn:zw/ad:1/sv:out_bin_switch/ad:67_0",
      "Service": "out_bin_switch",
      "ServiceInterface": "cmd.binary.set",
      "Config": {
        "DefaultValue": {
          "Value": false,
          "ValueType": "bool"
        },
        "IsVariableGlobal": false,
        "Props": {},
        "RegisterAsVirtualService": false,
        "ResponseToTopic": "",
        "VariableName": "",
        "VirtualServiceGroup": "",
        "VirtualServiceProps": {}
      },
      "Ui": {
        "nodeType": "",
        "x": 60,
        "y": 582
      },
      "TypeAlias": "Action"
    }
  ],
  "Settings": null,
  "IsDisabled": false,
  "IsDefault": false,
  "ParallelExecution": "parallel"
}

Jeg er litt noob så flowen i kodetekst går litt over huet på meg ennå. Det å sette trigger, greit. Men stopper seg på “hvis”, hvor kommer infoen ifra, det gir meg ingen hint om hvilke variabler som skal inn, og hvor henter den infoen fra?

Så enkelt som, hva er hvis variabelen “home”? Bare som et eksempel?

Hva er AND variabelen? Jeg får ikke skrevet inn eller valgt noe. Taklys Aleks(bool), hvor kommer det fra?

Hei,

Akkurat den ‘Taklys Aleks(bool)’ kan du egentlig se bort i fra, i flowen du skal bruke.
Men for å fortelle litt om det, så er det en Variabel som settes i forbindelse med om taklyset er på eller av, som brukes i IF-noden. Men som sagt så kan du slette: Triggeren og Set Variable på høyre side.

Du trenger en Trigger (som henter LUX verdien fra Multisensoren din), denne går inn i en IF-node hvor du bestemmer om vardien (float) skal være større enn / mindre enn / er lik, en gitt verdi
Så går den videre til en Action node, som slår på et lys, eller aktiverer en Shortcut.
Om du ønsker å tenne fler lys, er det bare å slenge på Action noder etterhverandre.
Så til slutt har jeg satt på en Push varsel, som gir meg beskjed på telefon når Flowen er kjørt

Men når jeg ikke får valgt variablene? Det er vel der if noden henter infoen sin for å sjekke om lux nivå er over eller under trigger punktet. På input variabel er det kun home.tracker som kommer som valg ved global og bool setting

Hvis IF noden ligger etter Trigger, så velger du ‘input variable’ da bruker den verdien som kommer inn og eventuelt så kan du legge på andre variabler i tillegg

For å få en variable, så må du opprette den først

Hvordan oppretter jeg en variabel egentlig? Jeg ser at du har en meny på venstre side som jeg ikke har.

Ikke vanskelig, først legger du til en ‘Set variable’ node, så velger du om den skal være statisk eller variabel og om den skal være Global eller ikke (Global betyr at du kan bruke den også i andre flows, ikke global så gjelder den kun for den flowen du er i), trykker på ADD, gir den et navn og Save

image

Hva og hvor skal jeg legge inn 3n lux verdi for eksempel? Slik at jeg kan trigge lys et sted under det nivået, og et annet sted under et annet nivå.

Må sikkert lage to variabler da

Da må du lage to variabler med to ulike verdier.

Verdien legger du i if noden.
Input variable, så velder du < ‘en verdi 500 feks’ type float

Her har jeg modifisert en jeg har satt opp via appen, appen kunne ikke legge til nytt rom uten å måtte legge til hele flowen på nytt. Spot tak veranda er lagt til, men denne skal kun være på om kvelden. Men skal slås av ved et gitt klokkeslett. Er det noe jeg kan sette i samme flow?

Så har jeg prøvd meg på å lage en flow med lux måler, men klarer ikke se om denne kan testes uten å måtte vente til imorgen.2021-03-20_21-02-18

Den flowen du viser her ser ut til å slå på noen lys ved solnedgang.
Du kan legge til en time trigger til som slår av ønsket lys ved gitt klokkeslett.

Vedrørende test av lux måler, så pleier jeg å teste men lommelykt og evt noe som kan mørkeli

Hvor kommer så den inn? Hvis jeg har en time trigger i samme Flow så må vel den inn et sted.

Så ut til at lys sensor Flow virket. Fordi jeg ikke hadde satt betingelse, kun under en viss lux verdi, så overstyrte den time trigger en som skrur av lyset om kvelden :see_no_evil:

Du legger den bare ved siden av de andre og knytter den til en action som slår av lyset.

Vedrørende den lysflowen, så vil jo den kjøre uansett, dersom du ikke legger inn flere kriterier.
Her kommer Globale Variabler inn.
På Time triggeren som slår av lyset, setter du på en Global Variabel som setter statisk BOOL True, når den aktiveres og BOOL False når den deaktiveres.
Da kan du bruke den i LUX flowen, som en tilleggskritere.
Typ: -IF LUX < 500 AND time_trigger_lys = False
Da kjører flowen hvis LUX er under 500 og den Globale variabelen er False

Jeg må lage en ny variabel som er global for tidstriggeren til lyset,som jeg bruker videre i flowen til lyssensor. Men den har ingen verdi? Kun bool, så true/false?
Variablene man lager, de kan man bare lagre og fjerne ifra flowen? Eller skal den ligge der inne som en del av dem? Og hva er de gule, blå og røde prikkene på nodene?

Tar litt tid det her å skjønne hvordan man setter ting opp og når, hvor, hvordan det skal brukes.

Har github en forklaring på hva de enkelte benevningene er og betyr?

En variabel kan enten være styrt av en action eller trigger for å sette en variabel verdi, eller så kan den være statisk.
Når du setter en variabel i en flow somer global vil den kunne brukes i andre flows.

Du kan lese mye nyttig her
https://thingsplex.github.io/docs/thingsplex-ui/flow/

Finner ikke timetriggeren som kan skru av det ene lyset etter kl… Jeg finner astro uret og time limit, som angir hvilke dager og mellom da og da. Og en nedtellingssekvens, men denne kan variere.