Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adapter telegram-menu v.1.6.x

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

Test Adapter telegram-menu v.1.6.x

Geplant Angeheftet Gesperrt Verschoben Tester
1.8k Beiträge 61 Kommentatoren 800.2k Aufrufe 61 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • Michael RolingM Michael Roling

    @negalein so das habe ich gefixt

    NegaleinN Offline
    NegaleinN Offline
    Negalein
    Global Moderator
    schrieb am zuletzt editiert von
    #67

    @michael-roling sagte in Test Adapter telegram-menu v.0.1.x:

    so das habe ich gefixt

    Danke, funktioniert wieder 1A

    ° Node.js: 20.17.0 NPM: 10.8.2
    ° Proxmox, Ubuntu 22.04.3 LTS
    ° Fixer ---> iob fix

    1 Antwort Letzte Antwort
    1
    • I intruder7

      Guten Morgen,

      würde den Adapter tatsächlich auch gerne testen, aber bei mir ist so kaum was zu erkennen in der Konfig
      3a650d52-f7ca-47e5-9f16-9e84a89b12fd-image.png

      Michael RolingM Offline
      Michael RolingM Offline
      Michael Roling
      Developer
      schrieb am zuletzt editiert von Michael Roling
      #68

      @intruder7 so das problem mit dem Darkmode ist behoben

      1 Antwort Letzte Antwort
      1
      • WszeneW Wszene

        @michael-roling

        Ich habe mir gerade deinen Adapter installiert
        dabei ist mir gleich als erstes aufgefallen das im Darkmode die Texte nicht lesbar sind
        telegram-menu.png

        So jetzt aber mal anfachen zu testen

        Gruß
        Marcel

        Edit:
        Kann man evtl. die Option einbauen selbst zu wählen ob der State bei der Antwort mit ausgegeben wird?

        Michael RolingM Offline
        Michael RolingM Offline
        Michael Roling
        Developer
        schrieb am zuletzt editiert von
        #69

        @wszene So das Problem mit dem Darkmode ist behoben, ebenso kannst du in den Rückgabetext einfach an einer Stelle {novalue} rein schreiben, dann bekommst du nicht den gesetzten Wert mit geschickt!

        S 1 Antwort Letzte Antwort
        0
        • Michael RolingM Michael Roling

          @wszene So das Problem mit dem Darkmode ist behoben, ebenso kannst du in den Rückgabetext einfach an einer Stelle {novalue} rein schreiben, dann bekommst du nicht den gesetzten Wert mit geschickt!

          S Offline
          S Offline
          Speedy012
          schrieb am zuletzt editiert von
          #70

          @michael-roling Moin moin, sehr cool der Adapter, vorher über Text to Command mit Skripten war umständlich.

          Wäre es möglich unter Navigation eine Sortierfunktion einzubauen?
          Also das man die Menüs eine Zeile rauf oder runter schieben kann?
          Dann könnte man es etwas übersichtlicher gestalten.

          Aber ansonsten TOP das Ding.

          Michael RolingM 2 Antworten Letzte Antwort
          0
          • S Speedy012

            @michael-roling Moin moin, sehr cool der Adapter, vorher über Text to Command mit Skripten war umständlich.

            Wäre es möglich unter Navigation eine Sortierfunktion einzubauen?
            Also das man die Menüs eine Zeile rauf oder runter schieben kann?
            Dann könnte man es etwas übersichtlicher gestalten.

            Aber ansonsten TOP das Ding.

            Michael RolingM Offline
            Michael RolingM Offline
            Michael Roling
            Developer
            schrieb am zuletzt editiert von
            #71

            @speedy012 hi danke.
            Ja da habe ich auch schon dran gedacht. Packe ich mit auf die todo Liste.

            S WszeneW 2 Antworten Letzte Antwort
            1
            • Michael RolingM Michael Roling

              @speedy012 hi danke.
              Ja da habe ich auch schon dran gedacht. Packe ich mit auf die todo Liste.

              S Offline
              S Offline
              Speedy012
              schrieb am zuletzt editiert von Speedy012
              #72

              @michael-roling ich habe eben auf der Terrasse gesessen mit Laptop und einiges eingerichtet.

              Jetzt sitze ich am Rechner.
              Hier werden mir unter Aktion als Auslöser immer nur die Navigations Elemente von Global angezeigt.
              Es ist egal welchen User ich vorher anklicke.

              Hat sich erledigt, ich habe bei Activ einmal den Haken raus, gespeichert und dann wieder rein.
              Jetzt geht es.

              1 Antwort Letzte Antwort
              1
              • Michael RolingM Michael Roling

                @speedy012 hi danke.
                Ja da habe ich auch schon dran gedacht. Packe ich mit auf die todo Liste.

                WszeneW Offline
                WszeneW Offline
                Wszene
                schrieb am zuletzt editiert von
                #73

                @michael-roling
                Vielen Dank
                Ich habe mal eine Frage
                Wie kann ich ein Update machen?
                Screenshot 2023-05-16 053743.png
                Da wird mir schon ohne meines Zutuns die Version 0.1.0 angezeigt
                Aber ich habe noch immer das Darkmode Problem

                PS:
                Hast du schon einen Zeitplan wann der Adapter in die Beta-Repo kommt?

                Gruß
                Marcel

                Meine Hard- & Software:

                • MSI Cubi 5 10M-049DE mit Proxmox
                • CC2652P Zigbee Stick
                • Steckdosen mit Tasmota und Zigbee
                • Lichtschalter mit Tasmota
                • IKEA TRÅDFRI Glühbirnen
                • Aqara Sensoren
                Michael RolingM 1 Antwort Letzte Antwort
                0
                • WszeneW Wszene

                  @michael-roling
                  Vielen Dank
                  Ich habe mal eine Frage
                  Wie kann ich ein Update machen?
                  Screenshot 2023-05-16 053743.png
                  Da wird mir schon ohne meines Zutuns die Version 0.1.0 angezeigt
                  Aber ich habe noch immer das Darkmode Problem

                  PS:
                  Hast du schon einen Zeitplan wann der Adapter in die Beta-Repo kommt?

                  Gruß
                  Marcel

                  Michael RolingM Offline
                  Michael RolingM Offline
                  Michael Roling
                  Developer
                  schrieb am zuletzt editiert von
                  #74

                  @wszene es gibt auch noch kein neues Release. Einfach über die Katze erneut installieren. Evtl einen Upload machen.

                  1 Antwort Letzte Antwort
                  0
                  • S Speedy012

                    @michael-roling Moin moin, sehr cool der Adapter, vorher über Text to Command mit Skripten war umständlich.

                    Wäre es möglich unter Navigation eine Sortierfunktion einzubauen?
                    Also das man die Menüs eine Zeile rauf oder runter schieben kann?
                    Dann könnte man es etwas übersichtlicher gestalten.

                    Aber ansonsten TOP das Ding.

                    Michael RolingM Offline
                    Michael RolingM Offline
                    Michael Roling
                    Developer
                    schrieb am zuletzt editiert von
                    #75

                    @speedy012 so jetzt kann man die rows verschieben in der Navigation!

                    S 1 Antwort Letzte Antwort
                    0
                    • Michael RolingM Michael Roling

                      @speedy012 so jetzt kann man die rows verschieben in der Navigation!

                      S Offline
                      S Offline
                      Speedy012
                      schrieb am zuletzt editiert von
                      #76

                      @michael-roling 👍 sehr schön,

                      1 Antwort Letzte Antwort
                      1
                      • S Offline
                        S Offline
                        Supernils
                        schrieb am zuletzt editiert von
                        #77

                        Toller Adapter. Vielen Dank.
                        Kann man den Text (z.B. "Wähle eine Aktion") bei der Navigation irgendwie unterdrücken?

                        Michael RolingM 1 Antwort Letzte Antwort
                        0
                        • S Supernils

                          Toller Adapter. Vielen Dank.
                          Kann man den Text (z.B. "Wähle eine Aktion") bei der Navigation irgendwie unterdrücken?

                          Michael RolingM Offline
                          Michael RolingM Offline
                          Michael Roling
                          Developer
                          schrieb am zuletzt editiert von
                          #78

                          @supernils hallo, das geht meines wissens nicht

                          1 Antwort Letzte Antwort
                          0
                          • F Online
                            F Online
                            fritzke316
                            schrieb am zuletzt editiert von fritzke316
                            #79

                            Ich habe den Adapter jetzt auch mal getestet, und soweit funktioniert alles super, echt toller Adapter!!
                            Nur eine Frage habe ich, kann man einen Benutzer auch irgendwie umbenenen? Hatte erst den falschen Benutzer eingetragen und erst gemerkt als ich schon einen Teil meines Menüs gebastelt hatte, dann konnte ich nur noch den Benutzer löschen, neu anlegen und das Menü neu erstellen 😞
                            Vielleicht wäre es auch ganz gut wenn die anderen Menüs so wie das Globale funktionieren, d.h. Man legt ein Menü an und kann dann in einer separaten Zeile angeben welcher Benutzer dieses Menü erhält, dann kann man das auch einfach immer wieder umstellen.

                            S Michael RolingM 2 Antworten Letzte Antwort
                            1
                            • F fritzke316

                              Ich habe den Adapter jetzt auch mal getestet, und soweit funktioniert alles super, echt toller Adapter!!
                              Nur eine Frage habe ich, kann man einen Benutzer auch irgendwie umbenenen? Hatte erst den falschen Benutzer eingetragen und erst gemerkt als ich schon einen Teil meines Menüs gebastelt hatte, dann konnte ich nur noch den Benutzer löschen, neu anlegen und das Menü neu erstellen 😞
                              Vielleicht wäre es auch ganz gut wenn die anderen Menüs so wie das Globale funktionieren, d.h. Man legt ein Menü an und kann dann in einer separaten Zeile angeben welcher Benutzer dieses Menü erhält, dann kann man das auch einfach immer wieder umstellen.

                              S Offline
                              S Offline
                              Speedy012
                              schrieb am zuletzt editiert von
                              #80

                              Ich habe keine Ahnung was für ein Aufwand das ist. Aber vielleicht ist es auch möglich Menü Teile Benutzern zuzuweisen. Meine Frau braucht z.B. nicht das selbe Menü wie ich, aber einige Teile. Aktuell müsste man aber für jeden User ein eigenes Menü erstellen. Vielleicht kann man das durch Haken setzen irgend wie realisieren.

                              Ist nur eine Idee.

                              Michael RolingM 1 Antwort Letzte Antwort
                              1
                              • F fritzke316

                                Ich habe den Adapter jetzt auch mal getestet, und soweit funktioniert alles super, echt toller Adapter!!
                                Nur eine Frage habe ich, kann man einen Benutzer auch irgendwie umbenenen? Hatte erst den falschen Benutzer eingetragen und erst gemerkt als ich schon einen Teil meines Menüs gebastelt hatte, dann konnte ich nur noch den Benutzer löschen, neu anlegen und das Menü neu erstellen 😞
                                Vielleicht wäre es auch ganz gut wenn die anderen Menüs so wie das Globale funktionieren, d.h. Man legt ein Menü an und kann dann in einer separaten Zeile angeben welcher Benutzer dieses Menü erhält, dann kann man das auch einfach immer wieder umstellen.

                                Michael RolingM Offline
                                Michael RolingM Offline
                                Michael Roling
                                Developer
                                schrieb am zuletzt editiert von Michael Roling
                                #81

                                @fritzke316 hi danke für das Feedback.
                                Das umbenennen setzte ich mit auf meine todo Liste.
                                Den anderen Punkt schaue ich mir auch noch mal an.

                                Evtl. nehme ich die User komplett raus, und auch den Global User, und man erstellt nur noch Gruppen, in denen man wie beim Global User nur noch die einzelnen User hinzufügt

                                F 1 Antwort Letzte Antwort
                                0
                                • S Speedy012

                                  Ich habe keine Ahnung was für ein Aufwand das ist. Aber vielleicht ist es auch möglich Menü Teile Benutzern zuzuweisen. Meine Frau braucht z.B. nicht das selbe Menü wie ich, aber einige Teile. Aktuell müsste man aber für jeden User ein eigenes Menü erstellen. Vielleicht kann man das durch Haken setzen irgend wie realisieren.

                                  Ist nur eine Idee.

                                  Michael RolingM Offline
                                  Michael RolingM Offline
                                  Michael Roling
                                  Developer
                                  schrieb am zuletzt editiert von Michael Roling
                                  #82

                                  @speedy012 die Frage die sich mir nur dazu stellt ist, wie übersichtlich bleibt das ganze? Halte ich aber im Hinterkopf

                                  Vielleicht macht es auch Sinn eine kopierfunktion ein zu bauen in der man verschiedene Elemente in ein anderes User Profil hinzufügt. Evtl in kombination mit dem Post hiervor

                                  1 Antwort Letzte Antwort
                                  0
                                  • Michael RolingM Michael Roling

                                    @fritzke316 hi danke für das Feedback.
                                    Das umbenennen setzte ich mit auf meine todo Liste.
                                    Den anderen Punkt schaue ich mir auch noch mal an.

                                    Evtl. nehme ich die User komplett raus, und auch den Global User, und man erstellt nur noch Gruppen, in denen man wie beim Global User nur noch die einzelnen User hinzufügt

                                    F Online
                                    F Online
                                    fritzke316
                                    schrieb am zuletzt editiert von
                                    #83

                                    @michael-roling Ja genau etwa so hätte ich mir das auch gedacht, dann ist man immer flexibel und kann die User einfach von einer Gruppe in die andere schieben wie man grad lust hat 🙂

                                    1 Antwort Letzte Antwort
                                    1
                                    • Michael RolingM Offline
                                      Michael RolingM Offline
                                      Michael Roling
                                      Developer
                                      schrieb am zuletzt editiert von
                                      #84

                                      Ich habe mal wieder ein wenig am Adapter gearbeitet.
                                      Ab jetzt kann man nur noch Gruppen erstellen, in der man zwingenderweise User eintragen muss.
                                      Wenn ihr die neue Version installiert füllt dieses bitte direkt aus.

                                      • Man kann diese Gruppen umbenennen. Deren Name hat aber für den Ablauf keine Bedeutung. Ist nur für die Übersicht.

                                      Als nächstes wäre der Plan einzelne Daten aus anderen Gruppen importieren zu können.

                                      Ich bin wie immer auf euer Feedback gespannt.

                                      SchmakusS 1 Antwort Letzte Antwort
                                      0
                                      • Michael RolingM Michael Roling

                                        Ich habe mal wieder ein wenig am Adapter gearbeitet.
                                        Ab jetzt kann man nur noch Gruppen erstellen, in der man zwingenderweise User eintragen muss.
                                        Wenn ihr die neue Version installiert füllt dieses bitte direkt aus.

                                        • Man kann diese Gruppen umbenennen. Deren Name hat aber für den Ablauf keine Bedeutung. Ist nur für die Übersicht.

                                        Als nächstes wäre der Plan einzelne Daten aus anderen Gruppen importieren zu können.

                                        Ich bin wie immer auf euer Feedback gespannt.

                                        SchmakusS Offline
                                        SchmakusS Offline
                                        Schmakus
                                        Developer
                                        schrieb am zuletzt editiert von Schmakus
                                        #85

                                        @michael-roling Hi, hab den Adapter auch mal getestet. Ich finde es gut, einen Adapter für ein Telegram-Menü bereitzustellen, da doch viele Script-Lösungen unterwegs sind, welche aber für einen normalen User kaum handlebar sind.

                                        Ich finde die Konfiguration etwas umständlich. Evtl. könntest mit jsonConfig eine übersichtlichere UI erstellen?

                                        Des Weiteren könntest dir mal die callback-Funktion von Telegram anschauen. Dadurch lassen sich m.M. gute Untermenüs erstellen, wie auch einen Zurück-Button, mit welchem man immer in das vorherige Menü gelangt.
                                        Ich habe mal mit JS etwas herumgespielt. Vielleicht bringt dich das auf die eine oder andere Idee?!

                                        Eine weiterer Vorschlag wäre, mit einer Art Gerätesteuerung zu arbeiten. Bedeutet es gibt Standard-Texte wie "Ein", "Aus", ... welche sich auf das zuvor ausgewählte Gerät und deren Datenpunkte beziehen. Beispiel: Ich wähle "Zisterne" im Menü und bekomme ein Untermenü mit "Ein", Aus" / Ich wähle Lampe1 und bekomme ein Untermenü mit "Ein", "Aus", usw.

                                        Hierzu muss man sich das Gerät (in dem Fall Zisterne) merken bis ein anderes Gerät über ein Menü gewählt wird.

                                        Callback-Funktion:

                                        const adapterName = 'telegram.0';
                                        
                                        on({ id: `${adapterName}.communicate.request`, change: 'any' }, (obj) => {
                                            const val = obj.state.val;
                                            const username = val.substring(1, val.indexOf("]"));
                                            const text = val.substring(val.indexOf("]") + 1).trim();
                                            const chatId = getState(`${adapterName}.communicate.requestChatId`).val;
                                        
                                            if (text === '/menu') {
                                                const keyboard = {
                                                    inline_keyboard: [
                                                        [
                                                            {
                                                                text: 'First Level 1 Option',
                                                                callback_data: 'menu:firstLevel1'
                                                            },
                                                            {
                                                                text: 'First Level 2 Option',
                                                                callback_data: 'menu:firstLevel2'
                                                            }
                                                        ]
                                                    ]
                                                };
                                                sendTo(`${adapterName}`, 'send', { chatId: chatId, text: 'Please select an option:', reply_markup: JSON.stringify(keyboard) });
                                            } else if (text.startsWith('menu:')) {
                                                const callbackData = text.split(':')[1];
                                                if (callbackData === 'firstLevel1') {
                                                    const keyboard = {
                                                        inline_keyboard: [
                                                            [
                                                                {
                                                                    text: 'Second Level 1 Option',
                                                                    callback_data: 'submenu:firstLevel1:secondLevel1'
                                                                },
                                                                {
                                                                    text: 'Second Level 2 Option',
                                                                    callback_data: 'submenu:firstLevel1:secondLevel2'
                                                                }
                                                            ],
                                                            [
                                                                {
                                                                    text: 'Back to Main Menu',
                                                                    callback_data: 'menu:back'
                                                                }
                                                            ]
                                                        ]
                                                    };
                                                    sendTo(`${adapterName}`, 'send', { chatId: chatId, text: 'You selected First Level 1. Please select a sub-option:', reply_markup: JSON.stringify(keyboard) });
                                                } else if (callbackData === 'firstLevel2') {
                                                    sendTo(`${adapterName}`, 'send', { chatId: chatId, text: 'You selected First Level 2.' });
                                                } else if (callbackData.startsWith('submenu:firstLevel1:')) {
                                                    const subCallbackData = callbackData.split(':')[2];
                                                    if (subCallbackData === 'secondLevel1') {
                                                        const keyboard = {
                                                            inline_keyboard: [
                                                                [
                                                                    {
                                                                        text: 'Back to First Level 1',
                                                                        callback_data: 'submenu:firstLevel1:back'
                                                                    },
                                                                    {
                                                                        text: 'Back to Main Menu',
                                                                        callback_data: 'menu:back'
                                                                    }
                                                                ]
                                                            ]
                                                        };
                                                        sendTo(`${adapterName}`, 'send', { chatId: chatId, text: 'You selected Second Level 1. Please select an option:', reply_markup: JSON.stringify(keyboard) });
                                                    } else if (subCallbackData === 'secondLevel2') {
                                                        sendTo(`${adapterName}`, 'send', { chatId: chatId, text: 'You selected Second Level 2.' });
                                                    }
                                                } else if (callbackData === 'back') {
                                                    const keyboard = {
                                                        inline_keyboard: [
                                                            [
                                                                {
                                                                    text: 'First Level 1 Option',
                                                                    callback_data: 'menu:firstLevel1'
                                                                },
                                                                {
                                                                    text: 'First Level 2 Option',
                                                                    callback_data: 'menu:firstLevel2'
                                                                }
                                                            ]
                                                        ]
                                                    };
                                                    sendTo(`${adapterName}`, 'send', { chatId: chatId, text: 'Please select an option:', reply_markup: JSON.stringify(keyboard) });
                                                }
                                            }
                                        });
                                        
                                        

                                        Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

                                        Michael RolingM 1 Antwort Letzte Antwort
                                        1
                                        • SchmakusS Schmakus

                                          @michael-roling Hi, hab den Adapter auch mal getestet. Ich finde es gut, einen Adapter für ein Telegram-Menü bereitzustellen, da doch viele Script-Lösungen unterwegs sind, welche aber für einen normalen User kaum handlebar sind.

                                          Ich finde die Konfiguration etwas umständlich. Evtl. könntest mit jsonConfig eine übersichtlichere UI erstellen?

                                          Des Weiteren könntest dir mal die callback-Funktion von Telegram anschauen. Dadurch lassen sich m.M. gute Untermenüs erstellen, wie auch einen Zurück-Button, mit welchem man immer in das vorherige Menü gelangt.
                                          Ich habe mal mit JS etwas herumgespielt. Vielleicht bringt dich das auf die eine oder andere Idee?!

                                          Eine weiterer Vorschlag wäre, mit einer Art Gerätesteuerung zu arbeiten. Bedeutet es gibt Standard-Texte wie "Ein", "Aus", ... welche sich auf das zuvor ausgewählte Gerät und deren Datenpunkte beziehen. Beispiel: Ich wähle "Zisterne" im Menü und bekomme ein Untermenü mit "Ein", Aus" / Ich wähle Lampe1 und bekomme ein Untermenü mit "Ein", "Aus", usw.

                                          Hierzu muss man sich das Gerät (in dem Fall Zisterne) merken bis ein anderes Gerät über ein Menü gewählt wird.

                                          Callback-Funktion:

                                          const adapterName = 'telegram.0';
                                          
                                          on({ id: `${adapterName}.communicate.request`, change: 'any' }, (obj) => {
                                              const val = obj.state.val;
                                              const username = val.substring(1, val.indexOf("]"));
                                              const text = val.substring(val.indexOf("]") + 1).trim();
                                              const chatId = getState(`${adapterName}.communicate.requestChatId`).val;
                                          
                                              if (text === '/menu') {
                                                  const keyboard = {
                                                      inline_keyboard: [
                                                          [
                                                              {
                                                                  text: 'First Level 1 Option',
                                                                  callback_data: 'menu:firstLevel1'
                                                              },
                                                              {
                                                                  text: 'First Level 2 Option',
                                                                  callback_data: 'menu:firstLevel2'
                                                              }
                                                          ]
                                                      ]
                                                  };
                                                  sendTo(`${adapterName}`, 'send', { chatId: chatId, text: 'Please select an option:', reply_markup: JSON.stringify(keyboard) });
                                              } else if (text.startsWith('menu:')) {
                                                  const callbackData = text.split(':')[1];
                                                  if (callbackData === 'firstLevel1') {
                                                      const keyboard = {
                                                          inline_keyboard: [
                                                              [
                                                                  {
                                                                      text: 'Second Level 1 Option',
                                                                      callback_data: 'submenu:firstLevel1:secondLevel1'
                                                                  },
                                                                  {
                                                                      text: 'Second Level 2 Option',
                                                                      callback_data: 'submenu:firstLevel1:secondLevel2'
                                                                  }
                                                              ],
                                                              [
                                                                  {
                                                                      text: 'Back to Main Menu',
                                                                      callback_data: 'menu:back'
                                                                  }
                                                              ]
                                                          ]
                                                      };
                                                      sendTo(`${adapterName}`, 'send', { chatId: chatId, text: 'You selected First Level 1. Please select a sub-option:', reply_markup: JSON.stringify(keyboard) });
                                                  } else if (callbackData === 'firstLevel2') {
                                                      sendTo(`${adapterName}`, 'send', { chatId: chatId, text: 'You selected First Level 2.' });
                                                  } else if (callbackData.startsWith('submenu:firstLevel1:')) {
                                                      const subCallbackData = callbackData.split(':')[2];
                                                      if (subCallbackData === 'secondLevel1') {
                                                          const keyboard = {
                                                              inline_keyboard: [
                                                                  [
                                                                      {
                                                                          text: 'Back to First Level 1',
                                                                          callback_data: 'submenu:firstLevel1:back'
                                                                      },
                                                                      {
                                                                          text: 'Back to Main Menu',
                                                                          callback_data: 'menu:back'
                                                                      }
                                                                  ]
                                                              ]
                                                          };
                                                          sendTo(`${adapterName}`, 'send', { chatId: chatId, text: 'You selected Second Level 1. Please select an option:', reply_markup: JSON.stringify(keyboard) });
                                                      } else if (subCallbackData === 'secondLevel2') {
                                                          sendTo(`${adapterName}`, 'send', { chatId: chatId, text: 'You selected Second Level 2.' });
                                                      }
                                                  } else if (callbackData === 'back') {
                                                      const keyboard = {
                                                          inline_keyboard: [
                                                              [
                                                                  {
                                                                      text: 'First Level 1 Option',
                                                                      callback_data: 'menu:firstLevel1'
                                                                  },
                                                                  {
                                                                      text: 'First Level 2 Option',
                                                                      callback_data: 'menu:firstLevel2'
                                                                  }
                                                              ]
                                                          ]
                                                      };
                                                      sendTo(`${adapterName}`, 'send', { chatId: chatId, text: 'Please select an option:', reply_markup: JSON.stringify(keyboard) });
                                                  }
                                              }
                                          });
                                          
                                          
                                          Michael RolingM Offline
                                          Michael RolingM Offline
                                          Michael Roling
                                          Developer
                                          schrieb am zuletzt editiert von
                                          #86

                                          @schmakus Hi vielen Dank für dein Feedback.
                                          Die Konfiguration möchte ich nicht mit jsonConfig machen, habe das zwar in meinen anderen Adapter damit gemacht. Ich denke so bin ich doch um einiges flexibler.
                                          Wegen der Übersicht, da hast du sicherlich Recht, es ist immer Luft nach oben. Was stört dich denn am meisten? Bisher habe ich erstmal die Priorität aufs funktionelle gelegt.
                                          Mit den Menus werde ich mir noch mal anschauen, genau wie die Gerätesteuerung. Ist sicherlich eine coole Idee.

                                          S 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          736

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe