fhem mit fhem2fhem auf 2. Rechner 'spiegeln'

Begonnen von tiptronic, 19 Januar 2013, 16:25:00

Vorheriges Thema - Nächstes Thema

tiptronic

Ich würde gerne einen 2. fhem-Server dazu nutzen, dasselbe anzuzeigen, wie mein Haupt-fhem-Server.

Via fhem2fhem bekomme ich auch Events (sehe ich mit telnet inform), aber FHEMWEB zeigt nichts an (bzw. nur '?'), obwohl die Logs geschrieben werden.

Was muss ich machen, dass das Ganze funktioniert?

Und die 2. Frage wäre: Könnte man das auch irgendwie hinbekommen, dass die Geräte übernommen werden, ohne dass ich diese händisch nochmal anlegen muss?

Danke schon mal Vorab.

andy

Hier ein kurzer Auszug aus der cfg:

attr global logfile ./log/fhem-%Y-%m.log
attr global modpath .
attr global statefile ./log/fhem.save
attr global verbose 3

define telnetPort telnet 7072 global

define WEB FHEMWEB 8083 global

define WEBphone FHEMWEB 8084 global
attr WEBphone smallscreen

define WEBtablet FHEMWEB 8085 global
attr WEBtablet touchpad

#define REMOTE_FHEM fhem2fhem 192.168.61.33:7072 LOG:.*
define REMOTE_FHEM fhem2fhem 192.168.61.33:7072 RAW:.*

define CUNO CUL none 1234
define CUNOv1 CUL none 2345

define FLUR CUL_WS 1
attr FLUR fm_fav 3
attr FLUR fm_order 6
attr FLUR room CUL_WS,MAX

define FileLog_FLUR FileLog ./log/FLUR-%Y.log FLUR:T:.*
attr FileLog_FLUR fm_order 12
attr FileLog_FLUR logtype temp4hum6:Temp/Hum,text
attr FileLog_FLUR room CUL_WS

define weblink_FLUR weblink fileplot FileLog_FLUR:temp4hum6:CURRENT
attr weblink_FLUR label "FLUR Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr weblink_FLUR room Plots

rudolfkoenig

Bei einem FHEM2FHEM mit RAW Verbindung generiert beim Empfang von Nachrichten das lokale fhem per autocreate alle Geraete, alternativ definiert man diese wie auf dem anderen Rechner manuell, und man traegt als IODev das passenden FHEM2FHEM Geraet ein. Achtung: nicht alle Module unterstuetzen das RAW Modus, sondern nur die, die aus zwei Teilen bestehen (CUL+FS20, HMLAN+CUL_HM, ZWDongle+ZWave, usw), und die Daten per Dispatch weitergeben, und man muss fuer jedes der physikalischen Geraete (CUL/HMLAN/ZWDongle/etc) ein FHEM2FHEM Verbindung einplanen.

Beim FHEM2FHEM mit LOG Verbindung kann man nur notify/FileLog/watchdog verwenden, um auf Remote-Events zu reagieren, das funktioniert aber fuer alle Geraete.

tiptronic

Zitat von: rudolfkoenig schrieb am Sa, 19 Januar 2013 19:24Bei einem FHEM2FHEM mit RAW Verbindung generiert beim Empfang von Nachrichten das lokale fhem per autocreate alle Geraete, alternativ definiert man diese wie auf dem anderen Rechner manuell, und man traegt als IODev das passenden FHEM2FHEM Geraet ein.

Hast Du mir dafür bitte eine Beispiel-Config? Ich hab' schon alles mögliche versucht; wie schon vorhin geschrieben hatte wird ja alles geloggt, und ich bekomme in der Konsole auch die RAW-Messages, aber ich bekomme es nicht hin, dass das lokale fhem diese darstellt.

ZitatAchtung: nicht alle Module unterstuetzen das RAW Modus, sondern nur die, die aus zwei Teilen bestehen (CUL+FS20, HMLAN+CUL_HM, ZWDongle+ZWave, usw), und die Daten per Dispatch weitergeben, und man muss fuer jedes der physikalischen Geraete (CUL/HMLAN/ZWDongle/etc) ein FHEM2FHEM Verbindung einplanen.

Ein Beispiel für ein CUL+FS20 würde mir schon genügen... dann sehe ich schon, was ich verkehrt gemacht hab.

ZitatBeim FHEM2FHEM mit LOG Verbindung kann man nur notify/FileLog/watchdog verwenden, um auf Remote-Events zu reagieren, das funktioniert aber fuer alle Geraete.

Für beide Fälle wäre ein kleines Beispiel im Wiki (oder der commandref) nicht schlecht...


rudolfkoenig

Ich vermute, dass bei dem "empfaenger" fhem autocreate ausgeschaltet ist. Ich wuerde ein default fhem.cfg nehmen, und die in commandref.html durchaus vorhandene kleine Beispiele dazupacken:

# Auf dem fhem ohne CUL erst ein dummy CUL definieren, mit "richtigen" Namen:
define RpiCUL CUL none 0000
define ds2 FHEM2FHEM 192.168.178.22:7072 RAW:RpiCUL

# Auf dem Geraet mit dem CUL (192.168.178.22):
rename CUL_0 RpiCUL

Wichtig bei der RAW Verbindung ist, dass auf beiden Instanzen das CUL/HMLAN/etc den gleichen Namen hat.

C. Zimmermann

Seh ich das richtig, dass mittels FHEM2FHEM nur eine unidirektionale Verbindung möglich ist, d.h. ich kann auf dem Client, auf dem fhem2fhem läuft nur Readings des Servers empfangen, aber selbst nur über Umwege (https://groups.google.com/forum/?fromgroups=#!topic/fhem-users/SPV5Uh58FIQ) z.B. einen IT Aktor schalten?
Oder gibt es mittlerweile schon eine weitergehende Vernetzung, von mehreren FHEM Instanzen?

rudolfkoenig

Ein FHEM2FHEM mit RAW kann die entfernten Geraete auch schalten, das ist aber nur fuer zweigeteilte Module moeglich, die die interne Dispatch() Funktion verwenden. Fuer alle anderen Module funktioniert FHEM2FHEM nur mit LOG und das ist read-only.
Sollte in der Doku auch so drinstehen.

C. Zimmermann

Genau so hatte ich das für den RAW mode auch verstanden. Leider will mir das Schalten weder bei IT über nen CUL noch über HMLAN gelingen. Das Auslesen der Werte geht tadellos.

Config des Clients:
define CUL_0 CUL none 0000
attr CUL_0 dummy 1
attr CUL_0 rfmode SlowRF
define ds1 FHEM2FHEM 192.168.178.1:7072 RAW:CUL_0

define HML HMLAN none
attr HML dummy 1
define ds2 FHEM2FHEM 192.168.178.1:7072 RAW:HML


Server:
define CUL_0 CUL /dev/ttyACM0@9600 1034
attr CUL_0 loglevel 6
attr CUL_0 model CUL
attr CUL_0 rfmode SlowRF
define FileLog_CUL FileLog ./log/CUL_0-%Y.log CUL_0
attr FileLog_CUL logtype text
attr FileLog_CUL room CUL_HM

define HML HMLAN 192.168.178.2x
attr HML hmId xxx


Hast du eine Idee?

rudolfkoenig

Ich kenne IT nicht, insofern mag ich falsch liegen, bitte den Verantwortlichen fuer CUL_IT (Olaf oder Boris) nochmal nerven.

Meine Vermutung:

- da CUL_IT nur send-only ist, werden IT Geraete nicht automatisch angelegt, das muss man also 2-mal selbst durchfuehren, beim Client muss das IODev die FHEM2FHEM Instanz sein (ds1)

- 10_CUL_IT.pm versucht per CUL-Get CUL-TYP festzustellen, und per CUL-Attr slowrf zu setzen. FHEM2FHEM unterstuetzt weder Get noch Attr, nur Set, beides muesste man optional machen, damit IT per FHEM2FHEM funktioniert.

HM kenne ich inzwischen auch nicht mehr in Detail, unter meiner Regie hat es noch mit FHEM2FHEM funktioniert, habs aber nie extensiv getestet.

C. Zimmermann

Danke Rudolf für deinen Hinweis, leider hat das ändern des IODev in der FHEM2FHEM Instanz nicht geholfen.

Ich werde mich mal an Olaf/Boris (IT) und Martin (HM) wenden, falls die das hier nicht schon mitlesen.