Skip to content
  • Home
  • 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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    485

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

[Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.

Geplant Angeheftet Gesperrt Verschoben JavaScript
474 Beiträge 50 Kommentatoren 102.0k Aufrufe 41 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.
  • S Spampunk

    @Pittini said in [Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.:

    @Spampunk

    An die Anleitung gehalten? Soweit ich sie verstanden habe, ja.

    JS Adapter Version > 4.8.0? Version 4.8.4

    node-mihome im js Adapter eingetragen? Ja, habe ich.

    Richtigen Server unter options eingetragen? Den Deutschen, ja (wie in der Xiaomi App).

    Woran kann es noch liegen? Ich habe die Standard-Firewall innerhalb der Fritzbox. Mit meinem Handy kann ich im WLAN auf Xiaomi App und FloleVac App zugreifen. Kann ich unter iobroker eventuell den Xiaomi-Server anpingen? Wie müsste ich dann wohl vorgehen?

    P Offline
    P Offline
    Pittini
    Developer
    schrieb am zuletzt editiert von
    #34

    @Spampunk Das einzige was mir noch einfällt und zumindest in einem Fall geholfen hat, wäre mal das komplette System neuzustarten.

    S M 2 Antworten Letzte Antwort
    0
    • P Pittini

      @Spampunk Das einzige was mir noch einfällt und zumindest in einem Fall geholfen hat, wäre mal das komplette System neuzustarten.

      S Offline
      S Offline
      Spampunk
      schrieb am zuletzt editiert von
      #35

      @Pittini said in [Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.:

      @Spampunk Das einzige was mir noch einfällt und zumindest in einem Fall geholfen hat, wäre mal das komplette System neuzustarten.

      Eine Sache ist mir noch aufgefallen: im Skriptbereich wird mir rot unterschlängelt Cannot find module 'node-mihome' angezeigt, obwohl ich es im Javascript-Adapter eingetragen habe. Muss ich dieses Modul noch irgendwo installieren?

      Unbenannt.png

      crunchipC 1 Antwort Letzte Antwort
      0
      • S Spampunk

        @Pittini said in [Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.:

        @Spampunk Das einzige was mir noch einfällt und zumindest in einem Fall geholfen hat, wäre mal das komplette System neuzustarten.

        Eine Sache ist mir noch aufgefallen: im Skriptbereich wird mir rot unterschlängelt Cannot find module 'node-mihome' angezeigt, obwohl ich es im Javascript-Adapter eingetragen habe. Muss ich dieses Modul noch irgendwo installieren?

        Unbenannt.png

        crunchipC Abwesend
        crunchipC Abwesend
        crunchip
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #36

        @Spampunk sagte in [Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.:

        Muss ich dieses Modul noch irgendwo installieren

        wenn du es dort einträgst, wird es ja installiert, wobei mir das auch schon mal passiert ist, das ein Modul nicht korrekt funktionierte und habe es dann manuell über die Konsole installiert.
        letztendlich, ein Neustart, wie zuvor schon erwähnt

        umgestiegen von Proxmox auf Unraid

        1 Antwort Letzte Antwort
        0
        • P Pittini

          @Spampunk Das einzige was mir noch einfällt und zumindest in einem Fall geholfen hat, wäre mal das komplette System neuzustarten.

          M Offline
          M Offline
          m76
          schrieb am zuletzt editiert von
          #37

          @pittini

          Habe versucht wie folgt das Script zu installiere:

          1. Javascript adapter 4.8.4
          2. "node-mihome" beim Javascript Adapter unter "Zusätzliche NPM-Module" eingetragen
          3. Das Script in raw von https://raw.githubusercontent.com/Pittini/iobroker-nodemihome/main/AllMyMi-V0.2.5.js Als neues Javascript script angelegt
          4. user und passw eingetragen. country auf de belassen.
            Bekomme aber folgenden Fehler:
          2021-01-20 13:12:44.977  - info: javascript.0 (15537) Start javascript script.js.VIS.Xiaomi.AllMyMi
          2021-01-20 13:12:45.223  - error: javascript.0 (15537) script.js.VIS.Xiaomi.AllMyMi: Error: Cannot find module '/opt/iobroker/node_modules/iobroker.javascript/lib/../../node-mihome'
          2021-01-20 13:12:45.224  - error: javascript.0 (15537)     at script.js.VIS.Xiaomi.AllMyMi:3:16
          2021-01-20 13:12:45.225  - error: javascript.0 (15537)     at Script.runInContext (vm.js:133:20)
          2021-01-20 13:12:45.226  - info: javascript.0 (15537) script.js.VIS.Xiaomi.AllMyMi: Starting AllMyMi V.0.2.5
          2021-01-20 13:12:45.227  - info: javascript.0 (15537) script.js.VIS.Xiaomi.AllMyMi: Reaching init
          2021-01-20 13:12:45.233  - info: javascript.0 (15537) script.js.VIS.Xiaomi.AllMyMi: registered 0 subscriptions and 0 schedules
          2021-01-20 13:12:45.238  - error: javascript.0 (15537) script.js.VIS.Xiaomi.AllMyMi: TypeError: Cannot read property 'miioProtocol' of undefined
          2021-01-20 13:12:45.239  - error: javascript.0 (15537)     at Init (script.js.VIS.Xiaomi.AllMyMi:586:12)
          2021-01-20 13:12:45.240  - error: javascript.0 (15537)     at script.js.VIS.Xiaomi.AllMyMi:67:1
          2021-01-20 13:12:45.240  - error: javascript.0 (15537)     at Script.runInContext (vm.js:133:20)
          

          inden logs habe ich gesehen, dass es so installiert wurde, läuft auch ohne Fehler wenn ich es manuell ausführe
          npm install node-mihome --production --prefix "/opt/iobroker/node_modules/iobroker.javascript"

          find . -name node-mihome
          ./node_modules/iobroker.javascript/node_modules/node-mihome
          

          Was habe ich übersehen?

          M 1 Antwort Letzte Antwort
          0
          • M m76

            @pittini

            Habe versucht wie folgt das Script zu installiere:

            1. Javascript adapter 4.8.4
            2. "node-mihome" beim Javascript Adapter unter "Zusätzliche NPM-Module" eingetragen
            3. Das Script in raw von https://raw.githubusercontent.com/Pittini/iobroker-nodemihome/main/AllMyMi-V0.2.5.js Als neues Javascript script angelegt
            4. user und passw eingetragen. country auf de belassen.
              Bekomme aber folgenden Fehler:
            2021-01-20 13:12:44.977  - info: javascript.0 (15537) Start javascript script.js.VIS.Xiaomi.AllMyMi
            2021-01-20 13:12:45.223  - error: javascript.0 (15537) script.js.VIS.Xiaomi.AllMyMi: Error: Cannot find module '/opt/iobroker/node_modules/iobroker.javascript/lib/../../node-mihome'
            2021-01-20 13:12:45.224  - error: javascript.0 (15537)     at script.js.VIS.Xiaomi.AllMyMi:3:16
            2021-01-20 13:12:45.225  - error: javascript.0 (15537)     at Script.runInContext (vm.js:133:20)
            2021-01-20 13:12:45.226  - info: javascript.0 (15537) script.js.VIS.Xiaomi.AllMyMi: Starting AllMyMi V.0.2.5
            2021-01-20 13:12:45.227  - info: javascript.0 (15537) script.js.VIS.Xiaomi.AllMyMi: Reaching init
            2021-01-20 13:12:45.233  - info: javascript.0 (15537) script.js.VIS.Xiaomi.AllMyMi: registered 0 subscriptions and 0 schedules
            2021-01-20 13:12:45.238  - error: javascript.0 (15537) script.js.VIS.Xiaomi.AllMyMi: TypeError: Cannot read property 'miioProtocol' of undefined
            2021-01-20 13:12:45.239  - error: javascript.0 (15537)     at Init (script.js.VIS.Xiaomi.AllMyMi:586:12)
            2021-01-20 13:12:45.240  - error: javascript.0 (15537)     at script.js.VIS.Xiaomi.AllMyMi:67:1
            2021-01-20 13:12:45.240  - error: javascript.0 (15537)     at Script.runInContext (vm.js:133:20)
            

            inden logs habe ich gesehen, dass es so installiert wurde, läuft auch ohne Fehler wenn ich es manuell ausführe
            npm install node-mihome --production --prefix "/opt/iobroker/node_modules/iobroker.javascript"

            find . -name node-mihome
            ./node_modules/iobroker.javascript/node_modules/node-mihome
            

            Was habe ich übersehen?

            M Offline
            M Offline
            m76
            schrieb am zuletzt editiert von
            #38

            @m76

            wenn ich den require ändere auf:
            const mihome = require('iobroker.javascript/node_modules/node-mihome');

            bekomme ich folgenden Fehler:

            2021-01-20 13:59:22.353  - error: javascript.0 (22232) script.js.VIS.Xiaomi.testMii: /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-mihome/lib/devices/deerma.humidifier.jsq.js:5
            2021-01-20 13:59:22.353  - error: javascript.0 (22232)     at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
            2021-01-20 13:59:22.353  - error: javascript.0 (22232)     at Module.load (internal/modules/cjs/loader.js:653:32)
            2021-01-20 13:59:22.354  - error: javascript.0 (22232)     at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
            2021-01-20 13:59:22.354  - error: javascript.0 (22232)     at Function.Module._load (internal/modules/cjs/loader.js:585:3)
            2021-01-20 13:59:22.354  - error: javascript.0 (22232)     at Module.require (internal/modules/cjs/loader.js:692:17)
            2021-01-20 13:59:22.354  - error: javascript.0 (22232)     at require (internal/modules/cjs/helpers.js:25:18)
            2021-01-20 13:59:22.354  - error: javascript.0 (22232)     at glob.sync.forEach.modelPath (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-mihome/lib/models.js:9:23)
            2021-01-20 13:59:22.355  - error: javascript.0 (22232)     at Array.forEach (<anonymous>)
            ...
            
            W 1 Antwort Letzte Antwort
            0
            • M m76

              @m76

              wenn ich den require ändere auf:
              const mihome = require('iobroker.javascript/node_modules/node-mihome');

              bekomme ich folgenden Fehler:

              2021-01-20 13:59:22.353  - error: javascript.0 (22232) script.js.VIS.Xiaomi.testMii: /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-mihome/lib/devices/deerma.humidifier.jsq.js:5
              2021-01-20 13:59:22.353  - error: javascript.0 (22232)     at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
              2021-01-20 13:59:22.353  - error: javascript.0 (22232)     at Module.load (internal/modules/cjs/loader.js:653:32)
              2021-01-20 13:59:22.354  - error: javascript.0 (22232)     at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
              2021-01-20 13:59:22.354  - error: javascript.0 (22232)     at Function.Module._load (internal/modules/cjs/loader.js:585:3)
              2021-01-20 13:59:22.354  - error: javascript.0 (22232)     at Module.require (internal/modules/cjs/loader.js:692:17)
              2021-01-20 13:59:22.354  - error: javascript.0 (22232)     at require (internal/modules/cjs/helpers.js:25:18)
              2021-01-20 13:59:22.354  - error: javascript.0 (22232)     at glob.sync.forEach.modelPath (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-mihome/lib/models.js:9:23)
              2021-01-20 13:59:22.355  - error: javascript.0 (22232)     at Array.forEach (<anonymous>)
              ...
              
              W Online
              W Online
              Wildbill
              schrieb am zuletzt editiert von
              #39

              @m76 Hast Du den JS-Adapter danach einmal komplett neu gestartet?

              Gruß, Jürgen

              M 1 Antwort Letzte Antwort
              0
              • W Wildbill

                @m76 Hast Du den JS-Adapter danach einmal komplett neu gestartet?

                Gruß, Jürgen

                M Offline
                M Offline
                m76
                schrieb am zuletzt editiert von
                #40

                @wildbill

                hi, ja, ich hatte den erst in compact mode. Verursachte aber Probleme, startete sich immer wieder neu.
                Ich hatte auch probiert:
                npm install node-mihome --production --prefix "/opt/iobroker/node_modules/iobroker.javascript"
                (wie gesehen im log - keine Auffälligkeiten)
                npm install node-mihome
                Letzteres brachtre gleiche Fehlermeldung wenn ichmich nicht irre als wie mit dem "require".

                W 1 Antwort Letzte Antwort
                0
                • M m76

                  @wildbill

                  hi, ja, ich hatte den erst in compact mode. Verursachte aber Probleme, startete sich immer wieder neu.
                  Ich hatte auch probiert:
                  npm install node-mihome --production --prefix "/opt/iobroker/node_modules/iobroker.javascript"
                  (wie gesehen im log - keine Auffälligkeiten)
                  npm install node-mihome
                  Letzteres brachtre gleiche Fehlermeldung wenn ichmich nicht irre als wie mit dem "require".

                  W Online
                  W Online
                  Wildbill
                  schrieb am zuletzt editiert von
                  #41

                  @m76 Wie sieht es bei Dir im iobroker unter "/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-mihome/lib/devices/" aus. Hast Du da die devices als einzelne Dateien?

                  Gruss, Jürgen

                  1 Antwort Letzte Antwort
                  0
                  • A Offline
                    A Offline
                    ahzurdan
                    schrieb am zuletzt editiert von
                    #42

                    Hallo Gemeinde,
                    ich versuche das Skript auf meinem Pi4 laufen zu lassen (JS 4.8.4, node-mihome da drin eingetragen, user/pass im Skript)

                    Ich bekomme aber nur Fehler beim Skriptstart. Was habe ich vergessen?

                    vg
                    Sven

                    javascript.0 2021-01-28 15:17:41.974 error (2380) at Script.runInContext (vm.js:133:20)
                    javascript.0 2021-01-28 15:17:41.974 error (2380) at script.js.skripte.Allgemein.Purify:3:16
                    javascript.0 2021-01-28 15:17:41.974 error (2380) at require (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:389:36)
                    javascript.0 2021-01-28 15:17:41.973 error (2380) at require (internal/modules/cjs/helpers.js:25:18)
                    javascript.0 2021-01-28 15:17:41.973 error (2380) at Module.require (internal/modules/cjs/loader.js:692:17)
                    javascript.0 2021-01-28 15:17:41.973 error (2380) at Function.Module._load (internal/modules/cjs/loader.js:585:3)
                    javascript.0 2021-01-28 15:17:41.973 error (2380) at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
                    javascript.0 2021-01-28 15:17:41.973 error (2380) at Module.load (internal/modules/cjs/loader.js:653:32)
                    javascript.0 2021-01-28 15:17:41.973 error (2380) at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
                    javascript.0 2021-01-28 15:17:41.972 error (2380) at Module._compile (internal/modules/cjs/loader.js:778:30)
                    javascript.0 2021-01-28 15:17:41.972 error (2380) at Object.<anonymous> (/opt/iobroker/node_modules/node-mihome/lib/index.js:5:16)
                    javascript.0 2021-01-28 15:17:41.972 error (2380) at require (internal/modules/cjs/helpers.js:25:18)
                    javascript.0 2021-01-28 15:17:41.972 error (2380) at Module.require (internal/modules/cjs/loader.js:692:17)
                    javascript.0 2021-01-28 15:17:41.972 error (2380) at Function.Module._load (internal/modules/cjs/loader.js:585:3)
                    javascript.0 2021-01-28 15:17:41.972 error (2380) at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
                    javascript.0 2021-01-28 15:17:41.972 error (2380) at Module.load (internal/modules/cjs/loader.js:653:32)
                    javascript.0 2021-01-28 15:17:41.971 error (2380) at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
                    javascript.0 2021-01-28 15:17:41.971 error (2380) at Module._compile (internal/modules/cjs/loader.js:778:30)
                    javascript.0 2021-01-28 15:17:41.971 error (2380) at Object.<anonymous> (/opt/iobroker/node_modules/node-mihome/lib/device.js:1:16)
                    javascript.0 2021-01-28 15:17:41.971 error (2380) at require (internal/modules/cjs/helpers.js:25:18)
                    javascript.0 2021-01-28 15:17:41.971 error (2380) at Module.require (internal/modules/cjs/loader.js:692:17)
                    javascript.0 2021-01-28 15:17:41.971 error (2380) at Function.Module._load (internal/modules/cjs/loader.js:585:3)
                    javascript.0 2021-01-28 15:17:41.970 error (2380) at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
                    javascript.0 2021-01-28 15:17:41.970 error (2380) at Module.load (internal/modules/cjs/loader.js:653:32)
                    javascript.0 2021-01-28 15:17:41.970 error (2380) at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
                    javascript.0 2021-01-28 15:17:41.970 error (2380) at Module._compile (internal/modules/cjs/loader.js:778:30)
                    javascript.0 2021-01-28 15:17:41.970 error (2380) at Object.<anonymous> (/opt/iobroker/node_modules/node-mihome/lib/models.js:6:54)
                    javascript.0 2021-01-28 15:17:41.970 error (2380) at Array.forEach (<anonymous>:null:null)
                    javascript.0 2021-01-28 15:17:41.969 error (2380) at glob.sync.forEach.modelPath (/opt/iobroker/node_modules/node-mihome/lib/models.js:9:23)
                    javascript.0 2021-01-28 15:17:41.969 error (2380) at require (internal/modules/cjs/helpers.js:25:18)
                    javascript.0 2021-01-28 15:17:41.969 error (2380) at Module.require (internal/modules/cjs/loader.js:692:17)
                    javascript.0 2021-01-28 15:17:41.969 error (2380) at Function.Module._load (internal/modules/cjs/loader.js:585:3)
                    javascript.0 2021-01-28 15:17:41.969 error (2380) at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
                    javascript.0 2021-01-28 15:17:41.968 error (2380) at Module.load (internal/modules/cjs/loader.js:653:32)
                    javascript.0 2021-01-28 15:17:41.968 error (2380) at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
                    javascript.0 2021-01-28 15:17:41.968 error (2380) script.js.skripte.Allgemein.Purify: /opt/iobroker/node_modules/node-mihome/lib/devices/imibar.cooker.mbihr3.js:26

                    P 1 Antwort Letzte Antwort
                    0
                    • A ahzurdan

                      Hallo Gemeinde,
                      ich versuche das Skript auf meinem Pi4 laufen zu lassen (JS 4.8.4, node-mihome da drin eingetragen, user/pass im Skript)

                      Ich bekomme aber nur Fehler beim Skriptstart. Was habe ich vergessen?

                      vg
                      Sven

                      javascript.0 2021-01-28 15:17:41.974 error (2380) at Script.runInContext (vm.js:133:20)
                      javascript.0 2021-01-28 15:17:41.974 error (2380) at script.js.skripte.Allgemein.Purify:3:16
                      javascript.0 2021-01-28 15:17:41.974 error (2380) at require (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:389:36)
                      javascript.0 2021-01-28 15:17:41.973 error (2380) at require (internal/modules/cjs/helpers.js:25:18)
                      javascript.0 2021-01-28 15:17:41.973 error (2380) at Module.require (internal/modules/cjs/loader.js:692:17)
                      javascript.0 2021-01-28 15:17:41.973 error (2380) at Function.Module._load (internal/modules/cjs/loader.js:585:3)
                      javascript.0 2021-01-28 15:17:41.973 error (2380) at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
                      javascript.0 2021-01-28 15:17:41.973 error (2380) at Module.load (internal/modules/cjs/loader.js:653:32)
                      javascript.0 2021-01-28 15:17:41.973 error (2380) at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
                      javascript.0 2021-01-28 15:17:41.972 error (2380) at Module._compile (internal/modules/cjs/loader.js:778:30)
                      javascript.0 2021-01-28 15:17:41.972 error (2380) at Object.<anonymous> (/opt/iobroker/node_modules/node-mihome/lib/index.js:5:16)
                      javascript.0 2021-01-28 15:17:41.972 error (2380) at require (internal/modules/cjs/helpers.js:25:18)
                      javascript.0 2021-01-28 15:17:41.972 error (2380) at Module.require (internal/modules/cjs/loader.js:692:17)
                      javascript.0 2021-01-28 15:17:41.972 error (2380) at Function.Module._load (internal/modules/cjs/loader.js:585:3)
                      javascript.0 2021-01-28 15:17:41.972 error (2380) at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
                      javascript.0 2021-01-28 15:17:41.972 error (2380) at Module.load (internal/modules/cjs/loader.js:653:32)
                      javascript.0 2021-01-28 15:17:41.971 error (2380) at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
                      javascript.0 2021-01-28 15:17:41.971 error (2380) at Module._compile (internal/modules/cjs/loader.js:778:30)
                      javascript.0 2021-01-28 15:17:41.971 error (2380) at Object.<anonymous> (/opt/iobroker/node_modules/node-mihome/lib/device.js:1:16)
                      javascript.0 2021-01-28 15:17:41.971 error (2380) at require (internal/modules/cjs/helpers.js:25:18)
                      javascript.0 2021-01-28 15:17:41.971 error (2380) at Module.require (internal/modules/cjs/loader.js:692:17)
                      javascript.0 2021-01-28 15:17:41.971 error (2380) at Function.Module._load (internal/modules/cjs/loader.js:585:3)
                      javascript.0 2021-01-28 15:17:41.970 error (2380) at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
                      javascript.0 2021-01-28 15:17:41.970 error (2380) at Module.load (internal/modules/cjs/loader.js:653:32)
                      javascript.0 2021-01-28 15:17:41.970 error (2380) at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
                      javascript.0 2021-01-28 15:17:41.970 error (2380) at Module._compile (internal/modules/cjs/loader.js:778:30)
                      javascript.0 2021-01-28 15:17:41.970 error (2380) at Object.<anonymous> (/opt/iobroker/node_modules/node-mihome/lib/models.js:6:54)
                      javascript.0 2021-01-28 15:17:41.970 error (2380) at Array.forEach (<anonymous>:null:null)
                      javascript.0 2021-01-28 15:17:41.969 error (2380) at glob.sync.forEach.modelPath (/opt/iobroker/node_modules/node-mihome/lib/models.js:9:23)
                      javascript.0 2021-01-28 15:17:41.969 error (2380) at require (internal/modules/cjs/helpers.js:25:18)
                      javascript.0 2021-01-28 15:17:41.969 error (2380) at Module.require (internal/modules/cjs/loader.js:692:17)
                      javascript.0 2021-01-28 15:17:41.969 error (2380) at Function.Module._load (internal/modules/cjs/loader.js:585:3)
                      javascript.0 2021-01-28 15:17:41.969 error (2380) at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
                      javascript.0 2021-01-28 15:17:41.968 error (2380) at Module.load (internal/modules/cjs/loader.js:653:32)
                      javascript.0 2021-01-28 15:17:41.968 error (2380) at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
                      javascript.0 2021-01-28 15:17:41.968 error (2380) script.js.skripte.Allgemein.Purify: /opt/iobroker/node_modules/node-mihome/lib/devices/imibar.cooker.mbihr3.js:26

                      P Offline
                      P Offline
                      Pittini
                      Developer
                      schrieb am zuletzt editiert von
                      #43

                      @ahzurdan Wie ich grad auf Git schon schrieb:
                      (2380) at script.js.skripte.Allgemein.Purify:3:16 is das Problem, was danach kommt sind folgefehler würd ich sagen. Zeile 3 is das

                      const mihome = require('node-mihome');
                      

                      Also passt iwas mit node-mihome nicht. Auch seltsam ist der Pfad den ich im letzten Logeintrag seh, bei mir sieht der so aus,
                      /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-mihome/lib/devices/
                      aber evtl. is das wegen pi. Jedenfalls, das Problem is nicht das Skript, sondern die Einbindung von node-mihome

                      H 1 Antwort Letzte Antwort
                      0
                      • P Pittini

                        @ahzurdan Wie ich grad auf Git schon schrieb:
                        (2380) at script.js.skripte.Allgemein.Purify:3:16 is das Problem, was danach kommt sind folgefehler würd ich sagen. Zeile 3 is das

                        const mihome = require('node-mihome');
                        

                        Also passt iwas mit node-mihome nicht. Auch seltsam ist der Pfad den ich im letzten Logeintrag seh, bei mir sieht der so aus,
                        /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-mihome/lib/devices/
                        aber evtl. is das wegen pi. Jedenfalls, das Problem is nicht das Skript, sondern die Einbindung von node-mihome

                        H Offline
                        H Offline
                        hilde0407
                        schrieb am zuletzt editiert von
                        #44

                        @pittini Habe beim Skript folgenden Fehler,,, Das hängt wohl mit dem Yeelight Bulp 2 (farbige Lampe) zusammen...

                        20:53:11.425	error	javascript.0 (11255) script.js.common.Wohnung_Anja_und_Volker.Heizungssteuerung.Schlafzimmer.Ventilator_4: Error: Model yeelink.light.color2 is not supported
                        20:53:11.427	error	javascript.0 (11255) at CreateDevices (script.js.common.Wohnung_Anja_und_Volker.Heizungssteuerung.Schlafzimmer.Ventilator_4:598:36)
                        20:53:11.428	error	javascript.0 (11255) at main (script.js.common.Wohnung_Anja_und_Volker.Heizungssteuerung.Schlafzimmer.Ventilator_4:530:5)
                        
                        P 1 Antwort Letzte Antwort
                        0
                        • H hilde0407

                          @pittini Habe beim Skript folgenden Fehler,,, Das hängt wohl mit dem Yeelight Bulp 2 (farbige Lampe) zusammen...

                          20:53:11.425	error	javascript.0 (11255) script.js.common.Wohnung_Anja_und_Volker.Heizungssteuerung.Schlafzimmer.Ventilator_4: Error: Model yeelink.light.color2 is not supported
                          20:53:11.427	error	javascript.0 (11255) at CreateDevices (script.js.common.Wohnung_Anja_und_Volker.Heizungssteuerung.Schlafzimmer.Ventilator_4:598:36)
                          20:53:11.428	error	javascript.0 (11255) at main (script.js.common.Wohnung_Anja_und_Volker.Heizungssteuerung.Schlafzimmer.Ventilator_4:530:5)
                          
                          P Offline
                          P Offline
                          Pittini
                          Developer
                          schrieb am zuletzt editiert von
                          #45

                          @hilde0407 Hm ja, das ist weil der node-mihome Entwickler nach kurzem röcheln wieder in Winterschlaf verfallen ist und weder Issue noch prs bearbeitet. Schnellste Lösung: Das hier unter dem Namen yeelink.light.color2.js ins Verzeichnis /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-mihome/lib/devices/
                          Dann Js Controller neustarten, dann sollte die funktionieren mit Ausnahme Farbe einstellen, das hab ich noch ned rausgefunden was da erwartet wird.

                          const Device = require('../device-miio');
                          const { withLightEffect } = require('../utils');
                          
                          module.exports = class extends Device {
                          
                            static model = 'yeelink.light.color2';
                            static name = 'Yeelight LED Bulb (Color)';
                            static image = 'http://static.home.mi.com/app/image/get/file/developer_15233531497uxs6o06.png';
                          
                            constructor(opts) {
                              super(opts);
                          
                             // this._miotSpecType = 'urn:miot-spec-v2:device:light:0000A001:yeelink-color2:1';
                              this._propertiesToMonitor = [
                                'power',
                                'bright',
                                'rgb',
                                'color_mode',
                                'ct'];
                            }
                          
                            getPower() {
                              const { power } = this.properties;
                              if (power === 'on') return true;
                              if (power === 'off') return false;
                              return undefined;
                            }
                          
                            getBrightness() {
                              const brightness = parseInt(this.properties.bright, 10);
                              if (brightness >= 0) return brightness;
                              return undefined;
                            }
                          
                            getColorRgb() {
                              const colorRgb = parseInt(this.properties.rgb, 10);
                              if (colorRgb >= 1) return colorRgb;
                              return undefined;
                            }
                          
                            getMode() {
                              const mode = parseInt(this.properties.color_mode, 10);
                              if (mode >= 1) return mode;
                              return undefined;
                            }
                          
                            getCt() {
                              const ct = parseInt(this.properties['color-temperature'], 10);
                              if (ct >= 1700) return ct;
                              return undefined;
                            }
                          
                          
                            setPower(v) {
                              return this.miioCall('set_power', withLightEffect(v ? 'on' : 'off'));
                            }
                          
                            setBrightness(v) {
                              return this.miioCall('set_bright', withLightEffect(v));
                            }
                          
                            setColorRgb(v) {
                              this._miioCall('set_rgb', withLightEffect(v.rgb));
                            }
                          
                            setMode(v) {
                              return this.miioCall('set_color_mode', withLightEffect(v));
                            }
                            setCt(v) {
                              return this.miioCall('set_color-temperature', withLightEffect(v));
                            }
                          
                          };
                          
                          H 2 Antworten Letzte Antwort
                          1
                          • P Pittini

                            @hilde0407 Hm ja, das ist weil der node-mihome Entwickler nach kurzem röcheln wieder in Winterschlaf verfallen ist und weder Issue noch prs bearbeitet. Schnellste Lösung: Das hier unter dem Namen yeelink.light.color2.js ins Verzeichnis /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-mihome/lib/devices/
                            Dann Js Controller neustarten, dann sollte die funktionieren mit Ausnahme Farbe einstellen, das hab ich noch ned rausgefunden was da erwartet wird.

                            const Device = require('../device-miio');
                            const { withLightEffect } = require('../utils');
                            
                            module.exports = class extends Device {
                            
                              static model = 'yeelink.light.color2';
                              static name = 'Yeelight LED Bulb (Color)';
                              static image = 'http://static.home.mi.com/app/image/get/file/developer_15233531497uxs6o06.png';
                            
                              constructor(opts) {
                                super(opts);
                            
                               // this._miotSpecType = 'urn:miot-spec-v2:device:light:0000A001:yeelink-color2:1';
                                this._propertiesToMonitor = [
                                  'power',
                                  'bright',
                                  'rgb',
                                  'color_mode',
                                  'ct'];
                              }
                            
                              getPower() {
                                const { power } = this.properties;
                                if (power === 'on') return true;
                                if (power === 'off') return false;
                                return undefined;
                              }
                            
                              getBrightness() {
                                const brightness = parseInt(this.properties.bright, 10);
                                if (brightness >= 0) return brightness;
                                return undefined;
                              }
                            
                              getColorRgb() {
                                const colorRgb = parseInt(this.properties.rgb, 10);
                                if (colorRgb >= 1) return colorRgb;
                                return undefined;
                              }
                            
                              getMode() {
                                const mode = parseInt(this.properties.color_mode, 10);
                                if (mode >= 1) return mode;
                                return undefined;
                              }
                            
                              getCt() {
                                const ct = parseInt(this.properties['color-temperature'], 10);
                                if (ct >= 1700) return ct;
                                return undefined;
                              }
                            
                            
                              setPower(v) {
                                return this.miioCall('set_power', withLightEffect(v ? 'on' : 'off'));
                              }
                            
                              setBrightness(v) {
                                return this.miioCall('set_bright', withLightEffect(v));
                              }
                            
                              setColorRgb(v) {
                                this._miioCall('set_rgb', withLightEffect(v.rgb));
                              }
                            
                              setMode(v) {
                                return this.miioCall('set_color_mode', withLightEffect(v));
                              }
                              setCt(v) {
                                return this.miioCall('set_color-temperature', withLightEffect(v));
                              }
                            
                            };
                            
                            H Offline
                            H Offline
                            hilde0407
                            schrieb am zuletzt editiert von
                            #46

                            @pittini Vielen Dank!

                            1 Antwort Letzte Antwort
                            0
                            • P Pittini

                              @hilde0407 Hm ja, das ist weil der node-mihome Entwickler nach kurzem röcheln wieder in Winterschlaf verfallen ist und weder Issue noch prs bearbeitet. Schnellste Lösung: Das hier unter dem Namen yeelink.light.color2.js ins Verzeichnis /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-mihome/lib/devices/
                              Dann Js Controller neustarten, dann sollte die funktionieren mit Ausnahme Farbe einstellen, das hab ich noch ned rausgefunden was da erwartet wird.

                              const Device = require('../device-miio');
                              const { withLightEffect } = require('../utils');
                              
                              module.exports = class extends Device {
                              
                                static model = 'yeelink.light.color2';
                                static name = 'Yeelight LED Bulb (Color)';
                                static image = 'http://static.home.mi.com/app/image/get/file/developer_15233531497uxs6o06.png';
                              
                                constructor(opts) {
                                  super(opts);
                              
                                 // this._miotSpecType = 'urn:miot-spec-v2:device:light:0000A001:yeelink-color2:1';
                                  this._propertiesToMonitor = [
                                    'power',
                                    'bright',
                                    'rgb',
                                    'color_mode',
                                    'ct'];
                                }
                              
                                getPower() {
                                  const { power } = this.properties;
                                  if (power === 'on') return true;
                                  if (power === 'off') return false;
                                  return undefined;
                                }
                              
                                getBrightness() {
                                  const brightness = parseInt(this.properties.bright, 10);
                                  if (brightness >= 0) return brightness;
                                  return undefined;
                                }
                              
                                getColorRgb() {
                                  const colorRgb = parseInt(this.properties.rgb, 10);
                                  if (colorRgb >= 1) return colorRgb;
                                  return undefined;
                                }
                              
                                getMode() {
                                  const mode = parseInt(this.properties.color_mode, 10);
                                  if (mode >= 1) return mode;
                                  return undefined;
                                }
                              
                                getCt() {
                                  const ct = parseInt(this.properties['color-temperature'], 10);
                                  if (ct >= 1700) return ct;
                                  return undefined;
                                }
                              
                              
                                setPower(v) {
                                  return this.miioCall('set_power', withLightEffect(v ? 'on' : 'off'));
                                }
                              
                                setBrightness(v) {
                                  return this.miioCall('set_bright', withLightEffect(v));
                                }
                              
                                setColorRgb(v) {
                                  this._miioCall('set_rgb', withLightEffect(v.rgb));
                                }
                              
                                setMode(v) {
                                  return this.miioCall('set_color_mode', withLightEffect(v));
                                }
                                setCt(v) {
                                  return this.miioCall('set_color-temperature', withLightEffect(v));
                                }
                              
                              };
                              
                              H Offline
                              H Offline
                              hilde0407
                              schrieb am zuletzt editiert von
                              #47

                              @pittini Deine Anleitung hat funktioniert! Mein Problem, nicht nur bei den Lampen (auch beim Ventilator) ist, dass die aktuellen Zustände nicht auf die Datenpunkte übertragen werden. Gibt es da auch eine Lösung?

                              P 1 Antwort Letzte Antwort
                              0
                              • H hilde0407

                                @pittini Deine Anleitung hat funktioniert! Mein Problem, nicht nur bei den Lampen (auch beim Ventilator) ist, dass die aktuellen Zustände nicht auf die Datenpunkte übertragen werden. Gibt es da auch eine Lösung?

                                P Offline
                                P Offline
                                Pittini
                                Developer
                                schrieb am zuletzt editiert von
                                #48

                                @hilde0407 sagte in [Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.:

                                Gibt es da auch eine Lösung?

                                Bestimmt. Aber bestimmt nicht ohne Log und etwas genauerer Erklärung was passiert und was nicht.

                                1 Antwort Letzte Antwort
                                0
                                • E Offline
                                  E Offline
                                  esche
                                  schrieb am zuletzt editiert von
                                  #49

                                  Hallo zusammen,

                                  erstmal vielen Dank für das Script @Pittini . Ich habe es mal mit meinem 3H getestet und funktioniert soweit echt gut.

                                  Was mir aber sofort aufgefallen ist, ist die Verwendung von "setObject" im Script.
                                  Dies hatte ich bisher im JS-Adapter nicht aktiviert, da dies ja auch aus "Sicherheitsgründen" standardmäßig deaktiviert ist.

                                  Wäre es vielleicht sinnvoll/möglich dies in der Form nicht zu verwenden?
                                  Wenn ich die Object-Schemabeschreibung richtig verstehe, ist diese Funktion auch nicht für solche Scripte gedacht und "eigentlich" den Adaptern vorbehalten.
                                  https://www.iobroker.net/#de/documentation/dev/objectsschema.md#Objekttypen

                                  Gibt es ggf. einen techn. Grund, warum diese Funktion verwendet werden muss?
                                  Wenn ja, wäre es nicht etwas "sicherer" die Funktion "extendObject" zu verwenden?
                                  https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#extendObject

                                  Falls es sich wirklich nicht vermeiden lässt, sollte dies vielleicht auch in die Installationsanleitung mit aufgenommen werden.

                                  Gruß
                                  Esche

                                  P 1 Antwort Letzte Antwort
                                  0
                                  • E esche

                                    Hallo zusammen,

                                    erstmal vielen Dank für das Script @Pittini . Ich habe es mal mit meinem 3H getestet und funktioniert soweit echt gut.

                                    Was mir aber sofort aufgefallen ist, ist die Verwendung von "setObject" im Script.
                                    Dies hatte ich bisher im JS-Adapter nicht aktiviert, da dies ja auch aus "Sicherheitsgründen" standardmäßig deaktiviert ist.

                                    Wäre es vielleicht sinnvoll/möglich dies in der Form nicht zu verwenden?
                                    Wenn ich die Object-Schemabeschreibung richtig verstehe, ist diese Funktion auch nicht für solche Scripte gedacht und "eigentlich" den Adaptern vorbehalten.
                                    https://www.iobroker.net/#de/documentation/dev/objectsschema.md#Objekttypen

                                    Gibt es ggf. einen techn. Grund, warum diese Funktion verwendet werden muss?
                                    Wenn ja, wäre es nicht etwas "sicherer" die Funktion "extendObject" zu verwenden?
                                    https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#extendObject

                                    Falls es sich wirklich nicht vermeiden lässt, sollte dies vielleicht auch in die Installationsanleitung mit aufgenommen werden.

                                    Gruß
                                    Esche

                                    P Offline
                                    P Offline
                                    Pittini
                                    Developer
                                    schrieb am zuletzt editiert von
                                    #50

                                    @esche sagte in [Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.:

                                    Hallo zusammen,

                                    erstmal vielen Dank für das Script @Pittini . Ich habe es mal mit meinem 3H getestet und funktioniert soweit echt gut.

                                    Was mir aber sofort aufgefallen ist, ist die Verwendung von "setObject" im Script.
                                    Dies hatte ich bisher im JS-Adapter nicht aktiviert, da dies ja auch aus "Sicherheitsgründen" standardmäßig deaktiviert ist.

                                    Ja, das sollte ich evtl. mal in der Doku dazu schreiben.

                                    Wäre es vielleicht sinnvoll/möglich dies in der Form nicht zu verwenden?
                                    Wenn Du einen anderen/besseren Weg kennst aus einem Ordner der beim Datenpunktanlegen miterstellt wird, einen Channel oder Device zu machen und nen Namen zu geben....bitte ich höre.

                                    Wenn ich die Object-Schemabeschreibung richtig verstehe, ist diese Funktion auch nicht für solche Scripte gedacht und "eigentlich" den Adaptern vorbehalten.
                                    https://www.iobroker.net/#de/documentation/dev/objectsschema.md#Objekttypen

                                    Es gibt tatsächlich Funktionen welche Adaptern vorbehalten sind. Diese sind auch nur in Adaptern zugänglich. setObjekt is zugänglich also legitim zu verwenden und auch nötig einzusetzen.

                                    E 1 Antwort Letzte Antwort
                                    0
                                    • P Pittini

                                      @esche sagte in [Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.:

                                      Hallo zusammen,

                                      erstmal vielen Dank für das Script @Pittini . Ich habe es mal mit meinem 3H getestet und funktioniert soweit echt gut.

                                      Was mir aber sofort aufgefallen ist, ist die Verwendung von "setObject" im Script.
                                      Dies hatte ich bisher im JS-Adapter nicht aktiviert, da dies ja auch aus "Sicherheitsgründen" standardmäßig deaktiviert ist.

                                      Ja, das sollte ich evtl. mal in der Doku dazu schreiben.

                                      Wäre es vielleicht sinnvoll/möglich dies in der Form nicht zu verwenden?
                                      Wenn Du einen anderen/besseren Weg kennst aus einem Ordner der beim Datenpunktanlegen miterstellt wird, einen Channel oder Device zu machen und nen Namen zu geben....bitte ich höre.

                                      Wenn ich die Object-Schemabeschreibung richtig verstehe, ist diese Funktion auch nicht für solche Scripte gedacht und "eigentlich" den Adaptern vorbehalten.
                                      https://www.iobroker.net/#de/documentation/dev/objectsschema.md#Objekttypen

                                      Es gibt tatsächlich Funktionen welche Adaptern vorbehalten sind. Diese sind auch nur in Adaptern zugänglich. setObjekt is zugänglich also legitim zu verwenden und auch nötig einzusetzen.

                                      E Offline
                                      E Offline
                                      esche
                                      schrieb am zuletzt editiert von
                                      #51

                                      @pittini said in [Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.:

                                      ….auch nötig einzusetzen.

                                      Darf ich fragen warum es unbedingt nötig ist? Warum muss das Objekt unbedingt ein Channel/Device sein und kein State?

                                      P 1 Antwort Letzte Antwort
                                      0
                                      • E esche

                                        @pittini said in [Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.:

                                        ….auch nötig einzusetzen.

                                        Darf ich fragen warum es unbedingt nötig ist? Warum muss das Objekt unbedingt ein Channel/Device sein und kein State?

                                        P Offline
                                        P Offline
                                        Pittini
                                        Developer
                                        schrieb am zuletzt editiert von
                                        #52

                                        @esche Die Antwort steht in dem von Dir propagierten Link https://www.iobroker.net/#de/documentation/dev/objectsschema.md#Objekttypen

                                        Objekttypen

                                        state - Datenpunkt. Eltern sollten vom Typ Kanal, Gerät, Instanz oder Host sein
                                        channel - Objekt zum Gruppieren eines oder mehrerer Datenpunkte. Eltern sollten Gerät sein.
                                        device - Objekt zum Gruppieren eines oder mehrerer Kanäle oder Datenpunkte. Sollte außer dem Adapterinstanz-Namespace kein übergeordnetes Element haben.

                                        1 Antwort Letzte Antwort
                                        0
                                        • M Offline
                                          M Offline
                                          MrLee
                                          schrieb am zuletzt editiert von
                                          #53

                                          Moin!

                                          Habe leider auch das Problem auf meinem Hauptsystem mi-home zum laufen zu bekommen...

                                          • mi-home im JavaScript Adapter eingefügt, Script gestartet

                                          -> Fehler im Log:

                                          javascript.0	2021-02-15 10:20:24.169	error	(179) script.js._Testing.mihome: Error: Cannot find module '/usr/local/iobroker/node_modules/iobroker.javascript/lib/../../node-mihome'
                                          

                                          mi-home liegt bei mir allerdings unter:
                                          '/usr/local/iobroker/node_modules/iobroker.javascript/node_modules/node-mihome

                                          Kann man den Pfad umbiegen?

                                          Danke Euch!
                                          Mr.Lee

                                          M Thomas BraunT 2 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          741

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          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