NEWS
Anwesenheitsscript mit 3 Aktoren?
-
Hallo ihr lieben ich stehe vor einem kleinen Problem und komm nicht so recht weiter,
Ich möchte folgendes machen. Um die Anwesenheit zu prüfen möchte ich drei Aktoren nutzen.
Zum einen das WLAN des Handys das mittels Pingadapter die IP im wieder prüft dann per Radaradapter Bluetooth und dann seit heute würde ich es dann noch gerne mittel Google-Sharedlocation also Geofence machen.
Im Moment mache ich es nur per BT da aber ab und dann mal die Verbindung zum BT wegbricht und auch die Geräte Android in den Sleep gehen würde ich eben noch die Möglichkeit mittels GoogleShare nutzen.
Doch es scheitert bei mir daran an Abfrage mittels Blockly zu schreiben die eben IFTT Fragen macht also wenn BT und WLAN und Geofence weg ist dann eben meinen Datenpunkt auf false setzt und das gleiche eben umgekehrt wenn es von dreien da ist auf True.
Hoffe ihr habt da eine Idee ich weiss nicht mehr so recht weiter wie ich das machen kann.
MFG Maggi
-
Oje…
Ich habe da mal mein Script ausgeschnitten. 5 Minuten Timeout, wenn ich die Bude verlasse...
6814_taster.gif -
Danke für die Antwort aber daraus werde ich auch nicht schlau.
Wie fragst du denn dein Handy ab ich vermute mal mittels Fritzbox, was bei mir schon ausfällt.
Dann sehe ich aber auch nur einen Aktor der das Prüft.
MFG Maggi
-
OK,
du ersetzt in meinem Blockly das "Bernd-S8" durch Dein "Maggis_S8.btHere".
"Anwesenheit Bernd" durch "Patrick".
Dein Blockly-Script hat aber nicht zuviel mit Deinem Text darüber zu tun…
Ich würde die drei Arten der Prüfung so anlegen und jeweils Patrick_da1, Patrick_da2 und ...3 ansteuern, jeweils mit einem Aktor.
Und dann:
Bei jeder Änderung eines der Zustände läuft ein Script, das alle Zustände zusammenführt und EINEN Zustand schaltet bei mir "Anwesenheit jemand".
Und daraus ergeben sich dann weitere Schaltungen...
Kann man "schöner" mit verschachtelten If-And-Or-Ketten machen, aber manchmal liebe ich Bitbanging, weil es so einfach ist.
Das mit dem Zeitplan bitte nicht ansehen, das versteht hier sowieso niemand ohne bebilderte Anleitung und Youtube-Video. 8-)
Ist aber auch schwer hier...
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="on" id="kfhthl4A_O7c}!^iGR`I" x="-412" y="-337"><field name="OID">tr-064.0.devices.Bernd-S8.active</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION">true</field> <statement name="STATEMENT"><block type="controls_if" id="h,hR16M;yVA1T7@}{FDq"><mutation else="1"></mutation> <value name="IF0"><block type="variables_get" id="ROHg,c51][lDw5Elq9WQ"><field name="VAR">value</field></block></value> <statement name="DO0"><block type="update" id="?@YMzuJn`ZO[DfO2!HiI"><mutation delay_input="true"></mutation> <field name="OID">admin.0.Anwesenheit.Bernd</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">0</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"><block type="logic_boolean" id=",),eUcCn.}Q(RejIR6XX"><field name="BOOL">TRUE</field></block></value></block></statement> <statement name="ELSE"><block type="update" id="k)b?lWig(po!O1=%K3`0"><mutation delay_input="true"></mutation> <field name="OID">admin.0.Anwesenheit.Bernd</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">5</field> <field name="UNIT">min</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"><block type="logic_boolean" id="=f7~uNZjuwBm}Yi6AU-~"><field name="BOOL">FALSE</field></block></value></block></statement></block></statement> <next><block type="on" id="|V:kU=)Z8](#y4o.Sn[k"><field name="OID">tr-064.0.devices.iPhone.active</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION">true</field> <statement name="STATEMENT"><block type="controls_if" id="`=u0q7JK*r8ox}wp6{S."><value name="IF0"><block type="variables_get" id="S`zjp]fX{i6~*7mG4ywc"><field name="VAR">value</field></block></value> <statement name="DO0"><block type="update" id="DAU9B17C(EQZ!h2,w7X7"><mutation delay_input="true"></mutation> <field name="OID">admin.0.Anwesenheit.Valentina</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">0</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"><block type="logic_boolean" id="BLKO%x).AdcMLrb/f|h:"><field name="BOOL">TRUE</field></block></value></block></statement></block></statement> <next><block type="schedule" id="=:%3E--`sgvxL#0Jwn/D"><field name="SCHEDULE">*/5 9-22 * * *</field> <statement name="STATEMENT"><block type="controls_if" id="dc~4EAADd2J]xk`J[*@u"><value name="IF0"><block type="get_value" id="n1]K,(@]P7pB`q(CS{xG"><field name="ATTR">val</field> <field name="OID">admin.0.Anwesenheit.Valentina</field></block></value> <statement name="DO0"><block type="controls_if" id="qtKy+#reegSQ]LiiZ,:e"><value name="IF0"><block type="logic_negate" id="pOH^Y1O{P0tL-8yDbfdW"><value name="BOOL"><block type="get_value" id="?!D4tDC=bYy_jRh#}[nn"><field name="ATTR">val</field> <field name="OID">tr-064.0.devices.iPhone.active</field></block></value></block></value> <statement name="DO0"><block type="update" id="AgIOd}a8|;A.LTvtGW*~"><mutation delay_input="true"></mutation> <field name="OID">admin.0.Anwesenheit.Valentina</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">10</field> <field name="UNIT">min</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="fA;^.W@~/QC;-}*l9jTs"><field name="BOOL">FALSE</field></block></value></block></statement></block></statement></block></statement> <next><block type="on_ext" id=":*j}F2t1pyx6Yj@P@==8"><mutation items="2"></mutation> <field name="CONDITION">ne</field> <value name="OID0"><shadow type="field_oid" id=";s5b0_,!u0C{AK/hhLTM"><field name="oid">admin.0.Anwesenheit.Bernd</field></shadow></value> <value name="OID1"><shadow type="field_oid" id=":#zLyra}hnJthGnZ:zM-"><field name="oid">admin.0.Anwesenheit.Valentina</field></shadow></value> <statement name="STATEMENT"><block type="variables_set" id=":Mh%Khr4O(p-?yN``i-:"><field name="VAR">anybody</field> <value name="VALUE"><block type="logic_boolean" id="Q})Nre/);hYa!BeWrSFx"><field name="BOOL">FALSE</field></block></value> <next><block type="controls_if" id="pJasH9X8#DcWpIcaiQ,u"><value name="IF0"><block type="get_value" id="l3JT}#:((!O3OsWa(B8L"><field name="ATTR">val</field> <field name="OID">admin.0.Anwesenheit.Bernd</field></block></value> <statement name="DO0"><block type="variables_set" id="KwT2k`Bw6P5@D8WpHnjW"><field name="VAR">anybody</field> <value name="VALUE"><block type="logic_boolean" id="(y4`!Oa7ybg@z(S.m[Q/"><field name="BOOL">TRUE</field></block></value></block></statement> <next><block type="controls_if" id="j7#YFjnUn-F3rx{U2x8q"><value name="IF0"><block type="get_value" id="e56o0lRxha7s}B2,c+?h"><field name="ATTR">val</field> <field name="OID">admin.0.Anwesenheit.Valentina</field></block></value> <statement name="DO0"><block type="variables_set" id="3n=h,Y:^lk#*Rs]/}9`H"><field name="VAR">anybody</field> <value name="VALUE"><block type="logic_boolean" id=")d!l@W}2umpB+HbbmT!N"><field name="BOOL">TRUE</field></block></value></block></statement> <next><block type="update" id="^sMeY1%o2!5|[ZV:mgOo"><mutation delay_input="false"></mutation> <field name="OID">admin.0.Anwesenheit.Person</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="variables_get" id="#X+flmfrFU?9oA4xQbHU"><field name="VAR">anybody</field></block></value></block></next></block></next></block></next></block></statement> <next><block type="on" id="OO)%KkH[6r(swsji*%m9"><field name="OID">admin.0.Anwesenheit.Person</field> <field name="CONDITION">ne</field> <statement name="STATEMENT"><block type="controls_if" id="!f?6wt/Q~Qi9QLWE_WET"><mutation else="1"></mutation> <value name="IF0"><block type="variables_get" id="RlnHGO.(X_]q##c,:Sl5"><field name="VAR">value</field></block></value> <statement name="DO0"><block type="timeouts_cleartimeout" id="b%jHZsPuzuBc8,wmn:c+"><field name="NAME">timeout</field></block></statement> <statement name="ELSE"><block type="timeouts_settimeout" id="f%p3lbDC~c+hfPd4@)m_"><field name="NAME">timeout</field> <field name="DELAY">5</field> <field name="UNIT">min</field> <statement name="STATEMENT"><block type="update" id="bg}o;`[xKgaZ?IpO{=y3"><mutation delay_input="false"></mutation> <field name="OID">admin.0.Alles_</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="_J3Q};?BaDJvRVVgh8.)"><field name="BOOL">FALSE</field></block></value></block></statement></block></statement></block></statement></block></next></block></next></block></next></block></next></block></xml>