Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Entwickler>Fitzbox Telefonbuch xml automatisch auf Fritzbox hochladen

Fitzbox Telefonbuch xml automatisch auf Fritzbox hochladen

MikeMuc18.10.1323:02
Hallo zusammen,
hat jemand eine Idee wie ich eine XML-Datei mit einem Fritzbox Telefonbuch drin per Applescript oder Terminal auf die Fritzbox geladen bekomme?.

Zu Fuß über die Weboberfläche ist das ja kein Problem aber wie kann man das automatisieren?
0

Kommentare

Gerhard Uhlhorn19.10.1302:47
Ich verwende Frizzix. Kostet aber etwas.
0
CH
CH19.10.1308:16
Wenn Du telnet oder ssh Zugang zur Fritzbox hast sollte das klappen. Dann könnte man sicherlich ein schönes Script machen, das das Adressbuch auf Änderungen prüft und wenn diese vhd. sind, die Daten automatisch aktualisiert. Ein automatisiertes Login und update Script.

Ch
0
MikeMuc19.10.1311:29
CH: Das klingt interessant. Wie stelle ich fest ob ich telnet oder SSH Zugang habe und wenn ja hast du sowas schon mal mit einer FB versucht?

Gerhard:
Du hast meine Frage verstanden? Dial!List welches ich verwende kostet nämlich auch was und macht trotzdem nicht das was ich jetzt brauche. Ich habe nämlich bereits eine XML-Datei mit allen Daten dich ich lediglich automatisch in de FB hoch laden möchte.


Etwas zum Hintergrund:
Mir ist kein Programm bekannt welches mehr als die 3 Telephonnummern ins Telefonbuch aufnimmt und schon garkeines welches für jede der 3 Standardnummern eine Kurzwahl annimmt.
In der XML-Datei kann die FB nämlich tatsächlich für jede darin befindliche Telnr. eine Kurzwahl speichern und das funktioniert auch. Die Beschränkung auf eine Nummer per Namen mit KW ist lediglich eine Beschränkung des Webinterfaces der FB.

Ich habe mir also eine Filemakerdatei erstellt die sich per Applescript alle Adressen (mit Telnummern) aus dem OS X Adressbuch holt, in der man angeben kann welche Einträge mann in der FB haben möchte und in der mann zu jeder Telefonnummer eine KW vergeben kann. Diese Zusatzinfos bleiben auch erhalten wenn man sich erneut die Adressen aus dem OS X Adressbuch holt.
Letztendlich kann ich aus der Filemakerdatenbank eine XML-Datei erzeugen die ich derzeit manuell in die FB laden muß. Das möchte ich automatisieren.

Für weitere sachdienliche Hinweise bin ich dankbar denn von Webprogrammierung hab ich keine Ahnung. Der einzige Begriff der mir einfällt ist curl im Terminal. Nur wie ich mich damit durch die Anmeldung der FB bis zum Telefonbuch durchschlagen könnte weiiß ich nicht. Un dann müßte man da auch erst einen 2 Buttons anklicken und meine XML-DAtei angeben...
Aber vielleicht geht das ja auch einfacher
0
MikeMuc19.10.1311:52
Eine Ergänzung:
Nach einer Googlesuche habe ich diese Zahlenfolge "#96*8*" in mein Telephon getippt und komme nun per Telnet auf die Box Die per help angezeigten möglichen Befehle sagen mir zu 99% nichts
0
Gerhard Uhlhorn19.10.1318:51
MikeMuc: Verstanden habe ich Dich schon, aber diese Einschränkungen waren mir nicht bekannt. Danke für die Info. In dem Fall geht es wohl nicht anders.
0
MikeMuc19.10.1318:56
Hallo Gerhard,
naja, ich habs halt erstmal mit einer ganz direkten Frage versucht in der Hoffnung ein Beispiescript in AS zu bekommen. Das bisher am nächsten liegende ist was mit PHP welches das Telefonbuch aber nur runter lädt. Hab ich aber auch nicht "übersetzen" können und eigentlich brauch ich ja auch die andere Richtung...
0
Gerhard Uhlhorn19.10.1319:09
Ja, ist doch auch in Ordnung.

