Frage: FHEM2FHEM Callmonitor FB7390->RPi

Begonnen von MaJu, 08 April 2014, 21:49:59

Vorheriges Thema - Nächstes Thema

MaJu

Ich bitte um Hilfe, ich komme nicht weiter.
Letzte Woche habe ich mein FHEM von der FritzBox 7390 auf ein RaspberryPi umziehen lassen.
Auf meinem Flur-Infodisplay (siehe http://forum.fhem.de/index.php/topic,22336.0.html) möchte ich angezeigt bekommen, wer uns anruft oder wer gerade angerufen wird. Als FHEM auf der FritzBox lief, lief das super. Jetzt bekomme ich den Namen (der von der FritzBox aus dem internen Telefonbuch gezogen wird) aber nicht mit FHEM2FHEM zum RPi.

Folgendes habe ich in der fhem.cfg auf der Fritzbox, die Notifies hatte ich vorher auch schon. Ziel: Beim Klingeln oder aktiven Anrufen (und zwar nur dann) soll der Name des Anrufenden/Angerufenen angezeigt werden. Ansonsten "aufgelegt", wofür es für diesen Status im Floorplan ein durchsichtiges Icon gibt, damit die Anrufinfo gar nicht zu sehen ist.
attr global logfile ./log/fhem-%Y-%m.log
attr global modpath .
attr global statefile ./log/fhem.save
attr global verbose 3
attr global updateInBackground
define telnetPort telnet 7072 global
define WEB FHEMWEB 8083 global
define Logfile FileLog ./log/fhem-%Y-%m.log fakelog

define FritzBox FB_CALLMONITOR 192.168.178.1:1012
attr FritzBox event-on-change-reading event
attr FritzBox reverse-search internal
attr FritzBox room FritzBox

define Anruf_Name_FB dummy

define TelefonREIN notify FritzBox:event:.ring { fhem "set Anruf_Name_FB ".ReadingsVal("FritzBox","external_name",0)}
define TelefonRAUS notify FritzBox:event:.call { fhem "set Anruf_Name_FB ".ReadingsVal("FritzBox","external_name",0)}
define TelefonAUS notify FritzBox:event:.disconnect { fhem "set Anruf_Name_FB aufgelegt"}


Beim RPi habe ich neben dem ganzen anderen folgendes in der fhem.cfg:
define FB_FHEM FHEM2FHEM 192.168.178.1:7072 LOG:.*
define Anruf_Name_FB_RPi cloneDummy Anruf_Name_FB state


Bei einem ausgehenden Anruf und nach dem Auflegen zeigt der Eventmonitor der Fritzbox:
Events:
2014-04-08 20:19:58 dummy Anruf_Name_FB Mario Handy
2014-04-08 20:19:58 FB_CALLMONITOR FritzBox event: call
2014-04-08 20:20:07 dummy Anruf_Name_FB aufgelegt
2014-04-08 20:20:07 FB_CALLMONITOR FritzBox event: disconnect


Beim RaspberryPi zeigt der Eventmonitor:
Events:
2014-04-08 20:19:58 cloneDummy Anruf_Name_FB_RPi active
2014-04-08 20:19:58 cloneDummy Anruf_Name_FB_RPi Mari: Handy
2014-04-08 20:19:59 dummy Anruf_Name_FB Mario Handy
2014-04-08 20:19:59 FB_CALLMONITOR FritzBox event: call
2014-04-08 20:20:07 cloneDummy Anruf_Name_FB_RPi active
2014-04-08 20:20:07 dummy Anruf_Name_FB aufgelegt
2014-04-08 20:20:07 FB_CALLMONITOR FritzBox event: disconnect


Danach zeigt die FHEM-Weboberfläche des RaspberryPi:
(http://img5.fotos-hochladen.net/uploads/reading63rsw42xik.png)

Warum ist das Reading "Mari: Handy", nicht "state: Mario Handy"?
Warum wird das "aufgelegt" vom Raspberry nicht als state geschrieben?

Irgendwo habe ich einen Denkfehler, wer kann ihn mir bitte aufzeigen? DANKE!
Erlebnisreiche Grüße aus Leipzig!

Joachim

Moin MaJu,

ZitatWarum ist das Reading "Mari: Handy", nicht "state: Mario Handy"?
Warum wird das "aufgelegt" vom Raspberry nicht als state geschrieben?
Weil FHEM2FHEM  "state" noch nicht übergibt, bin da noch am suchen, wie man das am besten hineinbekommt.
Siehst Du auch im Eventmonitor vom Pi, da kommt es nicht als "state an sondern ohne präfix.

Alternatve: userReading anlegen, um das mit CloneDummy abgreifen.
Ich versuche morgen mal, das nachzustellen, dafür muss ich allerdings ersteinmal basteln und den CALLMONITOR auf meine FB bekommen.

Gruß Jaochim



FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

MaJu

Der Callmonitor geht ja zum Glück sehr einfach auf die FritzBox, da der Eintrag in der fhem.cfg reicht:
define FritzBox FB_CALLMONITOR 192.168.178.1:1012
attr FritzBox event-on-change-reading event
attr FritzBox reverse-search internal


Mit userReading habe ich mich noch gar nicht beschäftigt. Ich bin ehrlich: Als blutiger Anfänger erkenne ich einfach keinen Unterschied. Ich sehe mich zwar als versierten Anwender, aufgrund mangelnder Programmierkenntnisse aber nicht als Entwickler der vieles einfacher versteht.

Danke für deine Hilfe, denn ich stehe einfach auf dem Schlauch und bekomme es einfach nicht hin und würde mich freuen wenn du mir die passenden Codeschnipsel nennen kannst, die mir noch im Weg stehen.
Erlebnisreiche Grüße aus Leipzig!

Joachim

so MaJu,

erste schnelle Lösung:

bei deinem Dummy zusätzlich folgende Zeile:
attr Anruf_Name_FB userReadings anruf {(ReadingsVal("Anruf_Name_FB","state",0))}

und beim cloneDummy folgendes define:
define Anruf_Name_FB_RPi cloneDummy Anruf_Name_FB anruf

damit geht es bei mir.

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

MaJu

Vielen Dank, das hat geholfen. Der RPi zeigt nun den korrekten Namen an, im Floorplan habe ich dann auf "Device Reading" "anruf" geändert, da sonst "anruf: Mario Handy" dastand.

Leider wird im Floorplan nun aber beim Status "aufgelegt" nicht mehr das dazugehörige durchsichtige Platzhalter-Bild angezeigt, sondern das Wort "aufgelegt". Ich habe auch Dateien "cloneDummy.aufgelegt.png" und "Anruf_Name_RPi.aufgelegt.png" (habe den cloneDummy nun Anruf_Name_RPi genannt) angelegt, da ja die bisherige "dummy.aufgelegt.png" nicht mehr funktionieren kann.

Wie bekomme ich das Wort "aufgelegt" weg? Gibt es einen Trick, in der Zeile das "aufgelegt" durch ein Leerzeichen zu ersetzen, oder ist ein Leerzeichen als Status nicht zugelassen?
define TelefonAUS notify FritzBox:event:.disconnect { fhem "set Anruf_Name_FB aufgelegt"}
Wenn ich es nicht mit einem anderen Status belege, würde bis zum nächsten Anruf weiterhin der alte Name drin stehen bleiben.
Erlebnisreiche Grüße aus Leipzig!

Joachim

Floorplan, nicht meine Baustelle.
Da habe ich keine Ahnung von.

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232