NEWS
Nutzungsdauer vom Handy anzeigen lassen (unifi)
-
Hallo.
Ich habe einen Uptime Datenpunkt im Unify-Adapter. Der zeigt mir alle 30 Sekunden einen aktuellen Wert in Sekunden an wie lange ein Gerät online ist.
Ich würde gerne in der VIS anzeigen lassen wie lange jemand z.B. mit dem Handy online ist.
(alle Blockly-Beispiele die ich im Netz gefunden und ausprobiert habe, haben leider nicht funktioniert)Hier ist mal mein nicht funktionierendes Skript:

<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="fY_F9{eY1;h}wP?vcr()">UptimeZeit</variable> </variables> <block type="comment" id="/;ZRw=#X-(8q/6mmWt-j" x="88" y="-362"> <field name="COMMENT">Datenpunkt anlegen</field> <next> <block type="create" id="K(QDlz0t6.{2Pq+PF_A^"> <field name="NAME">0_userdata.0.unifi.Nutzungsdauer_Frank</field> <value name="VALUE"> <block type="math_number" id="F:fd)tm:n!J6^vPJg$:H"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="q6Pk,4oOFfz~N`%)`^jw"> <field name="TEXT">{"name": "NutzungsdauerFrank", "type": "string", "unit": "h", "write": true, "read": true}</field> </block> </value> <next> <block type="comment" id="dwTsB5EXpHuS0=+=4Gp."> <field name="COMMENT">um 0:01 den Wert auf 0 setzen</field> <next> <block type="schedule" id="b[lyw/{nfZfvqKs4+VvL"> <field name="SCHEDULE">{"time":{"exactTime":true,"start":"00:01"},"period":{"days":1}}</field> <statement name="STATEMENT"> <block type="variables_set" id="_WC{AOB{MCn`w+CZ0:[F"> <field name="VAR" id="fY_F9{eY1;h}wP?vcr()">UptimeZeit</field> <value name="VALUE"> <block type="math_number" id="ce?-+ZAn1^Gn=!,`A^J["> <field name="NUM">0</field> </block> </value> </block> </statement> <next> <block type="comment" id="hx=3,gLEAlY2M5P9|.Zs"> <field name="COMMENT">Berechnen</field> <next> <block type="on_ext" id="8,jc8wcL/E4r7n$HaBfB"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="?xFLO|`y~#Vhz,Q~=yLv"> <field name="oid">unifi.1.default.clients.18:65:90:81:be:bf.uptime</field> </shadow> </value> <statement name="STATEMENT"> <block type="debug" id="?UPgrIZ-lci;kNCIfRn?"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="ZoX+2y9fnOMe?v%6h$lZ"> <field name="TEXT">test</field> </shadow> <block type="get_value" id="JmvnIHh%bV[/d-2oHxn,"> <field name="ATTR">val</field> <field name="OID">unifi.1.default.clients.18:65:90:81:be:bf.uptime</field> </block> </value> <next> <block type="controls_if" id="T_5#n@lBG-_83OFlf|)D"> <value name="IF0"> <block type="logic_negate" id="9O]ctrj~[QMSl;srQEr@"> <value name="BOOL"> <block type="on_source" id="i%Re+gm?HisoQvZ;y2H?"> <field name="ATTR">state.val</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="LE?[]!rh4Vs2JM3NZN5t"> <field name="VAR" id="fY_F9{eY1;h}wP?vcr()">UptimeZeit</field> <value name="VALUE"> <block type="math_arithmetic" id="PZ:nIxCw/6AX!Fk!_TBg" inline="false"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="xcrw1;dE|qXShSx-otl["> <field name="VAR" id="fY_F9{eY1;h}wP?vcr()">UptimeZeit</field> </block> </value> <value name="B"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="Invk3@2?f1O75MEI=sS!" inline="false"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="on_source" id="e7iCe8|M,+^]3/?~+(:v"> <field name="ATTR">state.lc</field> </block> </value> <value name="B"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="on_source" id="lpoYv%diwkTMG@(m(`Xg"> <field name="ATTR">oldState.lc</field> </block> </value> </block> </value> </block> </value> <next> <block type="comment" id=")8ne~ZLQBD(i(Yud=L:}"> <field name="COMMENT">in Datenpunkt schreiben</field> <next> <block type="update" id=",wh2(O`,J,1c4LrU5Xd2"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.unifi.Nutzungsdauer_Frank</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="4+929|Af=:Z(!b}{w_Sc"> <field name="VAR" id="fY_F9{eY1;h}wP?vcr()">UptimeZeit</field> </block> </value> <next> <block type="debug" id="#;K;/u%_kmz(l?i0Vr5X"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="Tvr?+gMKk$:J/eB:;db["> <field name="TEXT">test</field> </shadow> <block type="variables_get" id="C$k?WDu//?ZuRK?AN,ko"> <field name="VAR" id="fY_F9{eY1;h}wP?vcr()">UptimeZeit</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> <block type="convert_from_date" id="dY(:0?U]KEwy5hgz}SVt" disabled="true" x="863" y="-37"> <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation> <field name="OPTION">m</field> <value name="VALUE"> <block type="variables_get" id="rN1L)t5e]@iqV^2z`ypW"> <field name="VAR" id="fY_F9{eY1;h}wP?vcr()">UptimeZeit</field> </block> </value> </block> </xml> -
Hallo.
Ich habe einen Uptime Datenpunkt im Unify-Adapter. Der zeigt mir alle 30 Sekunden einen aktuellen Wert in Sekunden an wie lange ein Gerät online ist.
Ich würde gerne in der VIS anzeigen lassen wie lange jemand z.B. mit dem Handy online ist.
(alle Blockly-Beispiele die ich im Netz gefunden und ausprobiert habe, haben leider nicht funktioniert)Hier ist mal mein nicht funktionierendes Skript:

