[Gelöst] Suche Script: Telefonbuch mit Shellscript auf der box umwandeln

disorganizer

Neuer User
Mitglied seit
14 Mai 2010
Beiträge
115
Punkte für Reaktionen
4
Punkte
18
Ich suche ein Shellscript das man auf der Fritzbox (ohne Freetz, wenn möglich) ausführen kann um das Fritzbox Telefonbuch (/var/flash/phonebook oder pbd --export) umzuwandeln in folgendes format:
Code:
<MenuItem><Name>Name1 Nachname1 (Typ)</Name><URL>Dial:012345678</URL></MenuItem>
<MenuItem><Name>Name2 Nachname2 (Typ)</Name><URL>Dial:012456789</URL></MenuItem>

Wobei mit "Typ" die Art der Telefonnummer (Home, Work, Mobile) gemeint ist.
Das Script sollte die Angabe eines Telefonbuchnamens als Parameter unterstützen (z.B. "Wohnzimmer") und dann nur die entsprechenden Einträge ausgeben.

Hat jemand schon so ein Script oder könne zumindest den SED/grep etc. Teil mal erstellen?

Ich habe inzwischen schon mehrfach mit meinen minimalen Kenntnissen versucht per sed die xml zu zerlegen.
Leider scheitere ich immer wieder daran das das fritzbox xml ohne Zeilenumbrüche daherkommt bzw an ungewöhnlichen Stellen Zeilenumbrüche stehen.

Es würde mir auch reichen wenn das Ergebnis dann im CSV format mit den Spalten Telefonbuchname, Name, Vorname, Typ, Nummer ist.
Die Umformatierung auf obiges (cisco) Format bekomme ich dann denke ich selbst hin.

EDIT:
Genialer wäre nach zweitem nachdenken doch letzteres (Ergebnis CSV) da dies dann auch für andere Scripts verwendet werden könnte.
Eventuell ja auch als Binary, wenn es damit einfacher wäre.
Es sollte nur auch ohne Freetz auskommen.

gelöst siehe u.a.
http://www.ip-phone-forum.de/showthread.php?t=245349
 
Zuletzt bearbeitet:
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.