NEWS
Name aus Fritz Telefonbuch auslesen
-
Ich möchte gerne bei einer ankommenden Rufnummer den Namen aus dem Fritz Telefonbuch auslesen und anzeigen.
Der Datenpunkt für ankommende Nummer währe der : "fritzbox.0.callmonitor.ring" ?!
Das Telefonbuch müsste auf : "fritzbox.0.phonebook.tableJSON" zu finden sein.
Somit sind die Daten als JSON vorhanden.
Ich möchte das gerne als Blockly realisieren und habe schon so einiges versucht allerdings vergeblich.
Kann mir da einer weiter helfen ? -
Ich mache das über den TR-064 Adapter und dem Datenpunkt "tr-064.0.callmonitor.inbound.callerName".
-
@jojo58
Aus welchem Grund auch immer, da ist bei mir alles Leer und bei einem Ankommenden Anruf bleibt der Datenpunkt unberührt.
Möglich das das an der Fritz Version 8.02 liegt. -
@berges01 sagte in Name aus Fritz Telefonbuch auslesen:
Möglich das das an der Fritz Version 8.02 liegt.
Nö - funzt einwandfrei.
Hast Du den Callmonitor in der Fritte freigegeben? -
Wie @Codierknecht schon geschrieben hat, den Call Monitor freigegeben und dann im Adapter die Namensauflösung aktiviert? Ich habe auch für IoBroker einen extra User auf der Fritte angelegt.
EDIT:
Hier die Anleitung:
https://www.iobroker.net/#en/adapters/adapterref/iobroker.tr-064/README.md -
Funktioniert, warum auch immer, ich habe den "Alten" Benutzer gelöscht und in der Fritte und im "tr-064" noch mal Neu angelegt und jetzt funktioniert das wieder.
Komische Sache, sonst habe ich da nichts verändert, das hat ja auch schon mal funktioniert da bekannte Daten vorhanden waren.
DANKE für die Hilfe.Grüße aus dem verschneiten und saukalten Sauerland
F.B. -
Aber Bitte noch mal zu meiner Frage, wie hätte ich das in Blockly machen müssen ?
Wenn ich so was mal brauche.PS benutzen werde ich den tr-64.
-
@berges01 sagte in Name aus Fritz Telefonbuch auslesen:
wie hätte ich das in Blockly machen müssen ?
Warum Blockly?
Wie willst Du das denn "anzeigen"? In Vis?Da braucht's kein Blockly.
Einfach ein String-Widget auftr-064.0.callmonitor.inbound.callerName
zeigen lassen und dessen Sichtbarkeit über einen geeigneten DP steuern.
tr-064.0.callmonitor.ringing
z.B. würde solange anzeigen, bis abgenommen wurde (so mache ich das). -
Mir geht es nicht darum das genau zu machen, sondern im Prinzip wie mache ich das in Blockly.
Nach meinen vielen Versuchen hätte ich gerne mal ein Beispiel.Ich werde das genau so wie du machen (Funktionier ja nun dank Eurer Hilfe ).
Visualisieren findet bei mir mit Jarvis statt, Vis ist mir zu einarbeitungsintensiv.
Mir reicht Jarvis, ist zwar nicht so Optisch ansprechend reicht mir aber. -
@berges01 sagte in Name aus Fritz Telefonbuch auslesen:
ist zwar nicht so Optisch ansprechend reicht mir aber.
Was wäre denn optisch ansprechend?
-
So etwas z.B,
(Mal auf die Schnelle rausgesucht)
Das wüste ich nicht hinzubekommen in Jarvis.
Wahrscheinlich reicht mein Wissen auch nicht dazu aus.
Ich wollte Jarvis oder Vis nicht bewerten sondern meinen Eindruck wiedergeben.
Mit Jarvis bin ich schnell klar gekommen.
Das sieht doch nach meinem Geschmack recht passabel aus.
Die sind von mir und sicherlich nicht so Optisch ansprechend, da reicht mein Wissen nicht für aus es besser zu machen. -
@berges01 Kein Problem, wollte nur wissen was man an Jarvis verbessern kann bzw. sollte.
Dieser Teil kann man mit Jarvis nicht erstellen.
Für einige wäre das Design auch schon ziemlich "überladen", aber das ist Geschmackssache. -
@berges01 sagte in Name aus Fritz Telefonbuch auslesen:
Mir geht es nicht darum das genau zu machen, sondern im Prinzip wie mache ich das in Blockly.
Nach meinen vielen Versuchen hätte ich gerne mal ein Beispiel.Nichts einfacher als das:
Das setzt voraus, dass Du einen eigenen DP in0_userdata.0
hast, in den der Name des Anrufers geschrieben wird.
Wenn es klingelt, wird der Name in den DP geschrieben. Wurde abgehoben, wird der Name im eigenen DP wieder gelöscht.Mit Jarvis habe ich mich noch nie beschäftigt. Sooooo kompliziert ist Vis (1) ja nun auch nicht. Dafür aber vermutlich wesentlich flexibler.
Sieht dann so aus:
-
@berges01 sagte in Name aus Fritz Telefonbuch auslesen:
Mir geht es nicht darum das genau zu machen, sondern im Prinzip wie mache ich das in Blockly.
Nach meinen vielen Versuchen hätte ich gerne mal ein Beispiel.Hier ein Beispiel für Anrufe mit bekannten Anrufern und unbekannten sowie für die Unterscheidung, welche der Telefonnummern angerufen wird:
-
Dankeschön an Alle !
So ähnlich habe ich das dann auch gemacht.Was Vis und Jarvis betrifft ist das hier der Falsche Teil.
Was ich gerne gehabt hätte, währe anhand der Telefonnummern aus dem Fritz Telefonbuch den Namen rausbekommen.
Mir fehlt es da an einer Lösung wie man aus einem JSON String anhand eines Schlüssels was rausbekommt key mit der Tel.Nr und name mit dem Namen des Teilnehmers.
Wie ich im Anfang geschrieben habe.
Das Problem mit der Nummer und dem Namen habe ich wie Ihr angegeben habt gelöst. -
@berges01 sagte in Name aus Fritz Telefonbuch auslesen:
Was ich gerne gehabt hätte, währe anhand der Telefonnummern aus dem Fritz Telefonbuch den Namen rausbekommen.
Joah, genau das habe ich gezeigt.
-
@berges01 sagte in Name aus Fritz Telefonbuch auslesen:
Was ich gerne gehabt hätte, währe anhand der Telefonnummern aus dem Fritz Telefonbuch den Namen rausbekommen
Das macht doch der Adapter für Dich.
An das Telefonbuch als solches kommst Du gar nicht ran. -
@berges01 Auslesen vom Telefonbuch mit tr-064-Command
tr-064.0.states.command
mit den Einträgen
/* GetPhonebookList -> Index Phonebooks */ { "service": "urn:dslforum-org:service:X_AVM-DE_OnTel:1", "action": "GetPhonebookList", "params": {} } /* GetPhonebook mit Indexzahl */ { "service": "urn:dslforum-org:service:X_AVM-DE_OnTel:1", "action": "GetPhonebook", "params": { "NewPhonebookID": 0 } } /* GetPhonebookEntry PhonebookID + EntryID */ { "service": "urn:dslforum-org:service:X_AVM-DE_OnTel:1", "action": "GetPhonebookEntry", "params": { "NewPhonebookID": 0, "NewPhonebookEntryID": 0 } } /* GetPhonebookEntryUID */ { "service": "urn:dslforum-org:service:X_AVM-DE_OnTel:1", "action": "GetPhonebookEntryUID", "params": { "NewPhonebookID": 1, "NewPhonebookEntryUniqueID": 86 } } { "service": "urn:dslforum-org:service:X_AVM-DE_OnTel:1", "action": "GetPhonebookEntryUID", "params": { "NewPhonebookID": 1, "NewPhonebookEntryUniqueID": 80 } }
-
@Berges01 Das braucht es alles nicht. Wenn man im tr-64 Adapter callist anklickt und zum Beispiel JSON anklickst, dann bekommst Du eine Liste mit Objekten, die Du auslesen kannst.
Jedes Attribut - zum Beispiel Name und Telefonnummer kannst Du dann einfach herauslösen:
Als erstes habe ich Dir das ganze Objekt ausgegeben, damit Du siehst welche Attribute es hat und wie Du diese ansprichst.
Hier zum Import:
Die calllisten findest Du als JSON im tr-064 Adapter.
Du musst also nicht selbst die Namen aus dem Telefonbuch suchen, sondern die werden automatisch gesucht und in die Anruflisten gesetzt.
Du musst im Adapter halt anhaken, welche Listen du haben möchtest:Da sind dann auch andere Daten, wie Gesprächsdauer, wann angerufen usw. enthalten.
Wichtig ist halt, dass du anhakst, was Du haben willst, sonst bleiben die Datenpunkte natürlich leer.
-
Ich merke schon ich habe mich falsch ausgedrückt! (SORRY)
Die Lösung habe ich!!!! (Dank Euch!)Was ich suche ist, wie müsste man es machen um aus dem Telefonbuch oder aus einer vergleichbaren Liste, mithilfe eines Blockly und eines bekannten key den value z.B"name" auszulesen.
PS ich habe es DANKE !