Ich kannte halt die Einschränkungen nicht und hatte deswegen diese Lösung vorgeschlagen. Denn es ist billiger sich für 20 Euro ein Programm zu kaufen als tagelang zu programmieren – außer man hat gar kein Geld und dafür massig (kostenlose) Zeit. Oder man macht es, weil man lernen möchte.
0
MikeMuc19.10.1319:14
So, nach viel suchen und wenig finden hab ich jetzt diese Seite gefunden die eigentlich eine Lösung hat (letzte Funktion auf der Seite "upload_to_fb")

Wer kann mir das in Applescript übersetzen? Das ist wenigstens eine Sprache die ich verstehe
0
CH
CH20.10.1312:14
Such mal im Netz nach Fritzbox und sah / telnet. Ich kann's grade nicht genau sagen, aber es gibt wohl einen Weg. Grob: Telefon anschließen, Nummer xx. Eingeben . Dann hat man den telnet Zugang und darüber kann man dann wohl ssh freischalten/ aktivieren.

Es existieren wohl mehrer Anleitungen, wobei das ganze wohl auch modellabhängig ist. Ich werd das in der kommenden Woche mal ausprobieren.

Ch
0
To_Bulk20.10.1312:30
Frizzix ist uneingeschränkt zu empfehlen!
0
MikeMuc20.10.1313:58
T_Bulk: darf ich dich auf meine Antworten an Gerhard verweisen. Ich bin nicht an Alternativen interessiert sondern ein einer Antwort auf meine Frage wie ich die XML-Datei auf die FB bekomme

CH: soweit bin ich schon. Nur hab ich bis jetzt keine Anleitungen gefunden die ich per Terminal oder Applesscript und doShell habe umsetzen können
In meinem Link von gestern Abend wird eigentlich genau das beschrieben was ich will nur kann ich es nicht per AS umsetzen :'(
0
MikeMuc20.10.1322:57
Für alle die es interessiert, so kann man das Telefonbuch aus der FB runter laden. Ist sicher nicht sonderlich elegant aber es funktioniert denn am Ende steht das Telephonbuch in der Variable telbookXML.

Leider hab ich es immer noch nicht geschafft den umgekehrten Weg hin bekommen

set myFritz to "fritz.box"-- ggf. IP-Adresse der FB hier eingeben
set myPass to "xxxx"-- hier Paßwort eintragen

set ret to do shell script "curl http://" & myFritz & "/cgi-bin/webcm?getpage=../html/login_sid.xml"
if paragraph 5 of ret contains "<challenge>" then
    set theChallenge to text 12 thru -13 of paragraph 5 of ret
    log theChallenge
    
    set hStr to theChallenge & "-" & myPass
    
    set f1 to (path to "temp" from user domain as text) & "hBE_File1"
    open for access file f1 with write permission
    write hStr to file f1
    close access file f1
    set f1 to f1 as alias
    
    
    -- File in LE wandeln
    set f2 to (path to "temp" from user domain as text) & "hLE_File2"
    set myF1 to POSIX path of f1
    set myF2 to POSIX path of f2
    set foo to do shell script "iconv  -t UTF-16LE '" & myF1 & "' > '" & myF2 & "'"
    delay 1
    set md5 to do shell script "/sbin/md5 -q '" & myF2 & "'"
    
    tell application "Finder"
        delete f1
        delete f2
    end tell
    
    set myReponse to theChallenge & "-" & md5
    
    set curlParam to "-d \"login:command/response=" & myReponse & "&amp;getpage=../html/de/menus/menu2.html\"" & " http://" & myFritz & "/cgi-bin/webcm"
    log curlParam
    set ret to do shell script "curl " & curlParam
    
    set sidStart to offset of "sid=" in ret
    if sidStart > 0 then
        set mySID to text (sidStart + 4) thru (sidStart + 4 + 16 - 1) of ret
        log mySID
        
        set curlParam to "-F \"sid=" & mySID & "\" -F \"PhonebookId=0\" -F \"PhonebookExportName=Telefonbuch\" -F \"PhonebookExport=\" http://" & myFritz & "/cgi-bin/firmwarecfg"
        log curlParam
        set telbookXML to do shell script "curl -s " & curlParam
        log telbookXML
        
        
    end if
end if
0
MikeMuc21.10.1300:19
So, bin zu einem guten Ende gekommen. Jan-Piet Mens hat hier bereits ein Perlscript geschrieben welches eine Telephonbuch XML-Datei in die FB lädt. Dieses Script kann man per do shell script aufrufen und schwupps schon hat man ein aktuelle Telephonbuch in der Box. Nun kommt das Applescript noch in den Filemaker und dann läßt sich das direkt von dort aktualisieren.
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.