Files
mixly3/boards/default/arduino_esp8266/examples/qC7av3_A2n_C/75PFkhTFmnvA.mix
2024-07-23 20:47:22 +08:00

1 line
9.5 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<xml version="Mixly 2.0 rc3" board="Arduino ESP8266@Generic ESP8266 Module"><block type="factory_notes" id="@YWf/x`h*@mr;OkGcla!" x="-842" y="-683"><field name="VALUE">当由于网络波动等情况造成MQTT断开时如果能获取断线状态&amp;#10; 那么我们就可以及时启用断线程序或者继续尝试连接MQTT服务器&amp;#10;恢复服务以下例子检测了设备与MQTT服务器连接并闪烁LED提示&amp;#10;同时尝试恢复MQTT服务与重新订阅text主题多功能按钮0单击将发送&amp;#10;Hello打印到串口监视器使用请修改为自己的WiFi与MQTT服务器信息&amp;#10;MixIO也可使用此方法处理离线问题</field><next><block type="serial_begin" id="jbf=NRCAwW44-7iKtO*U"><field name="serial_select">Serial</field><value name="CONTENT"><shadow type="math_number" id=";1WR~*=B;LcfXB_[Gd~3"><field name="NUM">9600</field></shadow></value><next><block type="WIFI_info" id="ZJT6V[uhin87FkUc/_0m"><value name="SSID"><shadow type="text" id="Y(l,A`/D/)Y8,?}A~w1b"><field name="TEXT">Netcore-65080F</field></shadow></value><value name="PWD"><shadow type="text" id="ab_KkL+yiI4[#`]6f,T2"><field name="TEXT">1234567890</field></shadow></value><next><block type="MQTT_subscribe_plus" id="!fOl7Yyr,WUtrD(35n3s"><value name="server"><shadow type="text" id="0]d6ziN;$ijf:]tv3IYp"><field name="TEXT">bemfa.com</field></shadow></value><value name="port"><shadow type="text" id="X:R)B|J?HI*5?[LgkX{S"><field name="TEXT">9501</field></shadow></value><value name="client_id"><shadow type="text" id="TFK;|0|5uyZ;~XrfA7!i"><field name="TEXT">d597ed83edb4c3fc25c89377dbe83f01</field></shadow></value><value name="mqtt_username"><shadow type="text" id="_f)T7ug9_WMrrrv1(+`g"><field name="TEXT"></field></shadow></value><value name="mqtt_password"><shadow type="text" id="!g?GNUx(R7]vtS2HdlEs"><field name="TEXT"></field></shadow></value></block></next></block></next></block></next></block><block type="MQTT_received_the_news" id="?xoaj,T!cWN/1^q3$2F@" x="-845" y="-249"><value name="topic"><shadow type="text" id="attPzKxL0D?(Bv;r[2=i"><field name="TEXT">text</field></shadow></value><statement name="function"><block type="serial_println" id=".a*JtCL:,9bWaF97[v8y"><field name="serial_select">Serial</field><field name="new_line">println</field><value name="CONTENT"><block type="variables_get" id="~efB8K)$+^=tW6:u])uI"><field name="VAR">mqtt_data</field></block></value></block></statement></block><block type="OneButton_interrupt" id="5wKWJIx|sJ=dirrL{Xbh" x="-847" y="-145"><field name="mode">attachClick</field><value name="PIN"><shadow type="pins_digital" id=":rRGfX3PoVl14sHU5Il^"><field name="PIN">0</field></shadow></value><value name="STAT"><shadow type="inout_highlow" id="gCL)`obcl5n~0yk`$}`K"><field name="BOOL">LOW</field></shadow></value><statement name="DO"><block type="MQTT_publish" id="ZKYcy`hxXe|kz$-}72vh"><value name="data"><shadow type="text" id="9iqNpfFr)1bp^12f30+q"><field name="TEXT">Hello</field></shadow></value><value name="topic"><shadow type="text" id="_cA}9*MD/y9X#;${9fwx"><field name="TEXT">text</field></shadow></value></block></statement></block><block type="simple_timer" id="#kfs^]|nS_WGh*Q*$RF8" x="-845" y="-26"><field name="NO">1</field><value name="timein"><shadow type="math_number" id="e6V}@KRM(*Ipd?9?5bZ7"><field name="NUM">1000</field></shadow></value><statement name="zxhs"><block type="controls_if" id="y{=O8KWu*eso]iP!?0bg"><mutation else="1"></mutation><value name="IF0"><block type="factory_block_return" id="dsY*S-zV#sH|+IG{Y}Dn"><field name="VALUE">!client.connected()</field><comment pinned="false" h="80" w="160">MQTT服务器断开连接</comment></block></value><statement name="DO0"><block type="folding_block" id="{;BmGIKyKt+oeK,EXUnI"><field name="peien">板载LED闪烁提示MQTT掉线</field><statement name="DO"><block type="inout_digital_write2" id="QsN.}=^PHHDsaB)Zal@W"><value name="PIN"><shadow type="pins_digital" id="V@nVQ@^rK+jG=ZJZ.l{R"><field name="PIN">2</field></shadow></value><value name="STAT"><shadow type="inout_highlow" id="fu~@)){/Zr#QIDp|ywFI"><field name="BOOL">HIGH</field></shadow><block type="logic_negate" id="T7w0r7MfEcfeVYbhZM@@"><value name="BOOL"><block type="inout_digital_read2" id="$:Y?r?F!b^2t}F8q!Fu["><value name="PIN"><shadow type="pins_digital" id="OMZTeJ5eMok@hO-R]jYl"><field name="PIN">2</field></shadow></value></block></value></block></value></block></statement><next><block type="folding_block" id=",Mp`xf]JA(-to1KQ1+sr"><field name="peien">尝试重连MQTT服务器格式参考setup中相关代码</field><statement name="DO"><block type="factory_block_with_textarea" id="=s/~|M}R!|)KB-9$S9J4"><field name="VALUE">String client_id = "d597ed83edb4c3fc25c89377dbe83f0e";&amp;#10;if (client.connect(client_id.c_str(), mqtt_username, mqtt_password)) {&amp;#10; Serial.println("Public emqx mqtt broker connected");&amp;#10;} else {&amp;#10; Serial.print("failed with state ");&amp;#10; Serial.print(client.state());&amp;#10;}</field></block></statement><next><block type="folding_block" id=",+Y$Vsj(`X2?Epo9s6HL"><field name="peien">订阅恢复text主题</field><statement name="DO"><block type="factory_block_with_textarea" id="/VW4ydPb4wx)SlxcV$hC"><field name="VALUE">client.subscribe(String("text").c_str());</field></block></statement></block></next></block></next></block></statement><statement name="ELSE"><block type="inout_digital_write2" id="!2us.:o2A?=ouc)BLbNh"><value name="PIN"><shadow type="pins_digital" id="BM{Z8hV5b~Tcm{B}QF)U"><field name="PIN">2</field></shadow></value><value name="STAT"><shadow type="inout_highlow" id="yXC$4EeI#i.G.e9/ltNb"><field name="BOOL">HIGH</field></shadow></value></block></statement></block></statement></block></xml><config>{"xtal":"80","vt":"flash","exception":"disabled","stacksmash":"disabled","ssl":"all","mmu":"3232","non32xfer":"fast","ResetMethod":"nodemcu","CrystalFreq":"26","FlashFreq":"40","FlashMode":"dout","eesz":"1M64","led":"2","sdk":"nonosdk_190703","ip":"lm2f","dbg":"Disabled","wipe":"none","baud":"115200"}</config><code>CiNpbmNsdWRlIDxFU1A4MjY2V2lGaS5oPgojaW5jbHVkZSA8UHViU3ViQ2xpZW50Lmg+CgojaW5jbHVkZSA8T25lQnV0dG9uLmg+CiNpbmNsdWRlIDxTaW1wbGVUaW1lci5oPgoKY29uc3QgY2hhciAqbXF0dF9icm9rZXIgPSAiYmVtZmEuY29tIjsKY29uc3QgY2hhciAqbXF0dF91c2VybmFtZSA9ICIiOwpjb25zdCBjaGFyICptcXR0X3Bhc3N3b3JkID0gIiI7CmNvbnN0IGludCBtcXR0X3BvcnQgPSA5NTAxOwpTdHJpbmcgbXF0dF90b3BpYyA9ICIiOwpTdHJpbmcgbXF0dF9kYXRhID0gIiI7CmJvb2xlYW4gbXF0dF9zdGF0dXMgPSBmYWxzZTsKV2lGaUNsaWVudCBlc3BDbGllbnQ7ClB1YlN1YkNsaWVudCBjbGllbnQoZXNwQ2xpZW50KTsKdm9pZCBjYWxsYmFjayhjaGFyICp0b3BpYywgYnl0ZSAqcGF5bG9hZCwgdW5zaWduZWQgaW50IGxlbmd0aCkgewogIFN0cmluZyBkYXRhID0gIiI7CiAgZm9yIChpbnQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewogICAgZGF0YSA9IFN0cmluZyhkYXRhKSArIFN0cmluZygoY2hhcikgcGF5bG9hZFtpXSk7CiAgfQogIG1xdHRfdG9waWMgPSBTdHJpbmcodG9waWMpOwogIG1xdHRfZGF0YSA9IGRhdGE7CiAgbXF0dF9zdGF0dXMgPSB0cnVlOwp9CgpPbmVCdXR0b24gYnV0dG9uMCgwLHRydWUpOwpTaW1wbGVUaW1lciB0aW1lcjsKCnZvaWQgYXR0YWNoQ2xpY2swKCkgewogIGNsaWVudC5wdWJsaXNoKFN0cmluZygidGV4dCIpLmNfc3RyKCksU3RyaW5nKCJIZWxsbyIpLmNfc3RyKCkpOwp9Cgp2b2lkIFNpbXBsZV90aW1lcl8xKCkgewogIC8vIE1RVFTmnI3liqHlmajmlq3lvIDov57mjqUKICBpZiAoIWNsaWVudC5jb25uZWN0ZWQoKSkgewogICAgZGlnaXRhbFdyaXRlKDIsKCFkaWdpdGFsUmVhZCgyKSkpOwogICAgU3RyaW5nIGNsaWVudF9pZCA9ICJkNTk3ZWQ4M2VkYjRjM2ZjMjVjODkzNzdkYmU4M2YwZSI7CiAgICAgIGlmIChjbGllbnQuY29ubmVjdChjbGllbnRfaWQuY19zdHIoKSwgbXF0dF91c2VybmFtZSwgbXF0dF9wYXNzd29yZCkpIHsKICAgICAgICBTZXJpYWwucHJpbnRsbigiUHVibGljIGVtcXggbXF0dCBicm9rZXIgY29ubmVjdGVkIik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgU2VyaWFsLnByaW50KCJmYWlsZWQgd2l0aCBzdGF0ZSAiKTsKICAgICAgICBTZXJpYWwucHJpbnQoY2xpZW50LnN0YXRlKCkpOwogICAgICB9CiAgICBjbGllbnQuc3Vic2NyaWJlKFN0cmluZygidGV4dCIpLmNfc3RyKCkpOwoKICB9IGVsc2UgewogICAgZGlnaXRhbFdyaXRlKDIsSElHSCk7CgogIH0KfQoKdm9pZCBzZXR1cCgpewogIFNlcmlhbC5iZWdpbig5NjAwKTsKICBXaUZpLmJlZ2luKCJOZXRjb3JlLTY1MDgwRiIsICIxMjM0NTY3ODkwIik7CiAgd2hpbGUgKFdpRmkuc3RhdHVzKCkgIT0gV0xfQ09OTkVDVEVEKSB7CiAgICBkZWxheSg1MDApOwogICAgU2VyaWFsLnByaW50KCIuIik7CiAgfQogIFNlcmlhbC5wcmludGxuKCJMb2NhbCBJUDoiKTsKICBTZXJpYWwucHJpbnQoV2lGaS5sb2NhbElQKCkpOwoKICBjbGllbnQuc2V0U2VydmVyKG1xdHRfYnJva2VyLCBtcXR0X3BvcnQpOwpjbGllbnQuc2V0Q2FsbGJhY2soY2FsbGJhY2spOwp3aGlsZSAoIWNsaWVudC5jb25uZWN0ZWQoKSkgewogIFN0cmluZyBjbGllbnRfaWQgPSAiZDU5N2VkODNlZGI0YzNmYzI1Yzg5Mzc3ZGJlODNmMDEiOwogIGlmIChjbGllbnQuY29ubmVjdChjbGllbnRfaWQuY19zdHIoKSwgbXF0dF91c2VybmFtZSwgbXF0dF9wYXNzd29yZCkpIHsKICAgIFNlcmlhbC5wcmludGxuKCJQdWJsaWMgZW1xeCBtcXR0IGJyb2tlciBjb25uZWN0ZWQiKTsKICB9IGVsc2UgewogICAgU2VyaWFsLnByaW50KCJmYWlsZWQgd2l0aCBzdGF0ZSAiKTsKICAgIFNlcmlhbC5wcmludChjbGllbnQuc3RhdGUoKSk7CiAgICBkZWxheSgyMDAwKTsKICB9Cn0KCiAgY2xpZW50LnN1YnNjcmliZShTdHJpbmcoInRleHQiKS5jX3N0cigpKTsKICBidXR0b24wLmF0dGFjaENsaWNrKGF0dGFjaENsaWNrMCk7CiAgcGluTW9kZSgyLCBPVVRQVVQpOwogIHRpbWVyLnNldEludGVydmFsKDEwMDBMLCBTaW1wbGVfdGltZXJfMSk7Cgp9Cgp2b2lkIGxvb3AoKXsKICAvL+W9k+eUseS6jue9kee7nOazouWKqOetieaDheWGtemAoOaIkE1RVFTmlq3lvIDml7bvvIzlpoLmnpzog73ojrflj5bmlq3nur/nirbmgIEKICAvLyDpgqPkuYjmiJHku6zlsLHlj6/ku6Xlj4rml7blkK/nlKjmlq3nur/nqIvluo/miJbogIXnu6fnu63lsJ3or5Xov57mjqVNUVRU5pyN5Yqh5ZmoCiAgLy/mgaLlpI3mnI3liqHvvIzku6XkuIvkvovlrZDmo4DmtYvkuoborr7lpIfkuI5NUVRU5pyN5Yqh5Zmo6L+e5o6l5bm26Zeq54OBTEVE5o+Q56S6CiAgLy/lkIzml7blsJ3or5XmgaLlpI1NUVRU5pyN5Yqh5LiO6YeN5paw6K6i6ZiFdGV4dOS4u+mimO+8jOWkmuWKn+iDveaMiemSrjDljZXlh7vlsIblj5HpgIEKICAvL0hlbGxv5omT5Y2w5Yiw5Liy5Y+j55uR6KeG5Zmo77yM5L2/55So6K+35L+u5pS55Li66Ieq5bex55qEV2lGaeS4jk1RVFTmnI3liqHlmajkv6Hmga8KICAvL01peElP5Lmf5Y+v5L2/55So5q2k5pa55rOV5aSE55CG56a757q/6Zeu6aKYCiAgY2xpZW50Lmxvb3AoKTsKCiAgaWYgKG1xdHRfc3RhdHVzKSB7CiAgICBpZiAoU3RyaW5nKG1xdHRfdG9waWMpLmVxdWFscyhTdHJpbmcoInRleHQiKSkpIHsKICAgIFNlcmlhbC5wcmludGxuKG1xdHRfZGF0YSk7CiAgICBtcXR0X3N0YXR1cyA9IGZhbHNlOwogICAgfQogIH0KCiAgYnV0dG9uMC50aWNrKCk7CiAgdGltZXIucnVuKCk7Cgp9</code>