Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [gelöst]Telegram Abfragen mit Buttons als Antwortmöglichkeit

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst]Telegram Abfragen mit Buttons als Antwortmöglichkeit

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      drapo @drapo last edited by

      @drapo nicht alle auf einmal bitte 😁😉

      1 Reply Last reply Reply Quote 0
      • Christian Wöhrle
        Christian Wöhrle last edited by

        im prinzip müsstest du dir ein 2. Menü bauen das dann aufgerufen wird wenn dein wert open = true ist.
        Das muss dann halt mit einem anderen Befehl aufgerufen werden. Z. B. Anstatt "Hauptmenü" müsste dann bspw. "Garagensteuerung" heißen.

        D 1 Reply Last reply Reply Quote 0
        • D
          drapo @Christian Wöhrle last edited by

          @christian-wöhrle könntest Du mir einen kleinen Input geben wie ich das mit Blockly aufrufen kann? Dank dir

          Meister Mopper D 2 Replies Last reply Reply Quote 0
          • Meister Mopper
            Meister Mopper @drapo last edited by

            @drapo

            Das wird glaube ich für's Forum zu aufwändig. Hier wird gezeigt, wie man mit Untermenüs arbeitet.

            1 Reply Last reply Reply Quote 0
            • D
              Donald @drapo last edited by

              @drapo
              Ich nutze nicht das Telegram Menü, sondern etwas ähnliches wie im Video gezeigt.
              Dabei baue ich mir die Schaltflächen dynamisch in Blockly als Liste zusammen - der Text ist dann auch gleich das was im Bot abgefangen werden muss zur Steuerung. Dabei helfen mir Unicode-Zeichen um die verschiedenen Aufgaben zu triggern.

              In diesem Fall irgendein passendes Symbol für Garagentor.

              19f54321-1cac-440d-aba6-a50d3221ce21-image.png

              e4cd933b-736b-4539-96a2-04be0b6073a4-image.png

              <xml xmlns="https://developers.google.com/blockly/xml">
                <variables>
                  <variable id="uY3*38OniOeq%)U6KGW#">TELEusers</variable>
                  <variable id="R$?pZ24u9fcJBfy=Syd%">textstring</variable>
                  <variable id="YX#@TW_+hCt}+vQh`fDz">KeyboardArray</variable>
                  <variable id="zLn-Y^R#MqRA^zKdxxvT">menu_letzter_Absender</variable>
                </variables>
                <block type="procedures_defcustomnoreturn" id="ZW]/?a+X1UQl%k5(ST=x" x="113" y="188">
                  <mutation statements="false">
                    <arg name="TELEusers" varid="uY3*38OniOeq%)U6KGW#"></arg>
                    <arg name="textstring" varid="R$?pZ24u9fcJBfy=Syd%"></arg>
                    <arg name="KeyboardArray" varid="YX#@TW_+hCt}+vQh`fDz"></arg>
                  </mutation>
                  <field name="NAME">Telegram_send_KBbutton</field>
                  <field name="SCRIPT">c2VuZFRvKCd0ZWxlZ3JhbS4wJywgew0KICAgIHVzZXI6IChURUxFdXNlcnMpLA0KICAgIHRleHQ6ICAodGV4dHN0cmluZyksDQogICAgcGFyc2VfbW9kZTogJ01hcmtkb3duJywNCiAgICByZXBseV9tYXJrdXA6IHsNCiAgICAgICAga2V5Ym9hcmQ6IChLZXlib2FyZEFycmF5KSwNCiAgICAgICAgcmVzaXplX2tleWJvYXJkOiAgIHRydWUsDQogICAgICAgIG9uZV90aW1lX2tleWJvYXJkOiB0cnVlDQogICAgfQ0KfSk7</field>
                  <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                </block>
                <block type="variables_get" id="M)7k389WqVqw2p[/!pOa" x="363" y="238">
                  <field name="VAR" id="zLn-Y^R#MqRA^zKdxxvT">menu_letzter_Absender</field>
                </block>
                <block type="procedures_callcustomnoreturn" id="pMVpl:N!UiL0R2LuOXci" inline="false" x="113" y="263">
                  <mutation name="Telegram_send_KBbutton">
                    <arg name="TELEusers"></arg>
                    <arg name="textstring"></arg>
                    <arg name="KeyboardArray"></arg>
                  </mutation>
                  <value name="ARG0">
                    <block type="text" id="J:$i5(/z=v*Bpv2r{Oim">
                      <field name="TEXT">nutzername</field>
                    </block>
                  </value>
                  <value name="ARG1">
                    <block type="text_join" id="}OhGPFW1la?[E:0~;hSJ" inline="true">
                      <mutation items="4"></mutation>
                      <value name="ADD0">
                        <block type="text" id="%r`Z8^?A^0B-qmv`{m10">
                          <field name="TEXT">🚪</field>
                        </block>
                      </value>
                      <value name="ADD1">
                        <block type="text" id="H!F%:fa($538x+jul]7z">
                          <field name="TEXT"> Garagentor offen!</field>
                        </block>
                      </value>
                      <value name="ADD2">
                        <block type="text_newline" id="c!n*MC=#E9gKf[cT2!n,">
                          <field name="Type">\n</field>
                        </block>
                      </value>
                      <value name="ADD3">
                        <block type="text" id="~n+1;Q8{1?d;rlc3f(3n">
                          <field name="TEXT">Soll jetzt geschlossen werden?</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <value name="ARG2">
                    <block type="lists_create_with" id="q}ZQX7%qFaK`bCz}r^w1">
                      <mutation items="2"></mutation>
                      <value name="ADD0">
                        <block type="lists_create_with" id="Kd5WIb/V)L}%l7,a_qYu" inline="true">
                          <mutation items="2"></mutation>
                          <value name="ADD0">
                            <block type="text" id="7x./JEj38tmtWs^itwl=">
                              <field name="TEXT">🚪 Ja</field>
                            </block>
                          </value>
                          <value name="ADD1">
                            <block type="text" id="Z1,I[nw@T3_*Ig%X4/j@">
                              <field name="TEXT">🚪 Nein</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <value name="ADD1">
                        <block type="lists_create_with" id=".R=c1N1,5^XS:UQo@y2Z" inline="true">
                          <mutation items="2"></mutation>
                          <value name="ADD0">
                            <block type="text" id="6J=ehZ]i{0w=/;0wQWvN">
                              <field name="TEXT">🚪 Ja</field>
                            </block>
                          </value>
                          <value name="ADD1">
                            <block type="text" id="Em?06)7Xc8}%($@Vr5f0">
                              <field name="TEXT">🚪 Nein</field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
                <block type="comment" id="Uq%p#x%g:D$)Rvp*;}9k" x="938" y="363">
                  <field name="COMMENT">doppelte Nennung nur zur Demonstration für mehrzeilige Buttonleiste</field>
                </block>
              </xml>
              

              D Schmakus 2 Replies Last reply Reply Quote 0
              • D
                drapo @Donald last edited by

                @donald der Ansatz gefällt mir sehr gut. vielen dank dafür. Das werde ich auch mal versuchen.

                B 1 Reply Last reply Reply Quote 0
                • Schmakus
                  Schmakus Developer @Donald last edited by

                  @donald sagte in Telegram Abfragen mit Buttons als Antwortmöglichkeit:

                  @drapo
                  Ich nutze nicht das Telegram Menü, sondern etwas ähnliches wie im Video gezeigt.
                  Dabei baue ich mir die Schaltflächen dynamisch in Blockly als Liste zusammen - der Text ist dann auch gleich das was im Bot abgefangen werden muss zur Steuerung. Dabei helfen mir Unicode-Zeichen um die verschiedenen Aufgaben zu triggern.

                  In diesem Fall irgendein passendes Symbol für Garagentor.

                  19f54321-1cac-440d-aba6-a50d3221ce21-image.png

                  e4cd933b-736b-4539-96a2-04be0b6073a4-image.png

                  <xml xmlns="https://developers.google.com/blockly/xml">
                    <variables>
                      <variable id="uY3*38OniOeq%)U6KGW#">TELEusers</variable>
                      <variable id="R$?pZ24u9fcJBfy=Syd%">textstring</variable>
                      <variable id="YX#@TW_+hCt}+vQh`fDz">KeyboardArray</variable>
                      <variable id="zLn-Y^R#MqRA^zKdxxvT">menu_letzter_Absender</variable>
                    </variables>
                    <block type="procedures_defcustomnoreturn" id="ZW]/?a+X1UQl%k5(ST=x" x="113" y="188">
                      <mutation statements="false">
                        <arg name="TELEusers" varid="uY3*38OniOeq%)U6KGW#"></arg>
                        <arg name="textstring" varid="R$?pZ24u9fcJBfy=Syd%"></arg>
                        <arg name="KeyboardArray" varid="YX#@TW_+hCt}+vQh`fDz"></arg>
                      </mutation>
                      <field name="NAME">Telegram_send_KBbutton</field>
                      <field name="SCRIPT">c2VuZFRvKCd0ZWxlZ3JhbS4wJywgew0KICAgIHVzZXI6IChURUxFdXNlcnMpLA0KICAgIHRleHQ6ICAodGV4dHN0cmluZyksDQogICAgcGFyc2VfbW9kZTogJ01hcmtkb3duJywNCiAgICByZXBseV9tYXJrdXA6IHsNCiAgICAgICAga2V5Ym9hcmQ6IChLZXlib2FyZEFycmF5KSwNCiAgICAgICAgcmVzaXplX2tleWJvYXJkOiAgIHRydWUsDQogICAgICAgIG9uZV90aW1lX2tleWJvYXJkOiB0cnVlDQogICAgfQ0KfSk7</field>
                      <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                    </block>
                    <block type="variables_get" id="M)7k389WqVqw2p[/!pOa" x="363" y="238">
                      <field name="VAR" id="zLn-Y^R#MqRA^zKdxxvT">menu_letzter_Absender</field>
                    </block>
                    <block type="procedures_callcustomnoreturn" id="pMVpl:N!UiL0R2LuOXci" inline="false" x="113" y="263">
                      <mutation name="Telegram_send_KBbutton">
                        <arg name="TELEusers"></arg>
                        <arg name="textstring"></arg>
                        <arg name="KeyboardArray"></arg>
                      </mutation>
                      <value name="ARG0">
                        <block type="text" id="J:$i5(/z=v*Bpv2r{Oim">
                          <field name="TEXT">nutzername</field>
                        </block>
                      </value>
                      <value name="ARG1">
                        <block type="text_join" id="}OhGPFW1la?[E:0~;hSJ" inline="true">
                          <mutation items="4"></mutation>
                          <value name="ADD0">
                            <block type="text" id="%r`Z8^?A^0B-qmv`{m10">
                              <field name="TEXT">🚪</field>
                            </block>
                          </value>
                          <value name="ADD1">
                            <block type="text" id="H!F%:fa($538x+jul]7z">
                              <field name="TEXT"> Garagentor offen!</field>
                            </block>
                          </value>
                          <value name="ADD2">
                            <block type="text_newline" id="c!n*MC=#E9gKf[cT2!n,">
                              <field name="Type">\n</field>
                            </block>
                          </value>
                          <value name="ADD3">
                            <block type="text" id="~n+1;Q8{1?d;rlc3f(3n">
                              <field name="TEXT">Soll jetzt geschlossen werden?</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <value name="ARG2">
                        <block type="lists_create_with" id="q}ZQX7%qFaK`bCz}r^w1">
                          <mutation items="2"></mutation>
                          <value name="ADD0">
                            <block type="lists_create_with" id="Kd5WIb/V)L}%l7,a_qYu" inline="true">
                              <mutation items="2"></mutation>
                              <value name="ADD0">
                                <block type="text" id="7x./JEj38tmtWs^itwl=">
                                  <field name="TEXT">🚪 Ja</field>
                                </block>
                              </value>
                              <value name="ADD1">
                                <block type="text" id="Z1,I[nw@T3_*Ig%X4/j@">
                                  <field name="TEXT">🚪 Nein</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <value name="ADD1">
                            <block type="lists_create_with" id=".R=c1N1,5^XS:UQo@y2Z" inline="true">
                              <mutation items="2"></mutation>
                              <value name="ADD0">
                                <block type="text" id="6J=ehZ]i{0w=/;0wQWvN">
                                  <field name="TEXT">🚪 Ja</field>
                                </block>
                              </value>
                              <value name="ADD1">
                                <block type="text" id="Em?06)7Xc8}%($@Vr5f0">
                                  <field name="TEXT">🚪 Nein</field>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                    <block type="comment" id="Uq%p#x%g:D$)Rvp*;}9k" x="938" y="363">
                      <field name="COMMENT">doppelte Nennung nur zur Demonstration für mehrzeilige Buttonleiste</field>
                    </block>
                  </xml>
                  

                  Jetzt muss nur noch sichergestellt werden, das der response "ja" oder "nein" auch zum Garagentor passt. Deshalb sollte man dies entweder mit einem callback machen oder per question.

                  Xnip2023-12-20_11-51-29.jpg

                  Xnip2023-12-20_11-51-43.jpg

                  D 1 Reply Last reply Reply Quote 0
                  • B
                    BobBruni @drapo last edited by BobBruni

                    @drapo

                    Hallo Drapo,

                    hier hast du die fertige Lösung:
                    https://forum.iobroker.net/topic/64968/test-adapter-telegram-menu-v-0-9-x/957?_=1703070393109

                    Sobald mein Gargentor länger als 1h offen steht, lasse mir diese Nachricht, mit entsprechender Antwortmöglichkeit, senden:
                    630eec74-a73e-4b07-8f2e-4b9fbac893cb-image.png

                    Die Antwortmöglichkeiten können dabei beliebig gestaltet werden.

                    Gruß

                    D 1 Reply Last reply Reply Quote 1
                    • D
                      drapo @Schmakus last edited by

                      @schmakus ich finde das eine sehr elegante alternative. Das mit dem Menü dynamisch zusammenbauen funktioniert soweit ganz gut. wie krieg ich jedoch die Antwort dann mittels blockly eingefangen. Also wenn ich dann Ja drücke auf dem Button so dass das Tor nach unten fährt. Ich müsste dann einfach einen Status im ändern. Aber halt nur dann wenn Ja gedrückt wurde. Könntest Du mir da nochmals auf die Sprünge helfen?

                      Dank Dir

                      D 1 Reply Last reply Reply Quote 0
                      • D
                        drapo @BobBruni last edited by

                        @bobbruni hab damit mal rumgespielt bin aber überhaupt nicht klar gekommen mit dem telegram menü adapter.

                        1 Reply Last reply Reply Quote 0
                        • D
                          drapo @drapo last edited by

                          @Schmakus will ja nicht lästig sein aber könntest du mir nochmals einen tip geben? Danke

                          D 1 Reply Last reply Reply Quote 0
                          • D
                            drapo @drapo last edited by

                            @drapo ich habs mittlerweile hingekriegt. Habe dazu einen Beitrag im Netz gefunden. Dieser beschreibt das Vorgehen mit Javascript sehr gut. Bei mir funktioniert nun die Abfrage der Garage wenn sie offen ist wenn es dunkel wird und ob ich sie schliessen möchte mittels den Ja und Nein Buttons.

                            Hier der Link zur Anleitung:

                            https://www.smarthome-tricks.de/software-iobroker/iobroker-auf-telegram-nachrichten-reagieren/amp/

                            1 Reply Last reply Reply Quote 0
                            • First post
                              Last post

                            Support us

                            ioBroker
                            Community Adapters
                            Donate
                            FAQ Cloud / IOT
                            HowTo: Node.js-Update
                            HowTo: Backup/Restore
                            Downloads
                            BLOG

                            594
                            Online

                            31.9k
                            Users

                            80.1k
                            Topics

                            1.3m
                            Posts

                            6
                            13
                            764
                            Loading More Posts
                            • Oldest to Newest
                            • Newest to Oldest
                            • Most Votes
                            Reply
                            • Reply as topic
                            Log in to reply
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                            The ioBroker Community 2014-2023
                            logo