NEWS
Beispielskript gesucht
-
was für einen Export bitte? das ist alles, was ich habe….....
-
Hier
den code für die Blöcke exportieren.Diesen Code dann in Code-Tags und Spoiler posten
Gruß
Rainer
-
Ich hoffe, das ist richtig so.
Gruß,
Mathias
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="D2-i%o~h}[C(XOb!uy@W" x="-2062" y="-1687"><mutation items="1"></mutation> <field name="CONDITION">any</field> <value name="OID0"><shadow type="field_oid" id="xO2djiTabS@KS{GP@E#."><field name="oid">javascript.0.Bluetooth.Device.7c2f8099bb0f.details.address</field></shadow></value> <statement name="STATEMENT"><block type="controls_if" id=".2TLXB%Ihqc-Nz6h2pM5"><mutation elseif="1"></mutation> <value name="IF0"><block type="logic_compare" id="`GUi=#sx:|j*-ENfTOls"><field name="OP">EQ</field> <value name="A"><block type="logic_operation" id="WX]:)kErZEWR~P/+8_qo"><field name="OP">OR</field> <value name="A"><block type="get_value" id="6upmqp@Z;aum/E9cRx36"><field name="ATTR">val</field> <field name="OID">javascript.0.Bluetooth.Device.7c2f8099bb0f.lastState</field></block></value> <value name="B"><block type="get_value" id="`P**u99%9*P;3G;;XF!5"><field name="ATTR">val</field> <field name="OID">javascript.1.Bluetooth.Device.7c2f8099bb0f.lastState</field></block></value></block></value> <value name="B"><block type="logic_boolean" id="VUj{DZ@GZGGJ-Vi`^/r_"><field name="BOOL">TRUE</field></block></value></block></value> <statement name="DO0"><block type="control_ex" id="NC)x*;ROvB[{fM(},rQV"><field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"><shadow type="field_oid" id="Od_!11i~z}wdSJqf3QuK"><field name="oid">hm-rega.0.1687</field></shadow></value> <value name="VALUE"><shadow type="logic_boolean" id="NY[gH1t@k9RVRf#st-;j"><field name="BOOL">TRUE</field></shadow></value> <value name="DELAY_MS"><shadow type="math_number" id="}=Ic%oJ1lB/MV9ST?tgJ"><field name="NUM">0</field></shadow></value></block></statement> <value name="IF1"><block type="logic_compare" id="E)]tXcx:snc?gx1O~`O="><field name="OP">EQ</field> <value name="A"><block type="logic_operation" id=":w^:`0%(L..(6eM%qfjJ"><field name="OP">AND</field> <value name="A"><block type="get_value" id="s7ktjeP/1!B[-z^(|U(j"><field name="ATTR">val</field> <field name="OID">javascript.0.Bluetooth.Device.7c2f8099bb0f.lastState</field></block></value> <value name="B"><block type="get_value" id="wjs78#p7)a}hV@B(MhYV"><field name="ATTR">val</field> <field name="OID">javascript.1.Bluetooth.Device.7c2f8099bb0f.lastState</field></block></value></block></value> <value name="B"><block type="logic_boolean" id="4xE6d:_W{W{.5qiI-wY~"><field name="BOOL">FALSE</field></block></value></block></value> <statement name="DO1"><block type="control_ex" id="[F|F@%iemyK(/_0xYDsB"><field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"><shadow type="field_oid" id="|8Vux0v5{#ijYLLk]HDE"><field name="oid">hm-rega.0.1687</field></shadow></value> <value name="VALUE"><shadow type="logic_boolean" id="WUiWr]QvMwFa=]]2cHVN"><field name="BOOL">FALSE</field></shadow></value> <value name="DELAY_MS"><shadow type="math_number" id="^b]9Dx,]|?dIJ[l0eEU`"><field name="NUM">180000</field></shadow></value></block></statement></block></statement></block></xml>
-
ich habe die Logik nicht verifizieren können, da ich die Datenpunkte, die du verwendest nicht kenne.
Hier die Korrektur der offensichlichen Fehler:
Export:
! ````
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="D2-i%o~h}[C(XOb!uy@W" x="-2062" y="-1687"><mutation items="1"></mutation>
<field name="CONDITION">any</field><value name="OID0"><shadow type="field_oid" id="xO2djiTabS@KS{GP@E#."><field name="oid">javascript.0.Bluetooth.Device.7c2f8099bb0f.details.address</field></shadow></value> <statement name="STATEMENT"><block type="controls_if" id=".2TLXB%Ihqc-Nz6h2pM5"><mutation elseif="1"></mutation> <value name="IF0"><block type="logic_operation" id="WX]:)kErZEWR~P/+8_qo" inline="false"><field name="OP">OR</field> <value name="A"><block type="logic_compare" id="`GUi=#sx:|j*-ENfTOls"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="6upmqp@Z;aum/E9cRx36"><field name="ATTR">val</field> <field name="OID">javascript.0.Bluetooth.Device.7c2f8099bb0f.lastState</field></block></value> <value name="B"><block type="logic_boolean" id="VUj{DZ@GZGGJ-Vi`^/r_"><field name="BOOL">TRUE</field></block></value></block></value> <value name="B"><block type="logic_compare" id="_x?KoYGn@yfWe~T~rk(Y"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="`P**u99%9*P;3G;;XF!5"><field name="ATTR">val</field> <field name="OID">javascript.1.Bluetooth.Device.7c2f8099bb0f.lastState</field></block></value> <value name="B"><block type="logic_boolean" id="oD2_4ON;VUZV4%5fM]s!"><field name="BOOL">TRUE</field></block></value></block></value></block></value> <statement name="DO0"><block type="control_ex" id="NC)x*;ROvB[{fM(},rQV"><field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"><shadow type="field_oid" id="Od_!11i~z}wdSJqf3QuK"><field name="oid">hm-rega.0.1687</field></shadow></value> <value name="VALUE"><shadow type="logic_boolean" id="NY[gH1t@k9RVRf#st-;j"><field name="BOOL">TRUE</field></shadow></value> <value name="DELAY_MS"><shadow type="math_number" id="}=Ic%oJ1lB/MV9ST?tgJ"><field name="NUM">0</field></shadow></value></block></statement> <value name="IF1"><block type="logic_operation" id=":w^:`0%(L..(6eM%qfjJ" inline="false"><field name="OP">AND</field> <value name="A"><block type="logic_compare" id="E)]tXcx:snc?gx1O~`O="><field name="OP">EQ</field> <value name="A"><block type="get_value" id="s7ktjeP/1!B[-z^(|U(j"><field name="ATTR">val</field> <field name="OID">javascript.0.Bluetooth.Device.7c2f8099bb0f.lastState</field></block></value> <value name="B"><block type="logic_boolean" id="4xE6d:_W{W{.5qiI-wY~"><field name="BOOL">FALSE</field></block></value></block></value> <value name="B"><block type="logic_compare" id="n1kiqJJa]GaUR|9.w^?s"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="wjs78#p7)a}hV@B(MhYV"><field name="ATTR">val</field> <field name="OID">javascript.1.Bluetooth.Device.7c2f8099bb0f.lastState</field></block></value> <value name="B"><block type="logic_boolean" id="7?OvELFFOp*|eO}y[Gy."><field name="BOOL">FALSE</field></block></value></block></value></block></value> <statement name="DO1"><block type="control_ex" id="[F|F@%iemyK(/_0xYDsB"><field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"><shadow type="field_oid" id="|8Vux0v5{#ijYLLk]HDE"><field name="oid">hm-rega.0.1687</field></shadow></value> <value name="VALUE"><shadow type="logic_boolean" id="WUiWr]QvMwFa=]]2cHVN"><field name="BOOL">FALSE</field></shadow></value> <value name="DELAY_MS"><shadow type="math_number" id="^b]9Dx,]|?dIJ[l0eEU`"><field name="NUM">180000</field></shadow></value></block></statement></block></statement></block></xml>
um das verifizieren zu können bitte noch die letzten Fragen beantworten: ~~@Homoran:~~ > Womit erfasst du deinen G-Tag? > > Wie sieht der Datenpunkt dazu aus? > > - aktualisiert sich dieser korrekt? > > - hast du das ggf. mal geloggt falsch sich der Zustand (zu) schnell ändert? ` Gruß Rainer
-
nein, die Datenpunkte ändern sich nicht.
Das ist ja das, warum ich auf dem Schlauch stehe.
Wenn ich den Skript aktualisiere, dann sehe ich mich für eine Sekunde wieder als anwesend.
Gruß,
Mathias
-
ach ja,
als Datenlogger habe ich das hier genommen:
viewtopic.php?f=21&t=2513&p=28266#p28266
Gruß,
Mathias
-
nein, die Datenpunkte ändern sich nicht. `
Dann kann das Skript auch nicht zaubern.Ich weiß zwar immer noch nicht wo die Infos für die G-Tag Datenpunkte (javascrript.0.BLuetooth.Device.7cxxxxx.detail….) herkommen, aber hast du es mal mit dem Radar Adapter versucht?
da BT nicht immer stabil sein muss kann man da einstellen wann man als abwesend gelten will. Dazu müssen dan x aufeinanderfolgende Scans negativ sein. Einzelne Aussetzer haben dann keine Folgen.
Gruß
Rainer
-
als Datenlogger habe ich das hier genommen:
viewtopic.php?f=21&t=2513&p=28266#p28266 `
Das ist nicht der Logger, das ist der Scanner.Ich fragte ob du den Zustand des ominösen Datenpunktes mal mit history o.a. geloggt hast um zu sehen ob und wie oft sich dieser Datenpunkt ändert.
Gruß
Rainer
-
Nein das habe ich noch nicht.
Per Radar wird nichts erkannt.
Per BLE wird leider keine Anwesenheit getriggert.
Gruß,
Mathias
-
ich glaube ich weiß jetzt wo es bei dir gedanklich hakt :idea:
und jetzt mit Tastatur geht es auch besser als heute nachmittag am Handy.
Die Skripte arbeiten ereignisgesteuert.
Es gibt zwei arten von Triggern, einmal ein "echtes" Ereignis - wenn sich etwas ändert und einmal zeitgesteuert.
Da ändert sich dann die Zeit
Das BLE Script von ruhr 70 arbeitet zeitgesteuert und scannt alle x Minuten nach Devices in der Umgebung. Sobald ein bekanntes Device in der Umgebung erkannt wird wird dieses auf "here" gesetzt. Wenn der Scan x-mal hintereinender das Device nicht mehr findet wird dieses Device auf "not here" gesetzt.
Dein Skript reagiert jetzt auf diese Änderung!!!
sollte sich der G-Tag nicht ausserhalb der Reichweite des Scanners befunden haben wird dein Skript niemals eine Pushnachricht senden. Das passiert erst, wenn du das Haus betreten hats. oder nach Anwesenheit das Haus verlassen hast.
Gruß
Rainer
-
so soll es auch sein!
Ich will nur eine pushnachricht, wenn das haus betreten oder verlassen wird.
Aber:
Mit dem Blocky-Skript habe ich das Problem, dass ich nach bereits einer Sekunde wieder als abwesend gelistet bin, obwohl ich da bin.
das ist mein problem….....
Gruß,
Mathias
-
Passiert das immer wieder von selbst, oder nur wenn du das Skript startest?
Deswegen wäre ja das loggen dieses Datenpunktes interessant.
Dann wüsste man was passiert
Gruß
Rainer
-
Ich bin nur online, wenn ich den Skript starte bzw aktualisiere.
Ich habe nun wieder Radar installiert, aber ich sehe hier gar keine Objekte.
Nun deinstalliere ich radar wieder.
Gruß,
Mathias
-
Ich habe nun wieder Radar installiert, aber ich sehe hier gar keine Objekte. `
jetzt wird das loggen des Wertes noch interessanter was ruhr70s Skript mit dem Datenpunkt anstellt.(kann aber sein, dass zwei Skripte/Adapter nicht beide auf den BT zugreifen können)
Da ich bereits ganz zu Beginn geschrieben hab, dass ich nicht weiß, ob dein "schreibe" Block ok ist, probiere bitte mal das hier:
! ````
<block xmlns="http://www.w3.org/1999/xhtml" type="on_ext" id="D2-i%o~h}[C(XOb!uy@W" x="-2087" y="-1612"><mutation items="1"></mutation>
<field name="CONDITION">any</field><value name="OID0"><shadow type="field_oid" id="xO2djiTabS@KS{GP@E#."><field name="oid">javascript.0.Bluetooth.Device.7c2f8099bb0f.details.address</field></shadow></value>
<statement name="STATEMENT"><block type="controls_if" id=".2TLXB%Ihqc-Nz6h2pM5"><mutation elseif="1"></mutation>
<value name="IF0"><block type="logic_operation" id="WX]:)kErZEWR~P/+8_qo" inline="false"><field name="OP">OR</field>
<value name="A"><block type="logic_compare" id="GUi=#sx:|j*-ENfTOls"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="6upmqp@Z;aum/E9cRx36"><field name="ATTR">val</field> <field name="OID">javascript.0.Bluetooth.Device.7c2f8099bb0f.lastState</field></block></value> <value name="B"><block type="logic_boolean" id="VUj{DZ@GZGGJ-Vi
^/r_"><field name="BOOL">TRUE</field></block></value></block></value>
<value name="B"><block type="logic_compare" id="_x?KoYGn@yfWe~T~rk(Y"><field name="OP">EQ</field>
<value name="A"><block type="get_value" id="P**u99%9*P;3G;;XF!5"><field name="ATTR">val</field> <field name="OID">javascript.1.Bluetooth.Device.7c2f8099bb0f.lastState</field></block></value> <value name="B"><block type="logic_boolean" id="oD2_4ON;VUZV4%5fM]s!"><field name="BOOL">TRUE</field></block></value></block></value></block></value> <statement name="DO0"><block type="control" id="T[mGg14Xs,]PF6H_sS%d"><mutation delay_input="true"></mutation> <field name="OID">Object ID</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">180000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="n;ZR(X
W?9yk{fFyCYF?"><field name="BOOL">TRUE</field></block></value></block></statement>
<value name="IF1"><block type="logic_operation" id=":w^:0%(L..(6eM%qfjJ" inline="false"><field name="OP">AND</field> <value name="A"><block type="logic_compare" id="E)]tXcx:snc?gx1O~
O="><field name="OP">EQ</field>
<value name="A"><block type="get_value" id="s7ktjeP/1!B[-z^(|U(j"><field name="ATTR">val</field>
<field name="OID">javascript.0.Bluetooth.Device.7c2f8099bb0f.lastState</field></block></value>
<value name="B"><block type="logic_boolean" id="4xE6d:_W{W{.5qiI-wY~"><field name="BOOL">FALSE</field></block></value></block></value>
<value name="B"><block type="logic_compare" id="n1kiqJJa]GaUR|9.w^?s"><field name="OP">EQ</field>
<value name="A"><block type="get_value" id="wjs78#p7)a}hV@B(MhYV"><field name="ATTR">val</field>
<field name="OID">javascript.1.Bluetooth.Device.7c2f8099bb0f.lastState</field></block></value>
<value name="B"><block type="logic_boolean" id="7?OvELFFOp*|eO}y[Gy."><field name="BOOL">FALSE</field></block></value></block></value></block></value>
<statement name="DO1"><block type="control" id="O:/Db:znWh[1d3TDN3Z%"><mutation delay_input="true"></mutation>
<field name="OID">Object ID</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">180000</field>
<field name="UNIT">ms</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE"><block type="logic_boolean" id=";G6D5jjoe2G~ygIn/}-r"><field name="BOOL">FALSE</field></block></value></block></statement></block></statement></block>Bitte an zwei Stellen noch deinen rega-Datenpunkt eintragen Gruß Raiiner
-
wird das ein neues Script?
Werden da datenpunkte getriggert?
ich möchte nur wissen, wo ich das eingeben muß.
Gruß,
Mathias
-
Hast du meine letzte Änderungen von 21:45 noch nicht getestet?
Die solltest du doch auch importieren.
Das funktioniert jetzt genau so.
Edit: ich sehe gerade ich habe in beiden Fällen 3 Minuten Verzögerung drin, bitte auch anpassen.
Was soll die eigentlich?
Gruß
Rainer
-
die verzögerung soll bewirken, dass z.B. die heizung im Winter nicht gleich aus- und an geht, wenn man mal nicht im Scanbereich ist.
So hat die Heizsteuerung 3 Minuten Luft, wenn ein paar Scans daneben gehen.
Gruß,
Mathias
-
Das passiert aber nicht.
Die Änderung wird nur 3 Minuten verzögert, egal ob du nach zwei Minuten wieder da bist.
Und welche versionen hast du jetzt schon getestet?
Gruß Rainer
-
ich habe beide Codes mal als Test-Skripte angelegt.
Nun habe ich das gleiche Problem wieder.
Eine Frage:
Wenn ich alle Skripte deaktiviere, besteht dann die Möglichkeit, dass ich in Radar doch noch was sehe?
Dann würde ich es wieder installieren.
Ich habe nicht nur schreibe versucht. ich habe aber immer das Problem, dass ich nach der Aktualisierung des Skriptes für eine Sekunde da bin. Danach bin ich wieder weg…......
Gruß,
Mathias
-
Nun habe ich radar nochmals installiert.
Im Log sehe ich, dass alle items auf true gesetzt sind. In den Objekten habe ich jedoch nichts.
ich denke, ich werde mal Ruhr fragen, wie er Sysvar der HM auf An- bzw abwesend setzen will.
Vllt geht das ja gar nicht bzw seine Skripte sind nur für IObroker gedacht.
Gruß,
Mathias