Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Tasmota 10 und sonoff adapter

NEWS

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    13
    1
    683

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    2.0k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    11
    1
    901

Tasmota 10 und sonoff adapter

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
tasmota 10
39 Beiträge 8 Kommentatoren 934 Aufrufe 5 Beobachtet
  • Ä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.
  • haselchenH haselchen

    @liv-in-sky

    Ab Version 9.3.1 , ja

    liv-in-skyL Offline
    liv-in-skyL Offline
    liv-in-sky
    schrieb am zuletzt editiert von
    #30

    @haselchen

    und so sieht es bei jmd anders mit tasmota 10 aus:

    1619938131500-dcfc469f-2801-4a85-b9d8-ad0b2c5c4ff6-image.png

    nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

    haselchenH 1 Antwort Letzte Antwort
    0
    • liv-in-skyL liv-in-sky

      @haselchen

      und so sieht es bei jmd anders mit tasmota 10 aus:

      1619938131500-dcfc469f-2801-4a85-b9d8-ad0b2c5c4ff6-image.png

      haselchenH Offline
      haselchenH Offline
      haselchen
      Most Active
      schrieb am zuletzt editiert von
      #31

      @liv-in-sky

      Scheint bei den Adaptern MQTT und Sonoff eine verschiedene Herangehensweise zu sein, wie Datenpunkte bzw Ordner angelegt werden.

      Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.7, Nodejs 22.22.2 ,JS Controller 7.0.7 ,Admin 7.8.24

      liv-in-skyL 1 Antwort Letzte Antwort
      0
      • haselchenH haselchen

        @liv-in-sky

        Scheint bei den Adaptern MQTT und Sonoff eine verschiedene Herangehensweise zu sein, wie Datenpunkte bzw Ordner angelegt werden.

        liv-in-skyL Offline
        liv-in-skyL Offline
        liv-in-sky
        schrieb am zuletzt editiert von
        #32

        @haselchen bist du in mqtt oder sonoff adapter

        nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

        haselchenH F 2 Antworten Letzte Antwort
        0
        • liv-in-skyL liv-in-sky

          @haselchen bist du in mqtt oder sonoff adapter

          haselchenH Offline
          haselchenH Offline
          haselchen
          Most Active
          schrieb am zuletzt editiert von
          #33

          @liv-in-sky

          Ganz geschmeidig im Sonoff Adapter.
          Der MQTT hatte rumgezickt, wurde immer grün gelb grün gelb...

          Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.7, Nodejs 22.22.2 ,JS Controller 7.0.7 ,Admin 7.8.24

          1 Antwort Letzte Antwort
          0
          • liv-in-skyL liv-in-sky

            @haselchen bist du in mqtt oder sonoff adapter

            F Online
            F Online
            fastfoot
            schrieb am zuletzt editiert von
            #34

            @liv-in-sky ich wollte mal was mit Klassen machen. Bin nicht sicher ob ich das richtig getroffen habe aber vielleicht hilft das hier etwas:

            /**
             * Zweck:   Leichterer Zugriff auf Tasmota Info DP
             * Datum:   09.11.2011
             * Autor:   @fastfoot
             * Forum:   https://forum.iobroker.net/topic/49205/tasmota-10-und-sonoff-adapter/34
             */
            const dbg = true;
            const DevicesBasePath = '0_userdata.0.Forum.MQTT.Tasmota';
            
            class Tasmota {
                constructor(id) {
                    this._getDps(id);
                }
                get hostname() { return getState(this.dp.hostname).val; }
                get ipaddress() { return getState(this.dp.ipaddress).val; }
                get module() { return getState(this.dp.module).val; }
                get version() { return getState(this.dp.version).val; }
                get restartreason() { return getState(this.dp.restartreason).val; }
                getId(state){return this.dp[state]}
                _getDps(id) {
                    const states = $(`${id}*`);
                    this.dp={};
                    states.each(state => {
                        const dp = state.split('.').pop();
                        let attr = dp.slice(dp.indexOf('_') + 1);
                        this.dp[attr.toLowerCase()] = state;
                    })
                }
            }
            const l1 = new Tasmota(DevicesBasePath + '.Licht1');
            const l2 = new Tasmota(DevicesBasePath + '.Licht2');
            log('hostname: ' + l1.hostname)
            log('ip: ' + l2.ipaddress)
            log('rgb: ' + getState(l2.getId('rgb')).val)
            log('version: ' + getState(l1.getId('version')).val)
            
            
            

            iobroker läuft unter Docker auf QNAP TS-451+
            SkriptRecovery: https://forum.iobroker.net/post/930558

            liv-in-skyL 2 Antworten Letzte Antwort
            0
            • F fastfoot

              @liv-in-sky ich wollte mal was mit Klassen machen. Bin nicht sicher ob ich das richtig getroffen habe aber vielleicht hilft das hier etwas:

              /**
               * Zweck:   Leichterer Zugriff auf Tasmota Info DP
               * Datum:   09.11.2011
               * Autor:   @fastfoot
               * Forum:   https://forum.iobroker.net/topic/49205/tasmota-10-und-sonoff-adapter/34
               */
              const dbg = true;
              const DevicesBasePath = '0_userdata.0.Forum.MQTT.Tasmota';
              
              class Tasmota {
                  constructor(id) {
                      this._getDps(id);
                  }
                  get hostname() { return getState(this.dp.hostname).val; }
                  get ipaddress() { return getState(this.dp.ipaddress).val; }
                  get module() { return getState(this.dp.module).val; }
                  get version() { return getState(this.dp.version).val; }
                  get restartreason() { return getState(this.dp.restartreason).val; }
                  getId(state){return this.dp[state]}
                  _getDps(id) {
                      const states = $(`${id}*`);
                      this.dp={};
                      states.each(state => {
                          const dp = state.split('.').pop();
                          let attr = dp.slice(dp.indexOf('_') + 1);
                          this.dp[attr.toLowerCase()] = state;
                      })
                  }
              }
              const l1 = new Tasmota(DevicesBasePath + '.Licht1');
              const l2 = new Tasmota(DevicesBasePath + '.Licht2');
              log('hostname: ' + l1.hostname)
              log('ip: ' + l2.ipaddress)
              log('rgb: ' + getState(l2.getId('rgb')).val)
              log('version: ' + getState(l1.getId('version')).val)
              
              
              
              liv-in-skyL Offline
              liv-in-skyL Offline
              liv-in-sky
              schrieb am zuletzt editiert von
              #35

              @fastfoot danke - aber dann muss ich die klassen auf die unterschiedlichen möglichkeiten anpassen - aber ich schaue es mir nochmal an

              @haselchen danke fürs testen

              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

              F 1 Antwort Letzte Antwort
              0
              • liv-in-skyL liv-in-sky

                @fastfoot danke - aber dann muss ich die klassen auf die unterschiedlichen möglichkeiten anpassen - aber ich schaue es mir nochmal an

                @haselchen danke fürs testen

                F Online
                F Online
                fastfoot
                schrieb am zuletzt editiert von
                #36

                @liv-in-sky sagte in Tasmota 10 und sonoff adapter:

                aber dann muss ich die klassen auf die unterschiedlichen möglichkeiten anpassen

                eigentlich ist dafür getId() vorgesehen. Statt unterschiedliche Pfade abzufragen frägst du nur den Statenamen ab, also zB rgb, on etc.. In der Klasse sind die Datenpunkte dazu gespeichert. In den gettern sind halt nur die hier im Thread behandelten Info-Punkte implementiert

                iobroker läuft unter Docker auf QNAP TS-451+
                SkriptRecovery: https://forum.iobroker.net/post/930558

                1 Antwort Letzte Antwort
                0
                • WalW Offline
                  WalW Offline
                  Wal
                  Developer
                  schrieb am zuletzt editiert von
                  #37

                  Hilft zwar jetzt nicht, aber für's nächste mal :
                  Wenn ich in Skripten mit Datenpunkten arbeite, nutze ich den alias-manager Adapter. Dort weise ich den Variablen die ich im Skript nutze die Datenpunkte zu. Wenn sich dann ein Datenpunkt mal ändert, muss ich das nur im alias-manager machen und das Skript bleibt unberührt.

                  Gruß
                  Walter

                  DoorIO-Adapter
                  wioBrowser-Adapter und wioBrowser

                  1 Antwort Letzte Antwort
                  0
                  • F fastfoot

                    @liv-in-sky ich wollte mal was mit Klassen machen. Bin nicht sicher ob ich das richtig getroffen habe aber vielleicht hilft das hier etwas:

                    /**
                     * Zweck:   Leichterer Zugriff auf Tasmota Info DP
                     * Datum:   09.11.2011
                     * Autor:   @fastfoot
                     * Forum:   https://forum.iobroker.net/topic/49205/tasmota-10-und-sonoff-adapter/34
                     */
                    const dbg = true;
                    const DevicesBasePath = '0_userdata.0.Forum.MQTT.Tasmota';
                    
                    class Tasmota {
                        constructor(id) {
                            this._getDps(id);
                        }
                        get hostname() { return getState(this.dp.hostname).val; }
                        get ipaddress() { return getState(this.dp.ipaddress).val; }
                        get module() { return getState(this.dp.module).val; }
                        get version() { return getState(this.dp.version).val; }
                        get restartreason() { return getState(this.dp.restartreason).val; }
                        getId(state){return this.dp[state]}
                        _getDps(id) {
                            const states = $(`${id}*`);
                            this.dp={};
                            states.each(state => {
                                const dp = state.split('.').pop();
                                let attr = dp.slice(dp.indexOf('_') + 1);
                                this.dp[attr.toLowerCase()] = state;
                            })
                        }
                    }
                    const l1 = new Tasmota(DevicesBasePath + '.Licht1');
                    const l2 = new Tasmota(DevicesBasePath + '.Licht2');
                    log('hostname: ' + l1.hostname)
                    log('ip: ' + l2.ipaddress)
                    log('rgb: ' + getState(l2.getId('rgb')).val)
                    log('version: ' + getState(l1.getId('version')).val)
                    
                    
                    
                    liv-in-skyL Offline
                    liv-in-skyL Offline
                    liv-in-sky
                    schrieb am zuletzt editiert von
                    #38

                    @fastfoot sagte in Tasmota 10 und sonoff adapter:

                    habe das nochmal angesehen - habe nicht so viel erfahrung mit class. habe mal vor langer zeit ein java project gemacht - ist lange her.
                    das gefällt mir besonders:

                     states.each(state => {
                                const dp = state.split('.').pop();
                                let attr = dp.slice(dp.indexOf('_') + 1);
                                this.dp[attr.toLowerCase()] = state
                    

                    leider bin ich da am selben problem - ich muss die abfragen, um was es für dp geht , auch auf alle möglichkeiten hin abfragen. z.b dein attr. das beginnt nicht immer mit _Illuminance - es wird mittlerweile mit nur Illuminance im dp geschrieben, dafür ist es in einem anderen ordner in der sonoff-instanz

                    letztlich ist aber dein vorschlag interessant - man kann mit einer klasse alles abdecken - muss halt gut geschrieben sein - ändert sich was, muss nur die class geändert werden und nicht überall mit if gearbeitet werden

                    in meinem tabellescript werde ich das nicht verwenden - ist mir im moment zuviel anpassung

                    aber ich versuche gerade ein neues project - ich habe den firetv adapter nie stabil zum laufen bekommen - evtl versuche ich da mal was mit class und einem script ans laufen zu bekommen

                    auf jeden fall danke für die idee

                    nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                    F 1 Antwort Letzte Antwort
                    0
                    • liv-in-skyL liv-in-sky

                      @fastfoot sagte in Tasmota 10 und sonoff adapter:

                      habe das nochmal angesehen - habe nicht so viel erfahrung mit class. habe mal vor langer zeit ein java project gemacht - ist lange her.
                      das gefällt mir besonders:

                       states.each(state => {
                                  const dp = state.split('.').pop();
                                  let attr = dp.slice(dp.indexOf('_') + 1);
                                  this.dp[attr.toLowerCase()] = state
                      

                      leider bin ich da am selben problem - ich muss die abfragen, um was es für dp geht , auch auf alle möglichkeiten hin abfragen. z.b dein attr. das beginnt nicht immer mit _Illuminance - es wird mittlerweile mit nur Illuminance im dp geschrieben, dafür ist es in einem anderen ordner in der sonoff-instanz

                      letztlich ist aber dein vorschlag interessant - man kann mit einer klasse alles abdecken - muss halt gut geschrieben sein - ändert sich was, muss nur die class geändert werden und nicht überall mit if gearbeitet werden

                      in meinem tabellescript werde ich das nicht verwenden - ist mir im moment zuviel anpassung

                      aber ich versuche gerade ein neues project - ich habe den firetv adapter nie stabil zum laufen bekommen - evtl versuche ich da mal was mit class und einem script ans laufen zu bekommen

                      auf jeden fall danke für die idee

                      F Online
                      F Online
                      fastfoot
                      schrieb am zuletzt editiert von
                      #39

                      @liv-in-sky sagte in Tasmota 10 und sonoff adapter:

                      z.b dein attr. das beginnt nicht immer mit _Illuminance - es wird mittlerweile mit nur Illuminance im dp geschrieben, dafür ist es in einem anderen ordner in der sonoff-instanz

                      aber das ist doch der Sinn der Klasse! Du möchtest einen DP abfragen der irgendwas mit illuminance enthält, entweder _illuminance oder Info1_Illuminance oder auch Info2.illuminance usw. Mit der Klasse werden die Attribute vereinfacht zu illuminance, egal in welcher Hierarchie sie stehen. Alles vor und incl. _ wird gelöscht. Das wäre auch schon der Nachteil, im tr-064 Adapter gibt es jede Menge json DP, da klappt das nur wenn man nicht den gesamten Adapter durchsucht sondern nur den nächst höheren Level. Für normale Geräte sollte es aber nur ein on oder rgb oder volume etc. geben und da ist es dann egal wo sie stehen.

                      In einer 2ten Version habe ich die Getter dynamisch erstellt, d.h. man muss die Klasse nicht anpassen sondern greift einfach auf NeuesLicht.NeuesFeature zu und erhält den Wert ohne ihn vorher in der Klasse explizit definiert zu haben und ohne zu wissen wo er genau steht. Auch ist es so erweitert dass man auch auf den Originalnamen zugreifen kann, also device.hostname und device.Info1_hostname liefern den gleichen Wert

                      Ich habe mir Teile deines Skriptes angesehen und denke immer noch dass das genau das ist was du brauchst. Allerdings müssen die DP eindeutige Namen haben, rgb etc darf nicht zweimal erscheinen.

                      iobroker läuft unter Docker auf QNAP TS-451+
                      SkriptRecovery: https://forum.iobroker.net/post/930558

                      1 Antwort Letzte Antwort
                      0

                      Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                      Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                      Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                      Registrieren Anmelden
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

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

                      344

                      Online

                      32.9k

                      Benutzer

                      83.1k

                      Themen

                      1.3m

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

                      • Du hast noch kein Konto? Registrieren

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