NEWS
Status Anzeige von Fensterkontakten in Telegram
-
Hallo Leute,
bin offensichtlich zu dumm (alt?) um diese wahrscheinlich einfache Geschichte hinzukriegen.
Ich möchte in Telegram den Status meiner Fenstersensoren anzeigen lassen, bekomms aber nicht hin. Schalten (z.B. Rollladen, usw.) ist kein Problem.
Ich habe für die Sensoren Datenpunkte angelegt, kann diese aber nicht anzeigen lassen!? (Z.B. unter den Tasten für die Rollladen, die Anzeige des Status der Fenster.)
Die Version über eine normale Abfrage ( das ich über Telegram die Meldung bekomm " Fenster WZ offen" ist kein Problem.Danke
LG
-
@willi-sch sagte in Status Anzeige von Fensterkontakten in Telegram:
Telegram
Ist Telegramm nicht nur ein Message Dienst ? Wie kann man sich da nen Status anzeigen lassen ?
Oder hab ich es nur falsch verstanden und du möchtest dich über nen Status benachrichtigen lassen ?
-
Geht es nur um die Buttons in Telegram ?
var chID = (Telegram_Absender_ChatID); sendTo('telegram.0', { text: 'Hier ist die Auswahl', chatId: chID, reply_markup: { keyboard: [ ['offene Türen und Fenster' , 'Rollos'], ['was', 'noch was anderes'], ], resize_keyboard: true, one_time_keyboard: false } });
muss halt auf dein skript angepasst werden wegen zB. "var chID = (Telegram_Absender_ChatID);"
-
@xbit Danke, Das senden von Befehlen via Telegram funktioniert auch über die Buttons, ich glaube aber, das ich mir z.B. den Status der Fenster (offen geschlossen) unterhalb der Buttons anzeigen lassen kann. Oder bin ich überhaupt daneben?
Das reine Benachrichtigen funktioniert problemlos.Bei mir sieht das so aus:
sendTo('telegram.0', {
text: 'Was soll ich machen', reply_markup: { keyboard: [ ['Auf', 'Zu', ''], ['Fenster_WZ', 'Fenster_AZ', ''], ], resize_keyboard: true, one_time_keyboard: false }
});
" Auf" " Zu" tut was es soll (die Rollladen au und zumachen), aber ich hätte gerne das bei "Fenster WZ" und "Fenster AZ" dann geschlossen oder offen erscheint.
LG -
also du benötigst ein Skript was die Nachricht vom Telegram Adapter auswertet und dir entsprechend die Info schickt.
ich kann dir zwar ein Bsp. geben aber das Skript sollte schon etwas aufwendiger sein sonst kann jeder deinen BOT abfragen und das Rollo auf und zu machen was ja nicht gewollt ist.
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="?{Ub}YtxQB$xY,eI+ANj">Telegram_Absender_ChatID</variable> <variable id="92]d+OQ0cE;CIrESA=~D">Telegram_letzte_msg_mit_BN</variable> <variable id="|U},6PNMGmTiOb+7nq_H">Telegram_Absender</variable> <variable id="ize2/Ce5@MkgO(AyD*Sx">Telegram_letzte_msg_ohne_BN</variable> </variables> <block type="comment" id="R3!qp|uo?4-|Hnyac;9J" x="8787" y="9413"> <field name="COMMENT">Nachricht von Telegram.0 erhalten</field> <next> <block type="on_ext" id="^(K={]xAKn?=a`iqP|aR"> <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="Y.40L^4~NL:M@V|:rw0t"> <field name="oid">telegram.0.communicate.request</field> </shadow> </value> <statement name="STATEMENT"> <block type="comment" id="1YVen;v=rj|)9p1e9Mf."> <field name="COMMENT">ChatID vom Absender in Variable speichern</field> <next> <block type="variables_set" id="!^_Z~k6JsKa[GmJm~AK-"> <field name="VAR" id="?{Ub}YtxQB$xY,eI+ANj">Telegram_Absender_ChatID</field> <value name="VALUE"> <block type="get_value" id="U*[srZ+HeitV8{jAa2.j"> <field name="ATTR">val</field> <field name="OID">telegram.0.communicate.requestChatId</field> </block> </value> <next> <block type="comment" id="aw-(%I^l?B)1s-.hIZ`M"> <field name="COMMENT">Speichern der kompletten Nachricht inkl. Absendernamen in Variable speichern</field> <next> <block type="variables_set" id="AO/,T4ayYs2qf?=(8Yoz"> <field name="VAR" id="92]d+OQ0cE;CIrESA=~D">Telegram_letzte_msg_mit_BN</field> <value name="VALUE"> <block type="get_value" id="Pg+$WtrZUL;23ogA37({"> <field name="ATTR">val</field> <field name="OID">telegram.0.communicate.request</field> </block> </value> <next> <block type="comment" id="kee4}iwA;.3`{Zg)Z,ik"> <field name="COMMENT">Absendernamen aus kompletter Nachricht auslesen und in Variable speichern</field> <next> <block type="variables_set" id="UFOJZj`X^U)F8#i@vn.G"> <field name="VAR" id="|U},6PNMGmTiOb+7nq_H">Telegram_Absender</field> <value name="VALUE"> <block type="text_getSubstring" id="3]/T$c}DKsJT:*C0*dP0" 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="variables_get" id="v3;3%5mj(g*)Mf@QaId4"> <field name="VAR" id="92]d+OQ0cE;CIrESA=~D">Telegram_letzte_msg_mit_BN</field> </block> </value> <value name="AT1"> <block type="math_number" id="!#ISu?WS7o^q^QjqR1nB"> <field name="NUM">2</field> </block> </value> <value name="AT2"> <block type="math_arithmetic" id="y~3fu8Wh/)@1j;O.E|S," inline="false"> <field name="OP">MINUS</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="=(H6Ky/%]XpI.m!Gh@]r"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="M1VM}U.Dt:3w,+MB}K;T"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="Va[K/jq=Jz]|}jR)H$W3"> <field name="VAR" id="92]d+OQ0cE;CIrESA=~D">Telegram_letzte_msg_mit_BN</field> </block> </value> <value name="FIND"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="A+-,P[@1q7YH,3jG/fR%"> <field name="TEXT">abc</field> </shadow> <block type="text" id="I=_?N^{b9Q%L*}VyM)b$"> <field name="TEXT">]</field> </block> </value> </block> </value> <value name="B"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="S3r7%/?^gE(}3+`:t:Wi"> <field name="NUM">1</field> </shadow> <block type="math_number" id="36POG6(^|#RK^5;qlF9%"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </value> <next> <block type="comment" id=";znE%X|:3TRXmW-@Mqr|"> <field name="COMMENT">Nachricht ohne Absendernamen auslesen und in Variable speichern</field> <next> <block type="variables_set" id="KXu+7g(4FZ_W==(fRjT]"> <field name="VAR" id="ize2/Ce5@MkgO(AyD*Sx">Telegram_letzte_msg_ohne_BN</field> <value name="VALUE"> <block type="text_getSubstring" id="dOVr1vr~bab_`j?)vgen" inline="false"> <mutation at1="true" at2="false"></mutation> <field name="WHERE1">FROM_START</field> <field name="WHERE2">LAST</field> <value name="STRING"> <block type="variables_get" id="]HKj^o$ZA0eb#)4T1w_("> <field name="VAR" id="92]d+OQ0cE;CIrESA=~D">Telegram_letzte_msg_mit_BN</field> </block> </value> <value name="AT1"> <block type="math_arithmetic" id="}51,C,J:Q)T^A6%o9mY)" inline="false"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="=(H6Ky/%]XpI.m!Gh@]r"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="RJYdU]9KK~XiK@i1}JTZ"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="1Ag#R!R?s}OVT!,3}q[-"> <field name="VAR" id="92]d+OQ0cE;CIrESA=~D">Telegram_letzte_msg_mit_BN</field> </block> </value> <value name="FIND"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="text" id="A+-,P[@1q7YH,3jG/fR%"> <field name="TEXT">abc</field> </shadow> <block type="text" id="a@#nNyiKvqf`@}$:3Usv"> <field name="TEXT">]</field> </block> </value> </block> </value> <value name="B"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="S3r7%/?^gE(}3+`:t:Wi"> <field name="NUM">1</field> </shadow> <block type="math_number" id="b!sox8%b*ljYDx0,u(Ir"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </value> <next> <block type="comment" id="#G|Ov[qD](2|J`n^$s+t"> <field name="COMMENT">Nachricht Prüfen</field> <next> <block type="controls_if" id="/0JZzM:8EtZ,T_^=-1Fd"> <value name="IF0"> <block type="logic_compare" id="`dmi^`.%1m4f09M};D,e"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="p:8wxhDqS_0%pwUS+opm"> <field name="VAR" id="ize2/Ce5@MkgO(AyD*Sx">Telegram_letzte_msg_ohne_BN</field> </block> </value> <value name="B"> <block type="text" id="MyBzu#1%a[=f{52ltyzH"> <field name="TEXT">Fenster_WZ</field> </block> </value> </block> </value> <statement name="DO0"> <block type="comment" id="^F[m9uEkFC!:`wWF0vV4"> <field name="COMMENT">Statusmeldung Wohnzimmer Fenster</field> <next> <block type="telegram" id="82obVk%i3-)B2c/bspJ."> <field name="INSTANCE">.0</field> <field name="LOG"></field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <value name="MESSAGE"> <shadow type="text" id="P^^ZL0t8W::]VYqVX^TM"> <field name="TEXT">text</field> </shadow> <block type="text_join" id="/:NQ{:(Z{!.%8S5[jV+t"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="Xb)Zjf^NA[q(7ch_I|cG"> <field name="TEXT">Fenster Wohnzimmer ist:</field> </block> </value> <value name="ADD1"> <block type="text_newline" id="hUl)RSdii(Q0{z!jOd$G"> <field name="Type">\n</field> </block> </value> <value name="ADD2"> <block type="get_value" id="AMiZI`|.p|8@q8Wa]s3y"> <field name="ATTR">val</field> <field name="OID">ID auswählen</field> </block> </value> </block> </value> <value name="USERNAME"> <block type="text" id="sOqN%U$0B;n5XqTJH;^X"> <field name="TEXT">DEIN TELEGRAM_USER_NAME</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </xml>
Sollte so laufen aber Bitte daran denken, es ist noch keine Überprüfung drinne ob du auch mit dem Bot sprechen darfst.
-
@xbit Danke,
Ich glaub das ist mir zu aufwendig (kompletter Anfänger), ich hatte gedacht, es gibt eine einfache Methode um den Status des Fensters (offen / geschlossen) in Telegram anzuzeigen, und zwar z.B. unterhalb der Buttons mit denen ich z.B. einen befehl zum einschalten von was immer absetze (das funktioniert ja).
Bei mir kommt , wenn ich versuche den Wert des Datenpunktes (True od. false) anzeigen zu lassen immer nur:Folgender Text gesendet: %s
Sie können %s verwenden, das durch den aktuellen Statuswert ersetzt wird. %u wird durch Einheit ersetztwobei ich nicht begreife warum %s nicht durch den Statuswert ausgetauscht wird. (Für Folgender Text gesendet kann ich x-beliebigen Text eingeben)
Es sollte so aussehen: Fenster Wohnzimmer: True (oder noch besser Fenster Wohnzimmer Zu)
-
Ich denke mal du nutzt den "Text-to-Command" Adapter... da bin ich leider raus ich mache das alles über blockly und kenne mich mit den Adapter nicht aus.
-
@xbit Ja, vielleicht funktionierts ja auch gar nicht so wie ich dachte , die Meldung das die Fenster geöffnet oder geschlossen wurden bekomme ich ja über telegram, aber halt nicht so quasi über telegram abrufbar soweit ich das sehe.
Jedenfalls Danke Dir, schönen Abend -
@willi-sch Habe das jetzt mit div. Datenpunkten und Abfragen so lösen können, das auf Knopfdruck in Telegramm alle geöffneten Fenster ihren Zustand melden.
Trotzdem Danke euch