<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="fY_F9{eY1;h}wP?vcr()">UptimeZeit</variable> </variables> <block type="comment" id="/;ZRw=#X-(8q/6mmWt-j" x="88" y="-362"> <field name="COMMENT">Datenpunkt anlegen</field> <next> <block type="create" id="K(QDlz0t6.{2Pq+PF_A^"> <field name="NAME">0_userdata.0.unifi.Nutzungsdauer_Frank</field> <value name="VALUE"> <block type="math_number" id="F:fd)tm:n!J6^vPJg$:H"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="q6Pk,4oOFfz~N`%)`^jw"> <field name="TEXT">{"name": "NutzungsdauerFrank", "type": "string", "unit": "h", "write": true, "read": true}</field> </block> </value> <next> <block type="comment" id="dwTsB5EXpHuS0=+=4Gp."> <field name="COMMENT">um 0:01 den Wert auf 0 setzen</field> <next> <block type="schedule" id="b[lyw/{nfZfvqKs4+VvL"> <field name="SCHEDULE">{"time":{"exactTime":true,"start":"00:01"},"period":{"days":1}}</field> <statement name="STATEMENT"> <block type="variables_set" id="_WC{AOB{MCn`w+CZ0:[F"> <field name="VAR" id="fY_F9{eY1;h}wP?vcr()">UptimeZeit</field> <value name="VALUE"> <block type="math_number" id="ce?-+ZAn1^Gn=!,`A^J["> <field name="NUM">0</field> </block> </value> </block> </statement> <next> <block type="comment" id="hx=3,gLEAlY2M5P9|.Zs"> <field name="COMMENT">Berechnen</field> <next> <block type="on_ext" id="8,jc8wcL/E4r7n$HaBfB"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="?xFLO|`y~#Vhz,Q~=yLv"> <field name="oid">unifi.1.default.clients.18:65:90:81:be:bf.uptime</field> </shadow> </value> <statement name="STATEMENT"> <block type="debug" id="?UPgrIZ-lci;kNCIfRn?"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="ZoX+2y9fnOMe?v%6h$lZ"> <field name="TEXT">test</field> </shadow> <block type="get_value" id="JmvnIHh%bV[/d-2oHxn,"> <field name="ATTR">val</field> <field name="OID">unifi.1.default.clients.18:65:90:81:be:bf.uptime</field> </block> </value> <next> <block type="controls_if" id="T_5#n@lBG-_83OFlf|)D"> <value name="IF0"> <block type="logic_negate" id="9O]ctrj~[QMSl;srQEr@"> <value name="BOOL"> <block type="on_source" id="i%Re+gm?HisoQvZ;y2H?"> <field name="ATTR">state.val</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="LE?[]!rh4Vs2JM3NZN5t"> <field name="VAR" id="fY_F9{eY1;h}wP?vcr()">UptimeZeit</field> <value name="VALUE"> <block type="math_arithmetic" id="PZ:nIxCw/6AX!Fk!_TBg" inline="false"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="xcrw1;dE|qXShSx-otl["> <field name="VAR" id="fY_F9{eY1;h}wP?vcr()">UptimeZeit</field> </block> </value> <value name="B"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="Invk3@2?f1O75MEI=sS!" inline="false"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="on_source" id="e7iCe8|M,+^]3/?~+(:v"> <field name="ATTR">state.lc</field> </block> </value> <value name="B"> <shadow type="math_number"> <field name="NUM">1</field> </shadow> <block type="on_source" id="lpoYv%diwkTMG@(m(`Xg"> <field name="ATTR">oldState.lc</field> </block> </value> </block> </value> </block> </value> <next> <block type="comment" id=")8ne~ZLQBD(i(Yud=L:}"> <field name="COMMENT">in Datenpunkt schreiben</field> <next> <block type="update" id=",wh2(O`,J,1c4LrU5Xd2"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.unifi.Nutzungsdauer_Frank</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="4+929|Af=:Z(!b}{w_Sc"> <field name="VAR" id="fY_F9{eY1;h}wP?vcr()">UptimeZeit</field> </block> </value> <next> <block type="debug" id="#;K;/u%_kmz(l?i0Vr5X"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="Tvr?+gMKk$:J/eB:;db["> <field name="TEXT">test</field> </shadow> <block type="variables_get" id="C$k?WDu//?ZuRK?AN,ko"> <field name="VAR" id="fY_F9{eY1;h}wP?vcr()">UptimeZeit</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> <block type="convert_from_date" id="dY(:0?U]KEwy5hgz}SVt" disabled="true" x="863" y="-37"> <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation> <field name="OPTION">m</field> <value name="VALUE"> <block type="variables_get" id="rN1L)t5e]@iqV^2z`ypW"> <field name="VAR" id="fY_F9{eY1;h}wP?vcr()">UptimeZeit</field> </block> </value> </block> </xml> -
@roelli sagte: Uptime Datenpunkt im Unify-Adapter. Der zeigt mir alle 30 Sekunden einen aktuellen Wert in Sekunden an wie lange ein Gerät online ist.
Wert in s kumulativ? Ohne Zeit-Begrenzung?
@paul53
Sieht so aus. Der Wert steigt immer nur positiv an. Ich habe allerdings auch nicht beobachten können ob, wie und wann das mal zurückgesetzt wird.Vermutlich ist das ja auch egal?
Denn bei anderen Skripten scheint man lediglich die Differenz zu berechnen.
Also.. wenn keine Änderung.. dann nix machen.
Wenn Änderung, dann Differenz berechnen und ausgeben. -
@paul53
Sieht so aus. Der Wert steigt immer nur positiv an. Ich habe allerdings auch nicht beobachten können ob, wie und wann das mal zurückgesetzt wird.Vermutlich ist das ja auch egal?
Denn bei anderen Skripten scheint man lediglich die Differenz zu berechnen.
Also.. wenn keine Änderung.. dann nix machen.
Wenn Änderung, dann Differenz berechnen und ausgeben. -
-
Danke! Sieht wesentlich schlauer aus als mein Versuch!
Hab's gerade ausprobiert... im Datenpunkt wird aber nur "NaN:NaN" geschrieben.
Hab ich da was falsch gemacht? Datenpunkt falsch formatiert?
Aber der Debugwert ist auch schon "NaN:NaN" -
@roelli
Die Variable UptimeZeit muss bei Skriptstart initialisiert werden, da sie sonst bis 00:01 Uhr undefined enthält.
Das Script scheint generell zu funktionieren. Es zählt hoch.
Allerdings scheint es zu viel und/oder zu oft zu zählen.
(ich habe morgens früh schon 10Stunden dort stehen)Möglicherweise ist aber auch der Datenpunkt vom unify Controller nicht der beste.
Hast Du auch unify? Läuft's bei Dir?Danke,
Frank. -
Das Script scheint generell zu funktionieren. Es zählt hoch.
Allerdings scheint es zu viel und/oder zu oft zu zählen.
(ich habe morgens früh schon 10Stunden dort stehen)Möglicherweise ist aber auch der Datenpunkt vom unify Controller nicht der beste.
Hast Du auch unify? Läuft's bei Dir?Danke,
Frank.@roelli sagte in Nutzungsdauer vom Handy anzeigen lassen (unifi):
Möglicherweise ist aber auch der Datenpunkt vom unify Controller nicht der beste.
der zeigt IMHO die komplette Verbindungszeit zum AP an, nicht die Onlinezeit
Passt es denn zu den Werten im Unifi-Controller

hier die letzte Spalte.
Ich nutze den Adapter nicht -
Das Script scheint generell zu funktionieren. Es zählt hoch.
Allerdings scheint es zu viel und/oder zu oft zu zählen.
(ich habe morgens früh schon 10Stunden dort stehen)Möglicherweise ist aber auch der Datenpunkt vom unify Controller nicht der beste.
Hast Du auch unify? Läuft's bei Dir?Danke,
Frank.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden


