NEWS
Telegram in blockly verarbeiten WAN IP abfragen
-
Moin, ich möchte per Telegram an iobroker eine Nachricht senden z.B. "ip" und dann soll folgendes script "ip=$(curl -s https://api.ipify.org) echo "$ip" ausgeführt werden und wieder per telegram versendet werden. Ich scheitere aber schon daran welchen Baustein ich benutzen soll um überhaupt eingehende Telegram Nachrichten zu verarbeiten. Z.b. Text "Lampe" Lampe geht an. Im Inet finde ich nur völlig aufgeblähte Scripte blicke nicht durch 😞 ist vermutlich eine ganz einfache Sache
-
Hier ein kleines Blockly zum Testen.
(Anstelle des Debug musst du nur deine Steuerung einbauen)

<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="nk#tns0J]0y=~-@(pk;a">User</variable> <variable id="AB*IO*|wr||-/wo4+RC5">Nachricht</variable> <variable id="b?,ZBkayTNP~tltUyD5.">Rueckmeldung</variable> </variables> <block type="on_ext" id="qfP:k+w61)k^~,b~={c-" x="57338" y="59013"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="T`gNaN=OC?#]-GILkho2"> <field name="oid">telegram.0.communicate.request</field> </shadow> </value> <statement name="STATEMENT"> <block type="variables_set" id="YJCeSPOm2Jog@]T.}(vu"> <field name="VAR" id="nk#tns0J]0y=~-@(pk;a">User</field> <value name="VALUE"> <block type="text_getSubstring" id="M7CFM~a1MSK!}j=463^{" 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="QO]s;NI)h*:WYty{FkAF"> <field name="ATTR">state.val</field> </block> </value> <value name="AT1"> <block type="math_number" id="{B(W=[_@3]pzK6aPv`:G"> <field name="NUM">2</field> </block> </value> <value name="AT2"> <block type="math_arithmetic" id=".zSo4d?:0^-9eb!w+NWp" inline="false"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="vxfm7`5Kr(Pke?`_@l!i"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="5VVDKItWzv(-?hQ+1s}}"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="l`^m[HIb`i%oCr6k$Boj"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="f)O#:h]ID:u[L=F+peRU"> <field name="TEXT">abc</field> </shadow> <block type="text" id="+:)[u/6O*{D0,3^:zm;{"> <field name="TEXT">]</field> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="iJ7ezmTz/gc?rqcM+M|."> <field name="NUM">1</field> </shadow> <block type="math_number" id="*w;q+#R_c!~Xr37Zk*81"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="!b~CxG!Zh$#A@,(w~V##"> <field name="VAR" id="AB*IO*|wr||-/wo4+RC5">Nachricht</field> <value name="VALUE"> <block type="text_getSubstring" id=")r8aspAp^G1nXlO%pbwX" 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="%G1R:}t,_b_U|OYEgZmh"> <field name="ATTR">state.val</field> </block> </value> <value name="AT1"> <block type="math_arithmetic" id=")f:LHsw}OJ`a9u]l-haW" inline="false"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="X-;]}%#K/CtR|.=o,z3S"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="Z(LNRqSJ9qENkr|feUB4"> <field name="END">FIRST</field> <value name="VALUE"> <block type="on_source" id="1eL8oAvq.@7|S_1V)WXV"> <field name="ATTR">state.val</field> </block> </value> <value name="FIND"> <shadow type="text" id="[aPgT-LPUC09n*s52zd*"> <field name="TEXT">abc</field> </shadow> <block type="text" id="_]%psv4ImnK!l;#h.}?T"> <field name="TEXT">]</field> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="iZO1Q5=#y9;J_6,I4v,N"> <field name="NUM">1</field> </shadow> <block type="math_number" id="Q(X9s}UDjO[=`.5C!LH:"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="n1`HH!Zne+6o/SHcg,bS"> <field name="VAR" id="b?,ZBkayTNP~tltUyD5.">Rueckmeldung</field> <value name="VALUE"> <block type="text" id="as0L~12[JSO-2]4`5N#P"> <field name="TEXT"></field> </block> </value> <next> <block type="comment" id="N?e}z9x:x^|`/1IDG)y/"> <field name="COMMENT">Tee</field> <next> <block type="logic_switch_case" id="#=PG(/,2Q)HCNt(47IyC"> <value name="CONDITION"> <block type="variables_get" id="`8;wQalLxCp.?+s(1N!}"> <field name="VAR" id="AB*IO*|wr||-/wo4+RC5">Nachricht</field> </block> </value> <value name="CASECONDITION0"> <block type="text" id="TT`)WlVkwvBoOO%B;GqP"> <field name="TEXT">tee</field> </block> </value> <statement name="CASE0"> <block type="debug" id="#jTn^CrGYG+oK,sF0-s("> <field name="Severity">error</field> <value name="TEXT"> <shadow type="text" id="b(P2C#{ga,r_p6JhR.UY"> <field name="TEXT">test</field> </shadow> <block type="text" id="cH,207s2c;6vpemkWX!r"> <field name="TEXT">Ich schalte die Tee-Maschine ein</field> </block> </value> <next> <block type="control" id="z{NX(!-9H]^(QJO?Gh7A" disabled="true"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">alias.0.Erdgeschoss.Küche.Teemaschine.AN</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="}5akS+|Ox}w`Vdya8AGL"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="variables_set" id="fHQt{V~2@3P)Ls5vSR^t"> <field name="VAR" id="b?,ZBkayTNP~tltUyD5.">Rueckmeldung</field> <value name="VALUE"> <block type="text" id="sL5t_xTW3)TeoA6c=I%G"> <field name="TEXT">Ich schalte die Tee-Maschine ein</field> </block> </value> </block> </next> </block> </next> </block> </statement> <next> <block type="comment" id="Q=Bw6Jx|NzNowCJHyb@N"> <field name="COMMENT">Rückmeldung</field> <next> <block type="controls_if" id="b%GeaS,qm=z%9#^t8H5E"> <value name="IF0"> <block type="logic_compare" id="|b9%Q@EA2~F,[nV5ggz{"> <field name="OP">NEQ</field> <value name="A"> <block type="variables_get" id="BVzPvxiw~@zaTeHm$O2l"> <field name="VAR" id="b?,ZBkayTNP~tltUyD5.">Rueckmeldung</field> </block> </value> <value name="B"> <block type="text" id="He|=~G-i_X]@Q~ybtHLZ"> <field name="TEXT"></field> </block> </value> </block> </value> <statement name="DO0"> <block type="telegram" id="rQ9^SJbgwx{mo;[|Fm$T"> <field name="INSTANCE"></field> <field name="LOG"></field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <field name="ESCAPING">FALSE</field> <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field> <value name="MESSAGE"> <shadow type="text" id="_jk25[T3LclmD3WT}Iy|"> <field name="TEXT">text</field> </shadow> <block type="variables_get" id="rkMC#=zXfz1Nun(`Evuy"> <field name="VAR" id="b?,ZBkayTNP~tltUyD5.">Rueckmeldung</field> </block> </value> <value name="USERNAME"> <block type="variables_get" id=".yy,4gKoy{2#/O+aK5UR"> <field name="VAR" id="nk#tns0J]0y=~-@(pk;a">User</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </xml> -
Danke Dir, eine Lmape bringe ich damit schon mal zum einschalten. Es scheitert jetzt nur noch am ausführen des curl Befehls und das Ergebnis weitersenden an Telegram. Habe es jetzt so gemacht:

-
Danke Dir, eine Lmape bringe ich damit schon mal zum einschalten. Es scheitert jetzt nur noch am ausführen des curl Befehls und das Ergebnis weitersenden an Telegram. Habe es jetzt so gemacht:

-
@skvarel said in Telegram in blockly verarbeiten:
wenn du mein Blockly nimmst, kannst du dir den User in der Abfrage sparen
Dachte ich mir schon, aber ich brauche tatsächlich nur die eine Abfrage. Man kann auch das curl weglassen und so abfragen:
Hilft das weiter?
-
Habs raus, das ganze geht so:






