FHEMSync (Alternative zu FHEM2FHEM/RFHEM)

Begonnen von dominik, 18 März 2020, 21:55:46

Vorheriges Thema - Nächstes Thema

harway2007

führt nicht weit :
W: Fehlschlag beim Holen von http://raspberrypi.collabora.com/dists/wheezy/rpi/i18n/Translation-en  Beim Auflösen von »raspberrypi.collabora.com:http« ist etwas Schlimmes passiert (-5 - Zu diesem Hostnamen gehört keine Adresse).

W: Fehlschlag beim Holen von http://mirrordirector.raspbian.org/raspbian/dists/wheezy/main/binary-armhf/Packages  404  Not Found

W: Fehlschlag beim Holen von http://mirrordirector.raspbian.org/raspbian/dists/wheezy/contrib/binary-armhf/Packages  404  Not Found

W: Fehlschlag beim Holen von http://mirrordirector.raspbian.org/raspbian/dists/wheezy/non-free/binary-armhf/Packages  404  Not Found

W: Fehlschlag beim Holen von http://mirrordirector.raspbian.org/raspbian/dists/wheezy/rpi/binary-armhf/Packages  404  Not Found

E: Einige Indexdateien konnten nicht heruntergeladen werden. Sie wurden ignoriert oder alte an ihrer Stelle benutzt.
Error executing command, exiting
pi@pi57Dachgeschoss ~ $ sudo apt install -y nodejssudo: apt: command not found
pi@pi57Dachgeschoss ~ $

MadMax-FHEM

WHEEZY!!!

Da gibt's schon lang nix mehr Repository!!!

(Wheezy -> Jessie -> Stretch -> Buster ist aktuell)

Auch würdest du mit dem node/npm von Wheezy nicht weit gekommen sein!

Da musst wohl wirklich (langsam) aufrüsten!

Meine Meinung...

Ansonsten gibt es/gab es beim "alten" alexa-fhem Wiki am Anfang eine "Anleitung" zur "manuellen Installation" von node/npm...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

punker

So, hab jetzt FHEMsync soweit dass es läuft, aber es werden in der Haupinstanz keine Geräte angelegt, die ich in der Remoteinstanz in den Raum FHEMSync gelegt habe.
Das sind 3 Amazon Echo-Dot.
Diese sollten doch "vollautomatisch" auf der FHEM-Hauptinstanz im Raum FHEMSync auftauchen?
Hier ein list von der Haupinstanz:
Internals:
   FD         50
   FUUID      5e748604-f33f-55ca-39ce-c5094625f2d7b348
   LAST_START 2020-03-20 11:00:13
   LAST_STOP  2020-03-20 11:00:13
   NAME       fhemsync
   NR         636
   NTFY_ORDER 50-fhemsync
   PID        19906
   STARTS     10
   STATE      running /usr/bin/fhemsync
   TYPE       FHEMSYNC
   currentlogfile ./log/fhemsync-2020-03-20.log
   logfile    ./log/fhemsync-%Y-%m-%d.log
   CoProcess:
     cmdFn      FHEMSYNC_getCMD
     name       fhemsync
     state      running /usr/bin/fhemsync
   READINGS:
     2020-03-20 11:00:13   fhemsync        running /usr/bin/fhemsync
Attributes:
   FHEMSync-server 192.168.2.161
   FHEMSync-webname WEB
   devStateIcon stopped:control_home@red:start stopping:control_on_off@orange running.*:control_on_off@green:stop
   remote-ssl false
   room       FHEMSync
   stateFormat fhemsync


Hier das FHEMsync.log:
[MAIN   ] Starting FHEMSync...
[MAIN   ] Options: {"version":"1.0.2","fhem":true,"webname":true,"device":true,"ssl":true}
[MASTER ]   executing: https://192.168.2.161:8083/WEB?XHR=1


Da fällt mir auf dass "ssl":true ist und die Remote Instanz mit https aufgerufen wird das funzt aber nicht weil kein  SSL benutzt wird!

Also was mache ich falsch?
LG

Dieter

The truth is out there!

dominik

Du musst deine Attribute noch anpassen:

Alle Attribute mit FHEMSync-* gelten für den FHEM Server, wo FHEMSync läuft. Hier muss also im Normalfall nichts konfiguriert werden. Wenn nichts konfiguriert wird, werden folgende Default Werte genommen:
FHEMSync-server 192.168.2.161 (default: 127.0.0.1)
FHEMSync-webname WEB (default: fhem)
FHEMSync-ssl (default: false)

remote-server musst du auf alle Fälle noch konfigurieren, dort muss der Remote FHEM eingetragen werden mit der IP.
remote-ssl auch setzen wenn nötig (default: false).
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

punker

Also hier nochmal ein list vom Server (https://192.168.2.219:8083/fhem):
Internals:
   FD         109
   FUUID      5e748604-f33f-55ca-39ce-c5094625f2d7b348
   LAST_START 2020-03-20 13:37:08
   LAST_STOP  2020-03-20 13:36:43
   NAME       fhemsync
   NR         636
   NTFY_ORDER 50-fhemsync
   PID        21280
   STARTS     31
   STATE      running /usr/bin/fhemsync
   TYPE       FHEMSYNC
   currentlogfile ./log/fhemsync-2020-03-20.log
   logfile    ./log/fhemsync-%Y-%m-%d.log
   CoProcess:
     cmdFn      FHEMSYNC_getCMD
     name       fhemsync
     state      running /usr/bin/fhemsync
   READINGS:
     2020-03-20 13:37:08   fhemsync        running /usr/bin/fhemsync
Attributes:
   FHEMSync-server 192.168.2.219
   FHEMSync-webname WEB
   devStateIcon stopped:control_home@red:start stopping:control_on_off@orange running.*:control_on_off@green:stop
   remote-server 192.168.2.161
   remote-ssl false
   room       FHEMSync
   stateFormat fhemsync


und das Log:
[MAIN   ] Starting FHEMSync...
[MAIN   ] Options: {"version":"1.0.2","fhem":true,"webname":true,"device":true,"ssl":true}
[MASTER ]   executing: https://192.168.2.219:8083/WEB?XHR=1
(node:21446) UnhandledPromiseRejectionWarning: RequestError: Error: self signed certificate
    at new RequestError (/usr/lib/node_modules/fhemsync/node_modules/request-promise-core/lib/errors.js:14:15)
    at Request.plumbing.callback (/usr/lib/node_modules/fhemsync/node_modules/request-promise-core/lib/plumbing.js:87:29)
    at Request.RP$callback [as _callback] (/usr/lib/node_modules/fhemsync/node_modules/request-promise-core/lib/plumbing.js:46:31)
    at self.callback (/usr/lib/node_modules/fhemsync/node_modules/request/request.js:185:22)
    at Request.emit (events.js:311:20)
    at Request.onRequestError (/usr/lib/node_modules/fhemsync/node_modules/request/request.js:877:8)
    at ClientRequest.emit (events.js:311:20)
    at TLSSocket.socketErrorListener (_http_client.js:426:9)
    at TLSSocket.emit (events.js:311:20)
    at emitErrorNT (internal/streams/destroy.js:92:8)
    at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
    at processTicksAndRejections (internal/process/task_queues.js:84:21)
(node:21446) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:21446) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.


Der Remote-FHEM hat die Adresse http://192.168.2.161:8083/fhem
So wie im List funzt  es nicht - sollte es aber doch?
LG

Dieter

The truth is out there!

dominik

#35
(node:21446) UnhandledPromiseRejectionWarning: RequestError: Error: self signed certificate

Du nutzt ein self signed Zertifikat welches nicht geprüft werden kann. Probier es mal ohne Zertifikat.

Ich werde noch prüfen, ob man diesen Check irgendwo deaktivieren kann.


//Edit: Ich habe es mal schnell mit eingebaut. Mach ein
sudo npm install -g fhemsync
Version 1.0.3 wird installiert.
Kopier das 10_FHEMSYNC in das FHEM directory, danach auf reload 10_FHEMSYNC nicht vergessen

Wenn das getan ist, findest du folgende Attribute in FHEMSync:
FHEMSync-selfsignedcert (das auf true setzen)
remote-selfsignedcert (nachdem der remote kein SSL macht, musst du das nicht setzen)
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

punker

Jetzt hab ich mal attr FHEMSync-auth mit benutzer:passwort eingetragen und nun hab ich dieses Log:
[MAIN   ] Starting FHEMSync...
[MAIN   ] Options: {"version":"1.0.2","fhem":true,"webname":true,"auth":true,"device":true,"ssl":true}
[MASTER ]   executing: https://192.168.2.219:8083/WEB?XHR=1
(node:24167) UnhandledPromiseRejectionWarning: TypeError: Assignment to constant variable.
    at FHEM.getCsrfToken (/usr/lib/node_modules/fhemsync/fhemsync.js:247:13)
    at main (/usr/lib/node_modules/fhemsync/fhemsync.js:387:20)
    at Object.<anonymous> (/usr/lib/node_modules/fhemsync/fhemsync.js:452:1)
    at Module._compile (internal/modules/cjs/loader.js:1158:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)
    at Module.load (internal/modules/cjs/loader.js:1002:32)
    at Function.Module._load (internal/modules/cjs/loader.js:901:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:74:12)
    at internal/main/run_main_module.js:18:47
(node:24167) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
(node:24167) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

also nichts mehr mit dem self signed certificate
funzt trotzdem nicht!
LG

Dieter

The truth is out there!

dominik

auth wird noch nicht unterstuetzt, siehe erster Post...kommt noch.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

punker

na dann weiß ich auch nicht wie es funzen soll und lösch es halt - werd halt mit RFHEM weitermachen!
LG

Dieter

The truth is out there!

dominik

#39
Zitat von: punker am 20 März 2020, 15:24:29
na dann weiß ich auch nicht wie es funzen soll und lösch es halt - werd halt mit RFHEM weitermachen!

Ganz einfach, aktuell noch ohne Auth nutzen, dann klappt es. Self signed certificate sollte nun auch funktionieren, siehe Post oben.

Danke dennoch fuers Testen.

//Edit: So, mal schnell eingebaut. Wenn du noch willst, kannst mit Version 1.0.4 probieren, gerade published. Damit sollte auth nun auch gehen.
Bitte beachte, das ist hier ein TEST Release und kein fertiges Produkt.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

punker

Habs jetzt mit deiner neuen Version nochmal probiert - leider wieder ohne Erfolg!

list
Internals:
   FUUID      5e75cbac-f33f-55ca-70eb-f24fdf71b2b33530
   LAST_START 2020-03-21 09:19:05
   LAST_STOP  2020-03-21 09:19:09
   NAME       fhemsync
   NR         636
   NTFY_ORDER 50-fhemsync
   STARTS     9
   STATE      stopped
   TYPE       FHEMSYNC
   logfile    ./log/fhemsync-%Y-%m-%d.log
   CoProcess:
     cmdFn      FHEMSYNC_getCMD
     name       fhemsync
     state      stopped
   READINGS:
     2020-03-21 09:19:09   fhemsync        stopped
Attributes:
   FHEMSync-auth crypt:11165b5e01100e0447595a0407794f
   FHEMSync-selfsignedcert true
   FHEMSync-server 192.168.2.219
   FHEMSync-webname WEB
   devStateIcon stopped:control_home@red:start stopping:control_on_off@orange running.*:control_on_off@green:stop
   remote-server 192.168.2.161
   remote-webname WEB
   room       FHEMSync
   stateFormat fhemsync
   verbose    0


im Log steht nur noch folgendes, obwohl fhemsync definiert ist!
log
[MAIN   ] Starting FHEMSync...
[MAIN   ] Options: {"version":"1.0.4","fhem":true,"webname":true,"auth":true,"device":true,"ssl":true,"selfSignedCert":true}
[MASTER ]   executing: https://192.168.2.219:8083/WEB?XHR=1
[MASTER ]   executing: https://192.168.2.219:8083/WEB?XHR=1&cmd=jsonlist2%20fhemsync
[MASTER ] Please define FHEMSYNC device in FHEM: define fhemsync FHEMSYNC
LG

Dieter

The truth is out there!

dominik

Hmm...ist FHEMSync-webname WEB wirklich richtig? Wenn du ueber den Browser zugreifst, steht dann dort auch "IP:PORT/WEB" oder "IP:PORT/fhem"? Beim WEB hast du auch keine allow oder so konfiguriert um den Zugriff einzuschraenken?
Du kannst mal die Links im Browser aufrufen und pruefen ob da entsprechende Rueckmeldungen kommen
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

punker

Da steht natürlich IP:PORT/fhem - ich dachte der Name vom defmod WEB FHEMWEB 8083 ist gemeint!
Habs jetzt mal so geändert:
Internals:
   FUUID      5e75cbac-f33f-55ca-70eb-f24fdf71b2b33530
   LAST_START 2020-03-21 10:40:28
   LAST_STOP  2020-03-21 10:40:31
   NAME       fhemsync
   NR         636
   NTFY_ORDER 50-fhemsync
   STARTS     43
   STATE      stopped
   TYPE       FHEMSYNC
   logfile    ./log/fhemsync-%Y-%m-%d.log
   CoProcess:
     cmdFn      FHEMSYNC_getCMD
     name       fhemsync
     state      stopped
   READINGS:
     2020-03-21 10:40:31   fhemsync        stopped
Attributes:
   FHEMSync-server 192.168.2.219
   FHEMSync-webname fhem
   devStateIcon stopped:control_home@red:start stopping:control_on_off@orange running.*:control_on_off@green:stop
   remote-server 192.168.2.161
   remote-webname fhem
   room       FHEMSync
   stateFormat fhemsync
   verbose    0


funzt aber auch nicht!
Ich bin wahrscheinlich dafür zu blöd - allerdings ist das das erste Modul das ich nicht zum laufen krieg!
LG

Dieter

The truth is out there!

dominik

Poste bitte nochmals das Log, den Fehler finden wir auch noch.

Hast du nur eine FHEMWEB Instanz, oder mehrere? Auf allen Seiten ist kein Auth und SSL hinterlegt, sehe ich das richtig?
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

punker

Der HauptFHEMserver läuft mit https der RemoteFHEMserver ohne https
list:
Internals:
   FUUID      5e75cbac-f33f-55ca-70eb-f24fdf71b2b33530
   LAST_START 2020-03-21 10:56:19
   LAST_STOP  2020-03-21 10:56:22
   NAME       fhemsync
   NR         636
   NTFY_ORDER 50-fhemsync
   STARTS     38
   STATE      stopped
   TYPE       FHEMSYNC
   logfile    ./log/fhemsync-%Y-%m-%d.log
   CoProcess:
     cmdFn      FHEMSYNC_getCMD
     name       fhemsync
     state      stopped
   READINGS:
     2020-03-21 10:56:22   fhemsync        stopped
Attributes:
   FHEMSync-selfsignedcert true
   FHEMSync-server 192.168.2.219
   FHEMSync-ssl trueevent-aggregator
   devStateIcon stopped:control_home@red:start stopping:control_on_off@orange running.*:control_on_off@green:stop
   remote-port 8083
   remote-selfsignedcert false
   remote-server 192.168.2.161
   remote-ssl false
   room       FHEMSync
   stateFormat fhemsync
   verbose    0


log
[MAIN   ] Starting FHEMSync...
[MAIN   ] Options: {"version":"1.0.4","fhem":true,"device":true,"ssl":true,"selfSignedCert":true}
[MASTER ]   executing: https://192.168.2.219:8083/fhem?XHR=1
[MASTER ]   executing: https://192.168.2.219:8083/fhem?XHR=1&cmd=jsonlist2%20fhemsync
[MASTER ] FHEMSYNC device detected: fhemsync
[SLAVE  ] config: value for ssl has to be boolean.
LG

Dieter

The truth is out there!