Seite 1 von 2

OH3 und Anrufer zu Nameumsetzung auf Fritzbox

Verfasst: 23. Mär 2021 18:55
von xp447
Habt Ihr das hinbekommen das die Anrufer zu Namen Umsetzung klappt ? Egal was ich einstelle es klappt einfach nicht. Es kommt wie auf dem Screenshot zu sehen ist immer eine Fehlermeldung. Habt Ihr eine Idee was hier falsch sein könnte ?

Re: OH3 und Anrufer zu Nameumsetzung auf Fritzbox

Verfasst: 23. Mär 2021 21:27
von tomtom97
Hallo,

nach dem Umstieg auf OH3 hat mich das auch einige Nerven gekostet.

Letztlich kommt raus, dass man neben dem avmfritz-Plugin noch das tr064-Plugin braucht. Über avmfritz wird signalisiert, dass ein Anruf reinkommt und von/zu welcher Nummer.
Mit dem tr064 kann man dann auf das Telefonbuch in der Fritzbox zugreifen und den passenden Namen zum anrufer ermitteln.

Re: OH3 und Anrufer zu Nameumsetzung auf Fritzbox

Verfasst: 24. Mär 2021 07:01
von xp447
Also läuft es bei Dir ? Ich habe auch beide Bindings installiert - aber es geht trotzdem nicht. Wie hast Du das Item zum Rufnummer zu Namen umsetzung definiert ? Egal was ich mache er setzt nicht um - kommt immer ERR :o

Re: OH3 und Anrufer zu Nameumsetzung auf Fritzbox

Verfasst: 24. Mär 2021 10:19
von tomtom97
Hallo,

ja, es läuft hier.
Mal sehen, ob ich die komplette Konfig zusammenbekomme:

tr064.things

Code: Alles auswählen

Bridge tr064:fritzbox:7590 "FritzBox 7590" @ "Internet" [ host="fritz.box", user="openHAB", password="geheim", refresh= 60, phonebookInterval=3600 ]
{
        subdevice wan "WAN" @ "Internet" [ uuid="uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", refresh=60 ]
        subdeviceLan lan "LAN" @ "Internet" [ uuid="uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", refresh=60 ]
        subdevice wanconnection "WANconnection" @ "Internet" [uuid="uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", refresh=60 ]
}

Bridge avmfritz:fritzbox:7590 "FRITZ!Box" [ ipAddress="192.168.178.1", password="geheim", user="openHAB" ] {
}
Die UUID musst Du aus der Fritzbox ermitteln. Falls Du nicht weisst, wie, schaue ich gern nochmal, wie das ging.
EDIT:
Auch das habe ich noch gefunden: Einfach im Webbrowser die Seite http://fritz.box:49000/tr64desc.xml aufrufen. Dort nach "uuid" suchen.

fritzbox.items:

Code: Alles auswählen

[...]
String  fboxCallState     "Call State [%s]"             (gFritzBox)  { channel="avmfritz:fritzbox:7590:call_state" }
Call    fboxIncomingCall  "Phone ringing in [%1$s to %2$s]"             (gFritzBox)   { channel="avmfritz:fritzbox:7590:incoming_call" }
Call    fboxOutgoingCall  "Phone ringing out [%1$s to %2$s]"             (gFritzBox)   { channel="avmfritz:fritzbox:7590:outgoing_call" }
Call    ActiveCall        "Call established: [%1$s]"  (gFritzBox)   { channel="avmfritz:fritzbox:7590:active_call" }
In der Fritzbox muss noch irgendwie die Nutzung des "CallMonitor" freigeschaltet werden. Da müsste ich jetzt auch nochmal gucken, wie das ging...
EDIT:
Habs gefunden: https://www.computerhilfen.de/info/call ... ieren.html

fritzbox.rules

Code: Alles auswählen

rule "Phone is ringing"
when
    // fboxRinging is a switch item which switches to ON if call is detected
    Item fboxCallState changed to RINGING
then
    logInfo("Anrufermeldung", "Generating caller name message...")

    val incCall = fboxIncomingCall.state as StringListType
    val callerNumber = incCall.getValue(1)
    val calledNumber = incCall.getValue(0)

    val tr064Actions = getActions("tr064","tr064:fritzbox:7590")
    val callerName = tr064Actions.phonebookLookup(callerNumber)

    val msg = "Anruf von " + callerNumber + " (" + callerName + ") fuer " + calledNumber

    logInfo("Anrufermeldung", "callerNumber=" + callerNumber + ", callerName=" + callerName)
    // do something with callerName

    // nachricht auf LG-TV senden, wenn er an ist
    if ( TV_WoZi_Power.state == ON ) {
        TV_WoZi_Toast.sendCommand(msg)
    }
    else {
        logInfo("Anrufermeldung", "TV ist leider aus...")
    }
end
Ich hoffe, das sollte alles gewesen sein.

Gruß

Thomas

Re: OH3 und Anrufer zu Nameumsetzung auf Fritzbox

Verfasst: 24. Mär 2021 16:25
von xp447
Hallo Thomas

vielen Dank für die umfangreiche Info - bei mir geht es jetzt fast - ich bekomme jetzt nur noch diesen Fehler:

Script execution of rule with UID 'fritzbox-1' failed: 'phonebookLookup' is not a member of 'org.openhab.core.thing.binding.ThingActions'; line 39, column 18, length 44 in fritzbox

Liegt das an dem Programrelease eventuell ?

Viele Grüße
Mathias

Re: OH3 und Anrufer zu Nameumsetzung auf Fritzbox

Verfasst: 25. Mär 2021 09:27
von tomtom97
Hallo Mathias,

mir sind keine Unterschiede bezüglich unterschiedlicher Programmversionen bekannt.

Hast Du den CalMonitor in der Fritzbox erfolgreich freigeschaltet?

Denn eigentlich ermittelt die Zeile

Code: Alles auswählen

val tr064Actions = getActions("tr064","tr064:fritzbox:7590")
die von der Fritzbox unterstützten Funktionen. Anschließend wird dann mit

Code: Alles auswählen

val callerName = tr064Actions.phonebookLookup(callerNumber)
Der Anrufername aus dem Telefonbucheintrag ermittelt.

Re: OH3 und Anrufer zu Nameumsetzung auf Fritzbox

Verfasst: 25. Mär 2021 11:21
von xp447
Ich habe es genauso bei mir drinnen und bei der Zeile

val tr064Actions = getActions("tr064","tr064:fritzbox:fbox")
val callerName = tr064Actions.phonebookLookup(callerNumber)

kommt bei mir

Script execution of rule with UID 'fritzbox-1' failed: 'phonebookLookup' is not a member of 'org.openhab.core.thing.binding.ThingActions'; line 39, column 18, length 44 in fritzbox

Mir ist auch nicht klar wo er die UID fritzbox-1 her haben könnte - ist das vielleicht der Fehler ?

Re: OH3 und Anrufer zu Nameumsetzung auf Fritzbox

Verfasst: 25. Mär 2021 12:16
von tomtom97
Hallo,
xp447 hat geschrieben: 25. Mär 2021 11:21 Mir ist auch nicht klar wo er die UID fritzbox-1 her haben könnte - ist das vielleicht der Fehler ?
Mir kommt das auch komisch vor. Hast Du irgendwo "fritzbox-1" in den Konfigs stehen?

In der Zeile

Code: Alles auswählen

val tr064Actions = getActions("tr064","tr064:fritzbox:fbox")
muss der Teil "tr064:fritzbox:fbox" mit dem Namen der ersten Bridge (die mit dem LAN- und WAN-Subinterface) aus der *.items Datei übereinstimmen.

Ansonsten bleibt immer noch die Frage, ob Du den CallMonitor in der Fritzbox korrekt freigeschaltet hast. Dazu muss man die Fritzbox von einem tonwahlfähigen Endgerät anrufen, den Code eingeben und bekommt (glaube ich) auch einen Quittungston zurück.

Gruß

Thomas

Re: OH3 und Anrufer zu Nameumsetzung auf Fritzbox

Verfasst: 25. Mär 2021 12:23
von tomtom97
o.k., hab mal einen Test gemacht und die ID in der Zeile

Code: Alles auswählen

val tr064Actions = getActions("tr064","tr064:fritzbox:fbox")
in z.B.

Code: Alles auswählen

val tr064Actions = getActions("tr064","tr064:fritzbox:fbox27")
geändert. Somit hat openHAB keine Bridge mit diesem Namen.
Es kommt die Fehlermeldung:

Code: Alles auswählen

2021-03-25 12:20:17.995 [ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'fritzbox-1' failed: 'phonebookLookup' is not a member of 'org.openhab.core.thing.binding.ThingActions'; line 17, column 22, length 42 in fritzbox
Also wie bei Dir. Auch das "fritzbox-1".

Also solltest Du prüfen, ob diese ID mit der ID der Bridge aus der *.things Datei übereinstimmt.
Zusätzlich trotzdem noch einmal die Aktivierung des Callmonitor prüfen!

Gruß
Thomas

Re: OH3 und Anrufer zu Nameumsetzung auf Fritzbox

Verfasst: 25. Mär 2021 12:34
von tomtom97
Ich stelle gerade fest, dass es bei mir auch schon seit ein paar Tagen nicht mehr funktioniert hat. :o
Die Fehlermeldung ist dieselbe wie oben.

Ich bin mir sicher, dass das mal auf die Weise funktionierte.

Bin am suchen...