ioBroker / MQTT
Re: ioBroker / MQTT
Hi,
die empfehlung, welche ich von mehreren Seiten gelesen habe ist, nicht Skripte per Blockly zu de/aktivieren. Es macht lt. der Empfehlung mehr Sinn, zb bool Datenpunkte zu nutzen, welche auf true gehen und das Blockly triggern. Falls ich es so mache wie du vorschlägst, brauche ich einige separate Blockly Skripte. Das macht es in der Wartung dann auch nicht unkomplizierter.
Im Bestfall würde das Blockly Skript einen Übergabeparameter akzeptieren, dann könnte ich im vis die Funktion aufrufen und den Wert übergeben. Geht m.W.n. nicht, daher ist es so gelöst.
Telegram nutze ich (ich lasse mir u.a. morgens umfangreiche Infos schicken): Ich habe auch von der Möglichkeit gelesen, über Telegram zu steuern. Gerne würde ich es mal testen. Kannst du es im Bestfall im Wiki teilen? Ansonsten gerne hier.
Funktioniert bei dir das Setzen des Subchargemode (kWh Laden/ SoC Laden) über mqtt?
die empfehlung, welche ich von mehreren Seiten gelesen habe ist, nicht Skripte per Blockly zu de/aktivieren. Es macht lt. der Empfehlung mehr Sinn, zb bool Datenpunkte zu nutzen, welche auf true gehen und das Blockly triggern. Falls ich es so mache wie du vorschlägst, brauche ich einige separate Blockly Skripte. Das macht es in der Wartung dann auch nicht unkomplizierter.
Im Bestfall würde das Blockly Skript einen Übergabeparameter akzeptieren, dann könnte ich im vis die Funktion aufrufen und den Wert übergeben. Geht m.W.n. nicht, daher ist es so gelöst.
Telegram nutze ich (ich lasse mir u.a. morgens umfangreiche Infos schicken): Ich habe auch von der Möglichkeit gelesen, über Telegram zu steuern. Gerne würde ich es mal testen. Kannst du es im Bestfall im Wiki teilen? Ansonsten gerne hier.
Funktioniert bei dir das Setzen des Subchargemode (kWh Laden/ SoC Laden) über mqtt?
Viele Grüße
mading
Fronius Symo 7.0.3M mit SmartMeter - 6,96kwp | openWB series2 standard+ | Visualisierung + Steuerung mit iobroker/ vis und Grafana | VW ID4
mading
Fronius Symo 7.0.3M mit SmartMeter - 6,96kwp | openWB series2 standard+ | Visualisierung + Steuerung mit iobroker/ vis und Grafana | VW ID4
-
- Beiträge: 718
- Registriert: Mo Okt 12, 2020 7:41 am
Re: ioBroker / MQTT
So, hier der Code
Code: Alles auswählen
<xml xmlns="https://developers.google.com/blockly/xml">
<variables>
<variable id="-EabBb+%hAa-j:P+)qv]">empfaenger</variable>
<variable id="xDz*y;?%{^[8Vk,nQV-P">text</variable>
<variable id="`!{8BHd/,N4_2%rW6T28">keyboard</variable>
<variable id="U$V2cU{`A^AVZ4DE+[s.">telegramAbsender</variable>
<variable id="NFTd-UWW-EjeI,bsPdWU">telegramNachricht</variable>
<variable id="8,(nT=I0vb.D~SFf}4IZ">aktivesUntermenu</variable>
</variables>
<block type="procedures_defcustomnoreturn" id="qyfPUG#B#7i1e)vOb61n" x="-888" y="162">
<mutation statements="false">
<arg name="empfaenger" varid="-EabBb+%hAa-j:P+)qv]"></arg>
<arg name="text" varid="xDz*y;?%{^[8Vk,nQV-P"></arg>
<arg name="keyboard" varid="`!{8BHd/,N4_2%rW6T28"></arg>
</mutation>
<field name="NAME">zeigeMenu</field>
<field name="SCRIPT">c2VuZFRvKCd0ZWxlZ3JhbS4wJywgewogICAgdXNlcjogZW1wZmFlbmdlciwKICAgIHRleHQ6IHRleHQsCiAgICByZXBseV9tYXJrdXA6IHsKICAgICAgICBrZXlib2FyZDoga2V5Ym9hcmQsCiAgICAgICAgcmVzaXplX2tleWJvYXJkOiB0cnVlLAogICAgICAgIG9uZV90aW1lX2tleWJvYXJkOiBmYWxzZQogICAgfQp9KTs=</field>
<comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
</block>
<block type="on" id=",`0}?,@2)+TSm`|c_~pb" x="-888" y="238">
<field name="OID">telegram.0.communicate.request</field>
<field name="CONDITION">any</field>
<field name="ACK_CONDITION"></field>
<statement name="STATEMENT">
<block type="variables_set" id="|XMUgt(B1-Z?VV,Y`QjJ" collapsed="true">
<field name="VAR" id="U$V2cU{`A^AVZ4DE+[s.">telegramAbsender</field>
<value name="VALUE">
<block type="text_getSubstring" id="%bE7DR$;4#jzi?63*AC%" inline="false">
<mutation at1="true" at2="true"></mutation>
<field name="WHERE1">FROM_START</field>
<field name="WHERE2">FROM_START</field>
<value name="STRING">
<block type="on_source" id="y,!-!q[le)tIRMnbxU-4">
<field name="ATTR">state.val</field>
</block>
</value>
<value name="AT1">
<block type="math_number" id="`zEcO/zGG_[+$S}s(6L|">
<field name="NUM">2</field>
</block>
</value>
<value name="AT2">
<block type="math_arithmetic" id="NXWyU/Zq[7Myx3wT56|l" inline="false">
<field name="OP">MINUS</field>
<value name="A">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="t;eGi#.1vp(O5yT:+7Ny">
<field name="NUM">1</field>
</shadow>
<block type="text_indexOf" id="O^QI#GvB~YzaoZ0+ud+x" inline="false">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="on_source" id="W7aI[vxaTIX!}HQj:Q?%">
<field name="ATTR">state.val</field>
</block>
</value>
<value name="FIND">
<shadow type="text" id="]O_2M;=).u?[vd9r.(4w">
<field name="TEXT">]</field>
</shadow>
</value>
</block>
</value>
<value name="B">
<shadow type="math_number" id="edtJoy6-PF`0h-dCsZ[6">
<field name="NUM">1</field>
</shadow>
</value>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="kxUUlLoK=7(kN(37Hn,Q" collapsed="true">
<field name="VAR" id="NFTd-UWW-EjeI,bsPdWU">telegramNachricht</field>
<value name="VALUE">
<block type="text_getSubstring" id="#rV8Ph]Wmuc[_n.q9x2)" inline="false">
<mutation at1="true" at2="false"></mutation>
<field name="WHERE1">FROM_START</field>
<field name="WHERE2">LAST</field>
<value name="STRING">
<block type="on_source" id="h_GcU!a,,6a-y0#)mF1/">
<field name="ATTR">state.val</field>
</block>
</value>
<value name="AT1">
<block type="math_arithmetic" id="nq~*jzEm;$nO*lf,kUYO" inline="false">
<field name="OP">ADD</field>
<value name="A">
<shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="t;eGi#.1vp(O5yT:+7Ny">
<field name="NUM">1</field>
</shadow>
<block type="text_indexOf" id="bVmxtuY:3sjik7Hv/TQU" inline="false">
<field name="END">FIRST</field>
<value name="VALUE">
<block type="on_source" id=".c1D-=sy`)p8U?!52gS[">
<field name="ATTR">state.val</field>
</block>
</value>
<value name="FIND">
<shadow type="text" id="SO98aisB+3eO,vJtEI|2">
<field name="TEXT">]</field>
</shadow>
</value>
</block>
</value>
<value name="B">
<shadow type="math_number" id="rWGtzsSBdY[.4AI3qa8v">
<field name="NUM">1</field>
</shadow>
</value>
</block>
</value>
</block>
</value>
<next>
<block type="debug" id="6MY%RFEr]z-*e!bC~DN{">
<field name="Severity">log</field>
<value name="TEXT">
<shadow type="text" id="%,X$ZT2=;us/fdjI|zB-">
<field name="TEXT">test</field>
</shadow>
<block type="variables_get" id="Wvoj=w(+~]6q%(nD8ECT">
<field name="VAR" id="U$V2cU{`A^AVZ4DE+[s.">telegramAbsender</field>
</block>
</value>
<next>
<block type="controls_if" id="}~HLq2Gg6wOmxx=99QbF">
<mutation elseif="2" else="1"></mutation>
<value name="IF0">
<block type="logic_compare" id="7_z]+DS-`8t@q)f6gF1%">
<field name="OP">EQ</field>
<value name="A">
<block type="variables_get" id="}*Sw?~1CL?_Er{_a8Mog">
<field name="VAR" id="NFTd-UWW-EjeI,bsPdWU">telegramNachricht</field>
</block>
</value>
<value name="B">
<block type="text" id="0@fU+PA[S-`%fA2RDt+y">
<field name="TEXT">Hauptmenü</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="comment" id="Q8Be$t{li!JAsa4t4}ME">
<field name="COMMENT">Menu Hauptmenü</field>
<next>
<block type="variables_set" id="An1[v^04J6XRnX7[K9I^">
<field name="VAR" id="8,(nT=I0vb.D~SFf}4IZ">aktivesUntermenu</field>
<value name="VALUE">
<block type="text" id="^AplE5?)g8jzI0!cz)gB">
<field name="TEXT">Hauptmenü</field>
</block>
</value>
<next>
<block type="procedures_callcustomnoreturn" id="pq`)?ja{ZY3xzqSih.Jw">
<mutation name="zeigeMenu">
<arg name="empfaenger"></arg>
<arg name="text"></arg>
<arg name="keyboard"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="!gBp6Ai2]P.envi12h07">
<field name="VAR" id="U$V2cU{`A^AVZ4DE+[s.">telegramAbsender</field>
</block>
</value>
<value name="ARG1">
<block type="text" id="otUtC[oY](}RB#~|yQu}">
<field name="TEXT">Hauptmenu: Das sind Deine Möglichkeiten</field>
</block>
</value>
<value name="ARG2">
<block type="lists_create_with" id="qdU2fi%daeL3HYI{[3J[">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="lists_create_with" id="!L(+9#n?;aHok~2@oA2P" inline="true">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="text" id="*`P^mVD?WGCNV.8(PDRV">
<field name="TEXT">Erdgeschoss</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="-M~LIOB0_hHOLUOh-$qM">
<field name="TEXT">Tür</field>
</block>
</value>
</block>
</value>
<value name="ADD1">
<block type="lists_create_with" id="2U(mf;5JW8XVM)b[}tgM" inline="true">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="text" id="L9s1Y`i+d5jbZPVAg6A=">
<field name="TEXT">Garten</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="~0P#(RX6jOi[}NbYdC}H">
<field name="TEXT">Dach</field>
</block>
</value>
</block>
</value>
<value name="ADD2">
<block type="lists_create_with" id="|;J!l2svrpC7x{5!5^~i" inline="true">
<mutation items="1"></mutation>
<value name="ADD0">
<block type="text" id="Hk:@(xkw+cZ@^(sl5ks1">
<field name="TEXT">Keller</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</next>
</block>
</statement>
<value name="IF1">
<block type="logic_compare" id="_k|wAO}=1HDNY6x:0tj[">
<field name="OP">EQ</field>
<value name="A">
<block type="variables_get" id="]85[i*ou^AUVyq$rkvTL">
<field name="VAR" id="NFTd-UWW-EjeI,bsPdWU">telegramNachricht</field>
</block>
</value>
<value name="B">
<block type="text" id="#M2/kA+V#1!*6U|m-5pS">
<field name="TEXT">Wohnzimmer</field>
</block>
</value>
</block>
</value>
<statement name="DO1">
<block type="variables_set" id="hN932X{9Sazo6b1db[Rs">
<field name="VAR" id="8,(nT=I0vb.D~SFf}4IZ">aktivesUntermenu</field>
<value name="VALUE">
<block type="text" id="q2mc-t40EJS^pl94S%b6">
<field name="TEXT">Wohnzimmer</field>
</block>
</value>
<next>
<block type="procedures_callcustomnoreturn" id="oH^gOtYymlqxNwo-rQ=?">
<mutation name="zeigeMenu">
<arg name="empfaenger"></arg>
<arg name="text"></arg>
<arg name="keyboard"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="B,X_h*q]9VNBbTnEAL.g">
<field name="VAR" id="U$V2cU{`A^AVZ4DE+[s.">telegramAbsender</field>
</block>
</value>
<value name="ARG1">
<block type="text" id="qIT9|Q-r?;Z@E4?nii#+">
<field name="TEXT">Verfügbare Optionen im Wohnzimmer</field>
</block>
</value>
<value name="ARG2">
<block type="lists_create_with" id="7a^j:B|+4l-}3Zqn@`^k">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="lists_create_with" id="]%VS$C5SaV-TvRGsqF4a" inline="true">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="text" id="7:_3NhbtW$]M]VeEwChB">
<field name="TEXT">Teppichlicht schalten</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="0rTNMQ^hh;G(50?N}7v.">
<field name="TEXT">Sofalicht schalten</field>
</block>
</value>
</block>
</value>
<value name="ADD1">
<block type="lists_create_with" id="MahlCf1zerk8arHR)TUj" inline="true">
<mutation items="1"></mutation>
<value name="ADD0">
<block type="text" id=")Pv}tf;?t|Ky}m-0DFnA">
<field name="TEXT">Fernseher schalten</field>
</block>
</value>
</block>
</value>
<value name="ADD2">
<block type="lists_create_with" id="gyj9OY^8muGvqP03=A6J" inline="true">
<mutation items="1"></mutation>
<value name="ADD0">
<block type="text" id="}@uZ0WP~{JU7`nU_.K46">
<field name="TEXT">Hauptmenü</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</statement>
<value name="IF2">
<block type="logic_compare" id="_!SqWS;6GDHY=lrglWHW">
<field name="OP">EQ</field>
<value name="A">
<block type="variables_get" id="bi(uZ2:H1`3lj@VGVvT6">
<field name="VAR" id="NFTd-UWW-EjeI,bsPdWU">telegramNachricht</field>
</block>
</value>
<value name="B">
<block type="text" id="wWxSWFF{2]*!=Fhz/xEg">
<field name="TEXT">Erdgeschoss</field>
</block>
</value>
</block>
</value>
<statement name="DO2">
<block type="comment" id="OLVfuuc7W`qg.J}{90#Z">
<field name="COMMENT">Menu Erdgeschoss</field>
<next>
<block type="variables_set" id="j(+)D=!uFTeI,twQadW$">
<field name="VAR" id="8,(nT=I0vb.D~SFf}4IZ">aktivesUntermenu</field>
<value name="VALUE">
<block type="text" id="PrXDi:At*dO6{WBUDL`n">
<field name="TEXT">Erdgeschoss</field>
</block>
</value>
<next>
<block type="procedures_callcustomnoreturn" id="q7Mh1-|W+q{juLt_!%fj">
<mutation name="zeigeMenu">
<arg name="empfaenger"></arg>
<arg name="text"></arg>
<arg name="keyboard"></arg>
</mutation>
<value name="ARG0">
<block type="variables_get" id="O~=FMnMB[wR^bm#l3yMg">
<field name="VAR" id="U$V2cU{`A^AVZ4DE+[s.">telegramAbsender</field>
</block>
</value>
<value name="ARG1">
<block type="text" id="7[EQ2x:fXDd2e%@snTL4">
<field name="TEXT">Erdgeschoss: Welche Zimmer</field>
</block>
</value>
<value name="ARG2">
<block type="lists_create_with" id="jwivoyQ/D(VZG;S]:[A.">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="lists_create_with" id="P8?q`77T|$^N|x9V*6ox" inline="true">
<mutation items="3"></mutation>
<value name="ADD0">
<block type="text" id="jhZWP=_$!T/yTt{;o0(w">
<field name="TEXT">Wohnzimmer</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="Ft25W?j5E50ai{Q.e[`D">
<field name="TEXT">Caruso</field>
</block>
</value>
<value name="ADD2">
<block type="text" id="xb=JGH]fC9~B58[^y.R!">
<field name="TEXT">Küche</field>
</block>
</value>
</block>
</value>
<value name="ADD1">
<block type="lists_create_with" id="x4Vg/-kzt6LDquBc3SAc" inline="true">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="text" id="VdIt9AqvkyfFboFRv-X)">
<field name="TEXT">Schlafzimmer</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="}Q3e1|f7ox-n)w5gVY@F">
<field name="TEXT">Kinderzimmer</field>
</block>
</value>
</block>
</value>
<value name="ADD2">
<block type="lists_create_with" id="yymtNR_2?#{yfB)!s}9B" inline="true">
<mutation items="1"></mutation>
<value name="ADD0">
<block type="text" id="IC9oKLxAHsUCFFHM!5|S">
<field name="TEXT">Hauptmenü</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</next>
</block>
</next>
</block>
</statement>
<statement name="ELSE">
<block type="controls_if" id=".*JgV5IeHrI6q::^0G%u">
<mutation else="1"></mutation>
<value name="IF0">
<block type="logic_compare" id=";n~ln6y+YNJ1,29Z28%u">
<field name="OP">EQ</field>
<value name="A">
<block type="variables_get" id="=b2bmKRJ#!Y`!]sL7ll?">
<field name="VAR" id="8,(nT=I0vb.D~SFf}4IZ">aktivesUntermenu</field>
</block>
</value>
<value name="B">
<block type="text" id="X!d+n`[0k/D[Q2B1Pxa+">
<field name="TEXT">Wohnzimmer</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="comment" id="rVq]E%9Ue^wBVd5I3)-3">
<field name="COMMENT">Menu Wohnzimmer schalten</field>
<next>
<block type="controls_if" id="],Ib@tiC=N3q@}OEml(z">
<mutation elseif="2"></mutation>
<value name="IF0">
<block type="logic_compare" id="WuSnf~juwsB}+mvf!t]G">
<field name="OP">EQ</field>
<value name="A">
<block type="variables_get" id="IEW_R~/_={=+JltXr!RV">
<field name="VAR" id="NFTd-UWW-EjeI,bsPdWU">telegramNachricht</field>
</block>
</value>
<value name="B">
<block type="text" id="w1i9~20fwQVnnJ{`;!5d">
<field name="TEXT">Teppichlicht schalten</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="toggle" id="@48FiJuhwx-rEnwhMQm3">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">scene.0.Wohnzimmer.Teppichlicht_schalten</field>
<field name="WITH_DELAY">FALSE</field>
</block>
</statement>
<value name="IF1">
<block type="logic_compare" id="TyH_KWGp|IaTRs{k_nj!">
<field name="OP">EQ</field>
<value name="A">
<block type="variables_get" id="lv/P@fuMTw82GP`jtGFX">
<field name="VAR" id="NFTd-UWW-EjeI,bsPdWU">telegramNachricht</field>
</block>
</value>
<value name="B">
<block type="text" id="e![#a;-4n{~lYjOmI+.;">
<field name="TEXT">Fernseher schalten</field>
</block>
</value>
</block>
</value>
<statement name="DO1">
<block type="toggle" id="$)C`Q-``P]]Y4~=$c@#)">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">shelly.0.SHPLG-S#B58315#1.Relay0.Switch</field>
<field name="WITH_DELAY">FALSE</field>
</block>
</statement>
<value name="IF2">
<block type="logic_compare" id="}z(d/@U_DAU:)QNbnVlc">
<field name="OP">EQ</field>
<value name="A">
<block type="variables_get" id="t{cVM|l`cPs|{%PCc*+9">
<field name="VAR" id="NFTd-UWW-EjeI,bsPdWU">telegramNachricht</field>
</block>
</value>
<value name="B">
<block type="text" id="py7w_0c{7%$7+G=dDTkB">
<field name="TEXT">Sofalicht schalten</field>
</block>
</value>
</block>
</value>
<statement name="DO2">
<block type="toggle" id="0No@#6[X}fRMaT6*}LfU">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">scene.0.Wohnzimmer.Sofalicht_schalten</field>
<field name="WITH_DELAY">FALSE</field>
</block>
</statement>
</block>
</next>
</block>
</statement>
<statement name="ELSE">
<block type="telegram" id="!bk)@[%GmJzczv].0um$">
<field name="INSTANCE"></field>
<field name="LOG"></field>
<field name="SILENT">FALSE</field>
<field name="PARSEMODE">default</field>
<value name="MESSAGE">
<shadow type="text" id="!deUDra;M/P9C:^Eub;b">
<field name="TEXT">Schreibe Hauptmenü für alle Optionen</field>
</shadow>
</value>
<value name="USERNAME">
<block type="variables_get" id="3iLKtfNs-dJ2=tAW(K%;">
<field name="VAR" id="-EabBb+%hAa-j:P+)qv]">empfaenger</field>
</block>
</value>
</block>
</statement>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</xml>
Ihr müsst den Code natürlich für euch anpassen! Grundsätzlich könnt ihr so aber alle Datenpunkte steuern.
Es macht Sinn sich vorher Gedanken über die Struktur zu machen, damit man nicht in den Wald kommt. Ich habe mich z.B. für Erdgeschoss, Keller, Dach und Garten entschieden und von da aus dann die einzelnen Räume, es geht aber auch anders. Von da aus kann man sich durch die Menüs hangeln.
Kurz gesagt wertet es die Nachrichten in Telegram aus. Die Buttons sind nichts anders als Textshortcuts, ich könnte also den Butten Wohnzimmer drücken oder aber auch Wohnzimmer schreiben.
So ist die Steuerung aller Objekte möglich.
Liebe Grüße
Simon
-
- Beiträge: 252
- Registriert: Mi Okt 07, 2020 6:34 pm
- Been thanked: 1 time
Re: ioBroker / MQTT
Guten Morgen @ all,
ich hänge mich mal in diesen Thread, da sich hier offensichtlich mehrere ioBroker User tummeln. Ich hatte meine Anliegen bereits in anderen Beiträgen im Forum verteilt, aber leider so gut wie kein Feedback darauf erhalten.
Ich möchte verschiedene Daten aus openWB gerne via MQTT in ioBroker darstellen. In den ioBroker MQTT DP`s, sind diese Datenpunkte aber nicht zu finden. Heißt das automatisch, das es diese Datenpunkte nicht gibt, oder das diese nur dann sichtbar sind, wenn sie einmal angestoßen werden (wie auch immer das gehen soll)?
Konkret geht es um die Daten die im Ladelog ausgegeben werden. Die müssen ja auch irgendwo in openWB gespeichert werden - aber wie kommt man da ran? Speziell geht es um Sachen wie Kosten und geladenen Kilometer.
Ich habe hier im Thread von vielen gelesen, das sie gerne Werte aus ioB heraus in openWB schreiben wollen. Das war Anfangs auch mein Wunsch. Mittlerweile habe ich mich aber dafür entschieden, das openWB Theme Cards als iFrame in ioB einzubinden und von dort aus alle gewünschten Änderungen in Richtung openWB auszuführen. Vielleicht ist das für den einen oder anderen ebenfalls ein Alternative.
ich hänge mich mal in diesen Thread, da sich hier offensichtlich mehrere ioBroker User tummeln. Ich hatte meine Anliegen bereits in anderen Beiträgen im Forum verteilt, aber leider so gut wie kein Feedback darauf erhalten.
Ich möchte verschiedene Daten aus openWB gerne via MQTT in ioBroker darstellen. In den ioBroker MQTT DP`s, sind diese Datenpunkte aber nicht zu finden. Heißt das automatisch, das es diese Datenpunkte nicht gibt, oder das diese nur dann sichtbar sind, wenn sie einmal angestoßen werden (wie auch immer das gehen soll)?
Konkret geht es um die Daten die im Ladelog ausgegeben werden. Die müssen ja auch irgendwo in openWB gespeichert werden - aber wie kommt man da ran? Speziell geht es um Sachen wie Kosten und geladenen Kilometer.
Ich habe hier im Thread von vielen gelesen, das sie gerne Werte aus ioB heraus in openWB schreiben wollen. Das war Anfangs auch mein Wunsch. Mittlerweile habe ich mich aber dafür entschieden, das openWB Theme Cards als iFrame in ioB einzubinden und von dort aus alle gewünschten Änderungen in Richtung openWB auszuführen. Vielleicht ist das für den einen oder anderen ebenfalls ein Alternative.
Re: ioBroker / MQTT
Die Daily CSV Files (http://ip/openWB/web/logging/data/daily/) via Blockly parsen und den/die Wert(e) in einem Datenpunkt speichern.JB_Sullivan hat geschrieben: ↑Mi Aug 04, 2021 7:03 am Konkret geht es um die Daten die im Ladelog ausgegeben werden. Die müssen ja auch irgendwo in openWB gespeichert werden - aber wie kommt man da ran? Speziell geht es um Sachen wie Kosten und geladenen Kilometer.
-
- Beiträge: 252
- Registriert: Mi Okt 07, 2020 6:34 pm
- Been thanked: 1 time
Re: ioBroker / MQTT
Hast du mal ein Blockly Beispiel? Mit parsen habe ich bislang keine Erfahrung. Brauche ich da in ioB noch den Parsing Adapter?
Re: ioBroker / MQTT
Beispiel erst heute Abend... aber Moment, die geladenen Kilometer stehen bereits in einem ioBroker Datenpunkt, weil die lasse ich auch in Grafana darstellen.
// gelandene Kilometer
openWB/lp/1/kmCharged
Und den Preis bekommst du über eine math Funktion (in Grafana)
// geladene kWh seit anstecken des EV
openWB/lp/1/kWhChargedSincePlugged
Gesamtpreis = openWB/lp/1/kWhChargedSincePlugged mal deinen kwh Preis
// gelandene Kilometer
openWB/lp/1/kmCharged
Und den Preis bekommst du über eine math Funktion (in Grafana)
// geladene kWh seit anstecken des EV
openWB/lp/1/kWhChargedSincePlugged
Gesamtpreis = openWB/lp/1/kWhChargedSincePlugged mal deinen kwh Preis
Re: ioBroker / MQTT
Aufgrund eines Hinweises im Forum (über Status --> mqtt Log lässt sich überprüfen was das Web UI steuert) konnte ich die Steuerung nun fertig stellen. Bei mir funktioniert es soweit gut. Die Steuerung aller Lademodi inkl. Sofortladen (Ampere, kWH, SoC) geht.
https://github.com/snaptec/openWB/wiki/ ... oker-&-vis
https://github.com/snaptec/openWB/wiki/ ... oker-&-vis
Viele Grüße
mading
Fronius Symo 7.0.3M mit SmartMeter - 6,96kwp | openWB series2 standard+ | Visualisierung + Steuerung mit iobroker/ vis und Grafana | VW ID4
mading
Fronius Symo 7.0.3M mit SmartMeter - 6,96kwp | openWB series2 standard+ | Visualisierung + Steuerung mit iobroker/ vis und Grafana | VW ID4
Re: ioBroker / MQTT
Hallo zusammen,
zur Zeit scheitere ich daran, meine PV & EVU Daten vom ioBroker via MQTT an die openWB zu übergeben.
Obwohl ich aus meiner Sicht alles so berechne, wie es in den openWB Einstellungen vorgegeben wird und die Daten per MQTT an die openWB sende, werden sie dort nicht angenommen bzw. übernommen...
Ich sende die Daten an die openWB, sobald die PV-Anlage neue Daten ausgibt - sprich in etwa jede Sekunde wird ein neuer Datensatz übertragen.
Wenn ich den MQTT Adapter im ioBroker neu starte, dann übernimmt openWB einmalig den Wert und gibt ihn auch wieder aus - eine weitere Aktualisierung findet aber nicht mehr statt.
Hat jemand eine Idee, was ich falsch mache / falsch eingestellt habe?
zur Zeit scheitere ich daran, meine PV & EVU Daten vom ioBroker via MQTT an die openWB zu übergeben.
Obwohl ich aus meiner Sicht alles so berechne, wie es in den openWB Einstellungen vorgegeben wird und die Daten per MQTT an die openWB sende, werden sie dort nicht angenommen bzw. übernommen...
Ich sende die Daten an die openWB, sobald die PV-Anlage neue Daten ausgibt - sprich in etwa jede Sekunde wird ein neuer Datensatz übertragen.
Wenn ich den MQTT Adapter im ioBroker neu starte, dann übernimmt openWB einmalig den Wert und gibt ihn auch wieder aus - eine weitere Aktualisierung findet aber nicht mehr statt.
Hat jemand eine Idee, was ich falsch mache / falsch eingestellt habe?
-
- Beiträge: 718
- Registriert: Mo Okt 12, 2020 7:41 am
Re: ioBroker / MQTT
Hast du bei den Objekten/Werten die du publishen willst auch Publish an?Strobi hat geschrieben: ↑Mi Aug 25, 2021 5:30 pm Hallo zusammen,
zur Zeit scheitere ich daran, meine PV & EVU Daten vom ioBroker via MQTT an die openWB zu übergeben.
Obwohl ich aus meiner Sicht alles so berechne, wie es in den openWB Einstellungen vorgegeben wird und die Daten per MQTT an die openWB sende, werden sie dort nicht angenommen bzw. übernommen...
MQTT.PNG
Ich sende die Daten an die openWB, sobald die PV-Anlage neue Daten ausgibt - sprich in etwa jede Sekunde wird ein neuer Datensatz übertragen.
Wenn ich den MQTT Adapter im ioBroker neu starte, dann übernimmt openWB einmalig den Wert und gibt ihn auch wieder aus - eine weitere Aktualisierung findet aber nicht mehr statt.
Hat jemand eine Idee, was ich falsch mache / falsch eingestellt habe?
Ich musste die gesondert aktivieren. Werte die du publishen willst suchen, ganz rechts bei Einstellungen und dann Mqtt und Publish aktivieren
Re: ioBroker / MQTT
Wo genau meinst Du?thesorrow101 hat geschrieben: ↑Mi Aug 25, 2021 7:31 pm Hast du bei den Objekten/Werten die du publishen willst auch Publish an?
Ich musste die gesondert aktivieren. Werte die du publishen willst suchen, ganz rechts bei Einstellungen und dann Mqtt und Publish aktivieren
Die MQTT Einstellungen sehen wie folgt aus:
Wenn ich in den Objekten ganz rechts auf das Einstellungszahnrad gehe, kommt nur folgende Ansicht - mehr kann ich da nicht auswählen: Ich habe MQTT vorerst nur im Module "PV" aktiviert - muss ich das für einen Test in allen Modulen (PV, EVU, Speicher) aktivieren, damit es funktioniert?
Viele Grüße