NEWS
[Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.
-
@Pittini
Auch hier ist nichts weiter passiert. Das Log sagt:javascript.0 2020-12-26 16:53:15.789 info (17952) script.js.common.Mihome: registered 0 subscriptions and 0 schedules javascript.0 2020-12-26 16:53:15.747 info (17952) script.js.common.Mihome: Reaching init javascript.0 2020-12-26 16:53:15.746 info (17952) script.js.common.Mihome: Starting MiHome-Airpurifier3H-V0.1.6 javascript.0 2020-12-26 16:53:15.478 info (17952) Start javascript script.js.common.Mihome
-
@Spampunk
An die Anleitung gehalten? JS Adapter Version > 4.8.0? node-mihome im js Adapter eingetragen? Richtigen Server unter options eingetragen? -
@Pittini hab grad diese Meldung im log gesehen
-
@crunchip Einmalig? Wenn nein, wie oft? Seit wann? Iwas geändert?
-
@Pittini ist mir nur jetzt einmal aufgefallen durch Zufall, weil ich das log offen hatte. Nein nichts geändert und auch nichts geschaltet
edit: guck grad das log durch, tritt mehrmals auf
log von heute Nacht ab- 02:54
- 03:56
- 04:09
- 05:42
- 12:58
-
@crunchip sagte in [Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.:
@Pittini ist mir nur jetzt einmal aufgefallen durch Zufall, weil ich das log offen hatte. Nein nichts geändert und auch nichts geschaltet
edit: guck grad das log durch, tritt mehrmals auf
log von heute Nacht ab- 02:54
- 03:56
- 04:09
- 05:42
- 12:58
Ok, danke, offenbar kommt da gelegentlich nix an von der Cloud. Werd ich abfangen in der nächsten Version. Danke für die Meldung.
-
@Pittini said in [Vorlage] Xiaomi Airpurifier 3H u.a. inkl. Token auslesen.:
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?
-
@Spampunk Das einzige was mir noch einfällt und zumindest in einem Fall geholfen hat, wäre mal das komplette System neuzustarten.
-
@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?
-
@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 -
Habe versucht wie folgt das Script zu installiere:
- Javascript adapter 4.8.4
- "node-mihome" beim Javascript Adapter unter "Zusätzliche NPM-Module" eingetragen
- Das Script in raw von https://raw.githubusercontent.com/Pittini/iobroker-nodemihome/main/AllMyMi-V0.2.5.js Als neues Javascript script angelegt
- 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?
-
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>) ...
-
@m76 Hast Du den JS-Adapter danach einmal komplett neu gestartet?
Gruß, Jürgen
-
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". -
@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
-
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
Svenjavascript.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 -
@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 dasconst 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 -
@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)
-
@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)); } };
-
@pittini Vielen Dank!