Wer im Besitz einer Nextcloud/ownCloud-Instanz ist, hat evtl. das Bedürfnis die dort liegenden Kontakte auch mit der FRITZ!Box zu synchronisieren. Wenn man im Besitz eines FRITZ!Fon ist man gleich noch den schönen Nebeneffekt, dort auch gleich die Kontakte sehen zu können.

In meinem Beispiel habe ich das Ganze auf einer FRITZ!Box 6590 Cable mit der Firmware 06.83 und einem Raspberry Pi (unter Raspbian 8) eingerichtet.

Und so geht's

FRITZ!Box vorbereiten

  • Webinterface der FRITZ!Box öffnen (fritz.box)
  • auf "System --> FRITZ!Box Benutzer" klicken
  • Hier muss nun ein neuer Benutzer angelegt werden, der die folgenden Rechte besitzt:
    • FRITZ!Box Einstellungen (zum Hochladen der Kontakte)
    • Zugang zu NAS-Inhalten (Zum Hochladen der Kontaktbilder via FTP)

Damit ist die Einrichtung an der FRITZ!Box abgeschlossen.

Konfiguration des Raspberry Pi

  • eine SSH-Sitzung zum Raspberry Pi öffnen
  • Die benötigten PHP-Pakete installieren:
    • sudo apt install php7.0 php7.0-cli php7.0-curl php7.0-ftp php7.0-mbstring php7.0-xml
  • carddav2fb herunterladen:
  • In den carddav2fb-Ordner wechseln:
    • cd carddav2fb/
  • die Datei "config.example.php" nach "config.php" verschieben:
    • mv config.example.php config.php
  • Nun muss die Konfigurationsdatei bearbeitet werden:
    • vi config.php
  • ...und die benötigten Optionen konfiguriert werden:

$config['fritzbox_user'] = '<FRITZ!BOX-BENUTZER>';
$config['fritzbox_pw'] = '<PASSWORT>';
$config['phonebook_number'] = '1';
$config['phonebook_name'] = 'Nextcloud';
url' => '<URL ZUM ADRESSBUCH DER CLOUD>',
'user' => '<OWNCLOUD-BENUTZER>',
'pw' => '<OWNCLOUD-PASSWORT>',

Man kann hier natürlich auch das Standard-Telefonbuch (0) verwenden. Ich habe mir für meine Nextcloud-Kontakte dafür ein eigenes Telefonbuch anlegen lassen.

Jetzt kann das Script für einen ersten Text gestartet werden:

php carddav2fb.php

Nun sollten im FRITZ!Box Webinterface unter "Telefonie --> Telefonbuch" die Kontakte im Telefonbuch "Nextcloud" auftauchen. Evtl. muss man noch in dieses Telefonbuch wechseln, über den Link "Telefonbuch wechseln".

Raspberry Pi - Cronjob einrichten

Cronjob-Verwaltung öffnen:

crontab -e

# Taeglich um 00:00 werden die Nextcloud-Kontakte zur Fritz!Box synchronisiert
0 0 * * * /usr/bin/php /home/pi/carddav2fb/carddav2fb.php >/dev/null 2>&1

Nun werden also regelmäßig die Kontakte zur FRITZ!Box synchronisiert. Wer ein FRITZ!Fon besitzt, sollte hier nun auch die Kontakte sehen können: