Hallo zusammen,
ich habe nach einem Ausfall einen Shelly2.5 durch einen 2pm ersetzt. Ich nutze MQTT plain ohne Shelly adapter oder ähnliches. (per MQTT App am Smartphone steuere ich gelegentlich verschiedene Geräte)
Ich war erstmal erstaunt über die neue und nicht gerade einfachere Syntax
Ich habe im Forum nix griffiges zur einfachen Ansteuerung gefunden...
https://forum.iobroker.net/topic/64204/shellys-alt-und-plus-über-mqtt-adapter
Auf die schnelle (01:20 ) wollte ich den Rollo im Konglomerat inkl. Skripte wieder funktionsfähig haben und habe mir kurzerhand und hemdsärmlig einen Converter geschrieben der POS zwischen der alten und neuen Instanz hin und her synchronisiert:
hier das Blockly zum Import:
Spoiler
<xml xmlns="https://developers.google.com/blockly/xml ">
<variables>
<variable id="XU1_RgZ+ovtaQCQHiSW">shelly25_object_id</variable>
<variable id="Onb+@uMSaj!pcNmAUcf9">shelly2pm_object_id</variable>
<variable id="(J1=nwBf8AWtW{4$N49i">json_val</variable>
</variables>
<block type="variables_set" id="_9fTz+AL%i.bv {$|5lXk" x="88" y="13">
<field name="VAR" id="XU1_Rg Z+ovtaQCQHiSW">shelly25_object_id</field>
<value name="VALUE">
<block type="text" id="O+yl8NMnk~E#8GP%P^VD">
<field name="TEXT">mqtt-client.0.shellies.shellyswitch25-C45BBE6C47BF</field>
</block>
</value>
<next>
<block type="variables_set" id="Bjo;wYxEP^@0#j%Q,H">
<field name="VAR" id="Onb+@uMSaj!pcNmAUcf9">shelly2pm_object_id</field>
<value name="VALUE">
<block type="text" id="]Q2SVGIn(h ,!o00FTHs">
<field name="TEXT">mqtt-client.0.shellyplus2pm-b0b21c1056b4</field>
</block>
</value>
<next>
<block type="on_ext" id="HJ_Qo*!l9MnSy|8i(So"> <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="C.W,Jx6LI8
=fOFfD?eO">
<field name="oid">mqtt-client.0.shellies.shellyswitch25-C45BBE6C47BF.roller.0.command.pos</field>
</shadow>
<block type="text_join" id="!!x4vQlC*ikH?WE3g@V">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="variables_get" id="j7xm{FCX|6A:O7lUx :w">
<field name="VAR" id="XU1_Rg*Z+ovtaQCQHiSW">shelly25_object_id</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="!r)A.A:El!Zt o3r#.C"> <field name="TEXT">.roller.0.command.pos</field> </block> </value> </block> </value> <statement name="STATEMENT"> <block type="control_ex" id="hVKt9aNzha9*Dj%Add$b"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="rAy
4[4JzEs}jfOP5$u;">
<field name="oid">Object ID</field>
</shadow>
<block type="text_join" id="+cfJJ)^.TFOfHKh[+N:j">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="variables_get" id="g7kQx0H]6FMqHc)@*uL"> <field name="VAR" id="Onb+@uMSaj!pcNmAUcf9">shelly2pm_object_id</field> </block> </value> <value name="ADD1"> <block type="text" id="mkf%UoN7q}G8,$bdSAc^"> <field name="TEXT">.command.cover:0</field> </block> </value> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="L[y/Eakx~(bWf?DIa-Sm"> <field name="BOOL">TRUE</field> </shadow> <block type="text_join" id=";KX,d#n8yvv(*GL,Foh4"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="y9eUkHQKITj+DwoCMCj7"> <field name="TEXT">pos,</field> </block> </value> <value name="ADD1"> <block type="convert_tostring" id="TkS9c2OyMV{9fE[/7b@R"> <value name="VALUE"> <block type="on_source" id="{hzT/tac(+7}03E+=%!7"> <field name="ATTR">state.val</field> </block> </value> </block> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="/SF~g:@0hPElCY^piaY*"> <field name="NUM">0</field> </shadow> </value> </block> </statement> <next> <block type="on_ext" id="b,PKCQ.q:DK-MTbdBnFO"> <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="C.W,Jx6LI8
=fOFfD?eO">
<field name="oid">mqtt-client.0.shellies.shellyswitch25-C45BBE6C47BF.roller.0.command.pos</field>
</shadow>
<block type="text_join" id="rgn;/s3X|NWb}mNf%k,u">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="variables_get" id="7DxCIi[ED.}LB[PD.o"> <field name="VAR" id="Onb+@uMSaj!pcNmAUcf9">shelly2pm_object_id</field> </block> </value> <value name="ADD1"> <block type="text" id="G#7:Go4qfeKO5o,wgYF4"> <field name="TEXT">.status.cover:0</field> </block> </value> </block> </value> <statement name="STATEMENT"> <block type="debug" id="sWmURegIPFt5mz5R:5m|" disabled="true"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="5%{?:JnE[nK:EDL5##;M"> <field name="TEXT">test</field> </shadow> <block type="on_source" id="J@0:LJky_HG.
kNRLP.%">
<field name="ATTR">id</field>
</block>
</value>
<next>
<block type="debug" id="PiGKHq.-:0^uWeb/^1)3" disabled="true">
<field name="Severity">log</field>
<value name="TEXT">
<shadow type="text" id="o:4[$2HgNRa4]k|D:BI!">
<field name="TEXT">test</field>
</shadow>
<block type="get_value_var" id="9}/,(F9I^S%emkpK/lci">
<field name="ATTR">val</field>
<value name="OID">
<shadow type="field_oid" id=".]y5b8tADv:2hL|YD|#l">
<field name="oid">Object ID</field>
</shadow>
<block type="on_source" id="U_XzpGgf?rB9#]s,=dmI">
<field name="ATTR">id</field>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id="R0kN7,VdMQDMCP[opNv0">
<field name="VAR" id="(J1=nwBf8AWtW{4$N49i">json_val</field>
<value name="VALUE">
<block type="get_attr" id="rL[Qby)S89WSZ@xGLaxO">
<value name="PATH">
<shadow type="text" id="47k$eL@maK49)~Pt}.8U">
<field name="TEXT">current_pos</field>
</shadow>
</value>
<value name="OBJECT">
<block type="on_source" id="fu|dpb.1B?H$G_A_xGZ%">
<field name="ATTR">state.val</field>
</block>
</value>
</block>
</value>
<next>
<block type="control_ex" id=":TTvgXE%@]kR1ox(5=l3">
<field name="TYPE">false</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="OID">
<shadow type="field_oid" id="rAy`4[4JzEs}jfOP5$u;">
<field name="oid">Object ID</field>
</shadow>
<block type="text_join" id="?Tvix;qpd:FhJOzM+O=|">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="variables_get" id="$b6xXV!#ZXn8$Siw!s,3">
<field name="VAR" id="XU1_Rg Z+ovtaQCQHiSW">shelly25_object_id</field>
</block>
</value>
<value name="ADD1">
<block type="text" id="BRB0TgtuW!zxw?:BT~LO">
<field name="TEXT">.roller.0.pos</field>
</block>
</value>
</block>
</value>
<value name="VALUE">
<shadow type="logic_boolean" id="L[y/Eakx~(bWf?DIa-Sm">
<field name="BOOL">TRUE</field>
</shadow>
<block type="convert_tostring" id="J|O0t2L;D-0s!79xDSlr">
<value name="VALUE">
<block type="variables_get" id="|3*nvk[Y0Ld~xn!uMJ9#">
<field name="VAR" id="(J1=nwBf8AWtW{4$N49i">json_val</field>
</block>
</value>
</block>
</value>
<value name="DELAY_MS">
<shadow type="math_number" id="5UFJorE~~LS/TFMoJ=u3">
<field name="NUM">0</field>
</shadow>
</value>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</xml>
Ich würde gerne verstehe ob ich der einzige Horst bin der das nicht kapiert und ob es eine einfachere Lösung für die Ansteuerung der Gen2 Geräte gibt.
Danke