NEWS
Smartmeter-Lesekopf sendet keine Daten
-
@homoran
Ok, jetzt brauche ich noch etwas Hilfe dabei die Daten die "Sensor" ausspuckt aufzuteilen in einzelne Datenpunkte damit ich sie in der Vis besser verarbeiten kann.Also ich denke ich erzeuge unter 0.userdata. neue Datenpunkte oder? Welcher Typ? mixed? und dann? wie splitte ich das auf?
-
@stefan341 das ist auch noch kein vollständiger JSON, da fehlen noch ein paar Zeilen ... der hört doch mittendrin auf
Poste den ganzen + extra den Pfad zu diesem Datenpunkt und kann dir hier ein Skript posten welches den zerlegt.
Da müsste alles drin sein was du auch auf der Webseite des Lesekopfes sehen kannst -
@stefan341 Kann man mit Alias zerlegen ...
Hier für mein aqara Thermometer
Writable Wegklicken:
Alias Funktion für Lesen:
Bei Dir wäre der aktuelle Zählerstand
JSON.parse(val).ENERGY.Total
Für jeden Wert den Du herausziehen willst ein eigener Alias...
-
@bananajoe said in Smartmeter-Lesekopf sendet keine Daten:
@stefan341 das ist auch noch kein vollständiger JSON, da fehlen noch ein paar Zeilen ... der hört doch mittendrin auf
Poste den ganzenWie komme ich da dran?
-
@stefan341 noch mal aus dem Datenpunkt kopieren? Woher hast du die jetzigen Daten? Das was du gepostet hast endet mit einem
,
also kommt da noch mehr, die abschließenden}
für den BereichENERGY
und den JSON an sich fehlen auch.Neben dem Wert erscheint doch ein Kopieren-Symbol das man anklicken kann, dann ist alles in der Zwischenabage.
-
Meinst du das
{ "_id": "mqtt.0.Stromzaehler.SENSOR", "common": { "name": "Stromzaehler/SENSOR", "write": true, "read": true, "role": "variable", "desc": "mqtt server variable", "type": "string" }, "native": { "topic": "Stromzaehler/SENSOR" }, "type": "state", "from": "system.adapter.mqtt.0", "user": "system.user.admin", "ts": 1710881763584, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }
oder das? Da fehlte nur die ID des Zählers.
{"Time":"2024-03-20T21:49:32","ENERGY":{"Total":45660.6600,"Power":653,"Voltage":224.8,"Current":1.24,"phase_angle_L1":338.0,"Freq":50.0,"ID":"0a014546521802722959"}}
-
@stefan341 das 2. meinte ich, ich schau mir das mal eben an
-
ich habe hier noch einen Ausfall beim Kunden (Stromausfall Rechenzentrum), das wird heute nichts mehr bei mir
-
@bananajoe
Längerer Stromausfall? -
Bin gerade erst wieder vor dem Computer
Folgendes Blockly liest die Daten aus und schreibt Sie dir nach
0_userdata.0.Stromzaehler
:<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id=",%o6YJ)eJJ0Ug#A.g^(q">RootPath</variable> <variable id="(NO,^|-8O}[P|Q4TU,if">JSONValueName</variable> <variable id="!-(EoW{]I%^4o]}Wf0IU">TargetType</variable> <variable id="2NeMF,lRvUfhS/0US`~(">TargetIsWriteable</variable> <variable id="pEXy5(i!?xF*I2u|UIbk">TargetUnit</variable> <variable id="oS^boSLi7Wy4dN^qi{ek">TargetDefaultValue</variable> <variable id="SRUudM#Hd1.yV/:)yGQT">Object_SENSOR</variable> <variable id=":Q9L@NdQzX?GQceIM~@g">0_userdata_PATH</variable> <variable id="!qYu^r4@Gqpr6?JoobZB">MQTT_SourcePath_SENSOR</variable> </variables> <block type="procedures_defcustomnoreturn" id="l(.(|wVZ(GS{-P%@qK=|" x="138" y="-462"> <mutation statements="false"> <arg name="RootPath" varid=",%o6YJ)eJJ0Ug#A.g^(q"></arg> <arg name="JSONValueName" varid="(NO,^|-8O}[P|Q4TU,if"></arg> <arg name="TargetType" varid="!-(EoW{]I%^4o]}Wf0IU"></arg> <arg name="TargetIsWriteable" varid="2NeMF,lRvUfhS/0US`~("></arg> <arg name="TargetUnit" varid="pEXy5(i!?xF*I2u|UIbk"></arg> <arg name="TargetDefaultValue" varid="oS^boSLi7Wy4dN^qi{ek"></arg> </mutation> <field name="NAME">CreatyMyStateV3</field> <field name="SCRIPT">aWYgKFRhcmdldFVuaXQubGVuZ3RoID09PSAwKSB7DQogICAgYXdhaXQgY3JlYXRlU3RhdGVBc3luYyhSb290UGF0aCArIEpTT05WYWx1ZU5hbWUsIFRhcmdldERlZmF1bHRWYWx1ZSwgeyB0eXBlOiBUYXJnZXRUeXBlLCBuYW1lOiBKU09OVmFsdWVOYW1lLCByZWFkOiB0cnVlLCB3cml0ZTogVGFyZ2V0SXNXcml0ZWFibGUgfSk7DQp9IGVsc2Ugew0KICAgIGF3YWl0IGNyZWF0ZVN0YXRlQXN5bmMoUm9vdFBhdGggKyBKU09OVmFsdWVOYW1lLCBUYXJnZXREZWZhdWx0VmFsdWUsIHsgdHlwZTogVGFyZ2V0VHlwZSwgbmFtZTogSlNPTlZhbHVlTmFtZSwgcmVhZDogdHJ1ZSwgd3JpdGU6IFRhcmdldElzV3JpdGVhYmxlICwgdW5pdDogVGFyZ2V0VW5pdCB9KTsNCn0=</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="procedures_defnoreturn" id="P6sB*rshw]2Yf;E[KUEw" x="138" y="-412"> <mutation> <arg name="Object_SENSOR" varid="SRUudM#Hd1.yV/:)yGQT"></arg> </mutation> <field name="NAME">Write_SENSOR_to_userdata</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="control_ex" id="3ndTSH]fW!y[6r{W*((l"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="I(?w${7_BzrGxuo34c*I"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="-G1ZO%W@RhZ+!y5ws1=%"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="K5)_SOTiIcViG;_o+|p|"> <field name="VAR" id=":Q9L@NdQzX?GQceIM~@g">0_userdata_PATH</field> </block> </value> <value name="ADD1"> <block type="text" id="y:}fU!2;7=G@;SMap?M6"> <field name="TEXT">Total</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id=":?zJ6QM!B!)4Lzz7hLio"> <field name="BOOL">TRUE</field> </shadow> <block type="get_attr" id="Y7|Tpl:8hMqYs%EkLS[v"> <value name="PATH"> <shadow type="text" id="~YLlQ||(#2L@(1YLWPSj"> <field name="TEXT">attribute1</field> </shadow> <block type="text" id="78eksP[%Gq2q,1eCSK.^"> <field name="TEXT">ENERGY.Total</field> </block> </value> <value name="OBJECT"> <shadow type="get_object" id="{o.w,w#K?hl2`o4+@vYp"> <field name="OID">Object ID</field> </shadow> <block type="variables_get" id="$EV+@p,Np+yTMg[P0DY4"> <field name="VAR" id="SRUudM#Hd1.yV/:)yGQT">Object_SENSOR</field> </block> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="aZ`e0C(c+:3zNEP4yr1;"> <field name="NUM">0</field> </shadow> </value> <next> <block type="control_ex" id="L{;m{[-VrxfAy[2Er=g["> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="I(?w${7_BzrGxuo34c*I"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="HXS~CHgLIXb)B)w;vQ.h"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id=".*Q*ap4$T^(mQ17-JOX("> <field name="VAR" id=":Q9L@NdQzX?GQceIM~@g">0_userdata_PATH</field> </block> </value> <value name="ADD1"> <block type="text" id="@E}nGj4~eBnV9[{H(|[{"> <field name="TEXT">Power</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id=":?zJ6QM!B!)4Lzz7hLio"> <field name="BOOL">TRUE</field> </shadow> <block type="get_attr" id="c*QDsWv}+;sRWP$18}M("> <value name="PATH"> <shadow type="text" id="~YLlQ||(#2L@(1YLWPSj"> <field name="TEXT">attribute1</field> </shadow> <block type="text" id="Kmi3m0k`Hg2@O{O94OC4"> <field name="TEXT">ENERGY.Power</field> </block> </value> <value name="OBJECT"> <shadow type="get_object" id="wjCN|w.0qTGX,5/*/G-p"> <field name="OID">Object ID</field> </shadow> <block type="variables_get" id="bdLosl.OwUVso^CjPx,m"> <field name="VAR" id="SRUudM#Hd1.yV/:)yGQT">Object_SENSOR</field> </block> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="*LjOtTK.E6GNtd13k5lx"> <field name="NUM">0</field> </shadow> </value> <next> <block type="control_ex" id="[LnmKatd0}@7U7?)$)f)"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="I(?w${7_BzrGxuo34c*I"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="SKG0~zf@:{X*!9RBrxoH"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="y0+^V}(fR,fkct!HNw`8"> <field name="VAR" id=":Q9L@NdQzX?GQceIM~@g">0_userdata_PATH</field> </block> </value> <value name="ADD1"> <block type="text" id="xO%hK@y=[X3s?lIa0R$m"> <field name="TEXT">Voltage</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id=":?zJ6QM!B!)4Lzz7hLio"> <field name="BOOL">TRUE</field> </shadow> <block type="get_attr" id="^KHF#YP1(036b/ZBJ3@H"> <value name="PATH"> <shadow type="text" id="~YLlQ||(#2L@(1YLWPSj"> <field name="TEXT">attribute1</field> </shadow> <block type="text" id=".R*C,X]#n+f(;c+$z9iP"> <field name="TEXT">ENERGY.Voltage</field> </block> </value> <value name="OBJECT"> <shadow type="get_object" id="wjCN|w.0qTGX,5/*/G-p"> <field name="OID">Object ID</field> </shadow> <block type="variables_get" id="/?Z_[o{9Z[YfV_6g3hd0"> <field name="VAR" id="SRUudM#Hd1.yV/:)yGQT">Object_SENSOR</field> </block> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="bTqVBo[;$!^p_}X{*TZx"> <field name="NUM">0</field> </shadow> </value> <next> <block type="control_ex" id="zp9Eoc8b?6Xk}6;rDi22"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="I(?w${7_BzrGxuo34c*I"> <field name="oid">Object ID</field> </shadow> <block type="text_join" id="9Tgt](TMDBPf/Y)c3QTk"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id=":q!h9fc}1gPh4p!%,inT"> <field name="VAR" id=":Q9L@NdQzX?GQceIM~@g">0_userdata_PATH</field> </block> </value> <value name="ADD1"> <block type="text" id="cX$GaUgDnHG`M)0~Li#{"> <field name="TEXT">Current</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id=":?zJ6QM!B!)4Lzz7hLio"> <field name="BOOL">TRUE</field> </shadow> <block type="get_attr" id="khAy$CQ^a#nFcLPIQ%^("> <value name="PATH"> <shadow type="text" id="~YLlQ||(#2L@(1YLWPSj"> <field name="TEXT">attribute1</field> </shadow> <block type="text" id="Mt5UGVDrp-MnKLs/zT}~"> <field name="TEXT">ENERGY.Current</field> </block> </value> <value name="OBJECT"> <shadow type="get_object" id="wjCN|w.0qTGX,5/*/G-p"> <field name="OID">Object ID</field> </shadow> <block type="variables_get" id="wka%[pewQbuQnKecr`e$"> <field name="VAR" id="SRUudM#Hd1.yV/:)yGQT">Object_SENSOR</field> </block> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="7AXK(v24DrSwg*]|y[i7"> <field name="NUM">0</field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> <block type="comment" id="*9ixR/c+1%XPz$~y1b;q" x="138" y="413"> <field name="COMMENT">Grundeinstellungen</field> <next> <block type="variables_set" id="/r_Q^05Z4l%~43?C|}{;"> <field name="VAR" id=":Q9L@NdQzX?GQceIM~@g">0_userdata_PATH</field> <value name="VALUE"> <block type="text" id="M?FQPnE+X+qa?u$Az!es"> <field name="TEXT">0_userdata.0.Stromzaehler.</field> </block> </value> <next> <block type="variables_set" id="]wDO:tm[[.z@k77hf*Y("> <field name="VAR" id="!qYu^r4@Gqpr6?JoobZB">MQTT_SourcePath_SENSOR</field> <value name="VALUE"> <block type="text" id="!$WCG3JeZfQ.8bigW!7-"> <field name="TEXT">mqtt.0.Stromzaehler.SENSOR</field> </block> </value> <next> <block type="comment" id="lMIVE#j:UU2f?btP)i6K"> <field name="COMMENT">Ziel-Datenpunkte erstellen</field> <next> <block type="procedures_callcustomnoreturn" id="uV3PEUA!{:-$$VDg=3Fm" inline="false"> <mutation name="CreatyMyStateV3"> <arg name="RootPath"></arg> <arg name="JSONValueName"></arg> <arg name="TargetType"></arg> <arg name="TargetIsWriteable"></arg> <arg name="TargetUnit"></arg> <arg name="TargetDefaultValue"></arg> </mutation> <value name="ARG0"> <block type="variables_get" id="m7tB1|8-7hD8*-%9C=jl"> <field name="VAR" id=":Q9L@NdQzX?GQceIM~@g">0_userdata_PATH</field> </block> </value> <value name="ARG1"> <block type="text" id="EE4oIl.g!pv-6h44/RK8"> <field name="TEXT">Total</field> </block> </value> <value name="ARG2"> <block type="text" id="R%3MJ+b.G{6-Im-7%Yl("> <field name="TEXT">number</field> </block> </value> <value name="ARG3"> <block type="logic_boolean" id="_FsOtdVo.N_fNvUURqB:"> <field name="BOOL">FALSE</field> </block> </value> <value name="ARG4"> <block type="text" id="^pH)C(T_p{Ya`fz-=s2u"> <field name="TEXT">kWh</field> </block> </value> <value name="ARG5"> <block type="math_number" id="A0erevt+@QjH^kj@-y#("> <field name="NUM">0</field> </block> </value> <next> <block type="procedures_callcustomnoreturn" id="-{kne`LJY(kd%y~5oSu:" inline="false"> <mutation name="CreatyMyStateV3"> <arg name="RootPath"></arg> <arg name="JSONValueName"></arg> <arg name="TargetType"></arg> <arg name="TargetIsWriteable"></arg> <arg name="TargetUnit"></arg> <arg name="TargetDefaultValue"></arg> </mutation> <value name="ARG0"> <block type="variables_get" id="y3h=7OP?|UXj[)h1{}Wb"> <field name="VAR" id=":Q9L@NdQzX?GQceIM~@g">0_userdata_PATH</field> </block> </value> <value name="ARG1"> <block type="text" id="*Cr+*:b4vnRQ@^~|Ov6Y"> <field name="TEXT">Power</field> </block> </value> <value name="ARG2"> <block type="text" id="z$.tidyv.a1.fW+#nT]^"> <field name="TEXT">number</field> </block> </value> <value name="ARG3"> <block type="logic_boolean" id="9(P5eQ~Vym.pW=)K_8HH"> <field name="BOOL">FALSE</field> </block> </value> <value name="ARG4"> <block type="text" id="6S6YeqUr:cK{!^ciKOEM"> <field name="TEXT">W</field> </block> </value> <value name="ARG5"> <block type="math_number" id="ifU-hHdp:~0Ep(#IR`Pu"> <field name="NUM">0</field> </block> </value> <next> <block type="procedures_callcustomnoreturn" id="+26oG0Xoxxp(!9(X8nV%" inline="false"> <mutation name="CreatyMyStateV3"> <arg name="RootPath"></arg> <arg name="JSONValueName"></arg> <arg name="TargetType"></arg> <arg name="TargetIsWriteable"></arg> <arg name="TargetUnit"></arg> <arg name="TargetDefaultValue"></arg> </mutation> <value name="ARG0"> <block type="variables_get" id="/l|OvCPKRrI$;s)j+Fgn"> <field name="VAR" id=":Q9L@NdQzX?GQceIM~@g">0_userdata_PATH</field> </block> </value> <value name="ARG1"> <block type="text" id="F_aucq:niB@N],@Kf+Ez"> <field name="TEXT">Voltage</field> </block> </value> <value name="ARG2"> <block type="text" id="*[,sz./_$[`@Vuog4#,R"> <field name="TEXT">number</field> </block> </value> <value name="ARG3"> <block type="logic_boolean" id="Xz7j!h$$D/T:J(b|#}cv"> <field name="BOOL">FALSE</field> </block> </value> <value name="ARG4"> <block type="text" id="?S(x=_,KG/EoGDcYK+7y"> <field name="TEXT">V</field> </block> </value> <value name="ARG5"> <block type="math_number" id="5^Q{6L`^=n:?b:/}W97v"> <field name="NUM">0</field> </block> </value> <next> <block type="procedures_callcustomnoreturn" id="I9@f*HVdWc},)N}*?Krt" inline="false"> <mutation name="CreatyMyStateV3"> <arg name="RootPath"></arg> <arg name="JSONValueName"></arg> <arg name="TargetType"></arg> <arg name="TargetIsWriteable"></arg> <arg name="TargetUnit"></arg> <arg name="TargetDefaultValue"></arg> </mutation> <value name="ARG0"> <block type="variables_get" id="?{jUuh%1?4S~D7kqt{a]"> <field name="VAR" id=":Q9L@NdQzX?GQceIM~@g">0_userdata_PATH</field> </block> </value> <value name="ARG1"> <block type="text" id="*3k}jtr7+7udwn$ZzA7y"> <field name="TEXT">Current</field> </block> </value> <value name="ARG2"> <block type="text" id="EvKGCe8L_Ixm[b9uZ`ng"> <field name="TEXT">number</field> </block> </value> <value name="ARG3"> <block type="logic_boolean" id="~3pfjdeE[m?gbotMOtE9"> <field name="BOOL">FALSE</field> </block> </value> <value name="ARG4"> <block type="text" id="m;DGw@dUiemgZt[b7,Hm"> <field name="TEXT">A</field> </block> </value> <value name="ARG5"> <block type="math_number" id="B64@kw7,m,^J70!!NeIB"> <field name="NUM">0</field> </block> </value> <next> <block type="procedures_callnoreturn" id="rAP9bm1f9M2D.tpSnDva"> <mutation name="Write_SENSOR_to_userdata"> <arg name="Object_SENSOR"></arg> </mutation> <value name="ARG0"> <block type="convert_json2object" id="C`iqZeA(ISfgD7GSQ@|J"> <value name="VALUE"> <block type="get_value_var" id="g@wo5y@xC`XN?rizI5r3"> <field name="ATTR">val</field> <value name="OID"> <shadow type="field_oid" id="]TMS4H+UfXa1==$@U;0p"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id=";5vv};DvJdXgXOw[koP="> <field name="VAR" id="!qYu^r4@Gqpr6?JoobZB">MQTT_SourcePath_SENSOR</field> </block> </value> </block> </value> </block> </value> <next> <block type="on_ext" id="rv5xi)oE]v%An5b)J*Fh"> <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="O@-90ZvG~P/ElRQrWG`{"> <field name="oid">default</field> </shadow> <block type="variables_get" id="8xUgZCOm!f,h29Ov?+3b"> <field name="VAR" id="!qYu^r4@Gqpr6?JoobZB">MQTT_SourcePath_SENSOR</field> </block> </value> <statement name="STATEMENT"> <block type="procedures_callnoreturn" id="q)4.LnA}C0xNYC^!C,PA"> <mutation name="Write_SENSOR_to_userdata"> <arg name="Object_SENSOR"></arg> </mutation> <value name="ARG0"> <block type="convert_json2object" id="$[OH7R:*oQ[-^@lXhC(W"> <value name="VALUE"> <block type="on_source" id="P_bBXl9P)6w;p7(IdGS("> <field name="ATTR">state.val</field> </block> </value> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </xml>
Die richtigen Datenpunkte legt es auch gleich an, beim Start werden sofort einmal die Werte gelesen und bei jeder Änderung aktualisiert.Unter den
Grundeinstellungen
kannst du anpassen wohin die Daten geschrieben werden (Bitte einen.
am Ende!) und woher die Daten kommen.Mag sein das es auch mit Aliasen geht, damit kenn ich mich aber nicht aus.
Nachtrag: die dunklen Streifen in den Bildern kommen von der Taskleiste, ich musste die Screenshots über 2 Bildschirme senkrecht machen
-
@Stefan341
Wie @MartinP schon schrieb: Mit Aliasen geht das mit der passenden Konvertierung komplett ohne Script. -
@BananaJoe danke für das echt umfangreiche Script. Da muss ich mich mal ansetzen und es versuchen zu verstehen. Ich will ja nicht einfach nur kopieren sondern auch verstehen was ich mache.
@codierknecht
Gestern Abend habe ich das mit den Aliasen nicht mehr kapiert. Kann aber auch an der Uhrzeit gelegen haben. Ich schau mir das jetzt nochmal an und Versuche mal das umzusetzen. Die Variante erscheint mir auf dem ersten Blick am übersichtlichsten. -
@codierknecht
Es fängt bei mir schon früh an mit den Fragen :). Ich lege als ein neues Gerät an? Welchen Gerätetyp wähle ich?
-
@stefan341 sagte in Smartmeter-Lesekopf sendet keine Daten:
@BananaJoe danke für das echt umfangreiche Script. Da muss ich mich mal ansetzen und es versuchen zu verstehen. Ich will ja nicht einfach nur kopieren sondern auch verstehen was ich mache.
Naja, sieht nur nach viel aus. Das komplizierte ist ggf. meine JavaScript Funktion für das Anlegen der neuen Datenpunkte.
Das geht auch mit dem fertigen Baustein, dann muss man aber die einzelnen Optionen in einem JSON übergeben - ich fand es so einfacher. Wenn man das weglässt bleibt das abholen der Daten und setzen der Datenpunkte.
Weil ich das beim Start des Skriptes auch einmal ausgeführt haben wollte ist das in einer Funktion gelandet - sonst hätte ich das einmal separat und einmal im Trigger einbauen müssen - so wird es nur einmal hinterlegt und dann 2x genutzt.Und ja - das mit den Aliasen hat mich ähnlich verwirrt. Es gibt auch noch einen Adapter (Alias-Adapter), aber beide Wege fand ich verwirrend da ich z.B. bei mir "Geräte" nicht nutze. Ich lese hier mal mit, vielleicht lerne ich ja etwas.
-
@stefan341
Kein Gerät!
Dafür braucht man keinen Adapter.Einfach nur im Objektbaum unterhalb von
alias.0
einen neuen State anlegen.
Für die Leistung etc. als Zahl, für die Zählernummer als Zeichenkette. -
@codierknecht
Ah ok. Jetzt habe ich es verstanden. Soweit konnte ich alles entsprechend eintragen. Das Ergebnis wird aber "undefiniert" -
@stefan341
Groß-/Kleinschreibung bei JSON beachten -
Jetzt funktioniert es. Mit Alias ist das echt ziemlich einfach. Danke an alle Beteiligten..