FritzBox Telefonbuch Service für Cisco Telefone

Hallo, mega cooles Script - vielen Dank. Ich habe aber noch ein paar kleinere Probleme.

Aber erst einmal ein kleiner Tipp meinerseits:

Wir speichern im Unternehmen in der Regel unsere Kontakte im Outlook und nicht in der Fritzbox.
Mit Hilfe von dem Addon "FritzboxTelefon-dingsbums" (ja das heißt wirklich so) ist es möglich die Outlook-Kontakte mit dem Fritzbox-Telefonbuch zu synchronisieren.


Nun zu meinen Problemen, vielleicht könnt ihr mir helfen:

1. Wenn ich auf das Telefonbuch zugreife, dann sehe ich über die Logfiles, dass ein Zugriff theoretisch erfolgt. Allerdings schafft das Script nicht sich das Telefonbuch aus der Fritzbox zu ziehen. Ich habe nur ein einziges Telefonbuch. In der Config habe ich als Telefonbuch das Telefonbuch Nummer "0" gewählt. Die Zugangsdaten für die Fritzbox habe ich in der Config hinterlegt.

2. Wie in Punkt eins geschrieben kann er das Telefonbuch nicht selber extrahieren. Ich habe dem Script mal unter die Arme gegriffen und das Telefonbuch händisch extrahiert und im Ordner "books" als XML abgelegt. Wenn ich nun das Telefonbuch am IP-Telefon aufrufe, dann zeigt er mir ca. 30 Kontakte an. In der XML Datei sind aber mehr als 30 Personen aufgelistet. Weiß hier jemand Rat?


//Edit:
in Post 230 konnte ich gerade sehen, dass meine Logfile anders aussieht,
Bei mir fehlt der Versuch sich mit der Fritzbox zu verbinden.
Das erklärt zumindest schon mal den Fehler aus Punkt 1.

Meine Logfile:
13.11.2024 22:20:03 --- START LOGGING ---
13.11.2024 22:20:03 operation system: Windows NT DESKTOP-ETPOEBR 10.0 build 19045 (Windows 10) AMD64
13.11.2024 22:20:03 webserver - name: <address>Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.2.12 Server at 192.168.178.240 Port 80</address>
13.11.2024 22:20:03 webserver - user: desktop-etpoebr\micha
13.11.2024 22:20:03 directory.php: started
13.11.2024 22:20:03 directory.php: phonebook dosn't exist
13.11.2024 22:20:03 directory.php: execute: book



Liebe Grüße und ich hoffe ihr könnt mir helfen.
knocko
 
Zuletzt bearbeitet:
Nach längerer Zeit muss ich noch mal hierauf zurückkommen. Ich musste den fritzco service verlagern, dabei bin ich jetzt auf folgende Problematik in Verbindung mit weather modul gestossen. Jemand 'ne Idee wie man das fixen kann?

Ich vermute es liegt an der php8 Version gegenüber vorher php7. Anzeigen der Wetter-Grafik oder der Vorschau ist irgendwie nicht mehr möglich.

Code:
PHP 7.3.31-1~deb10u7 (cli) (built: Jun 17 2024 21:48:38) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.31, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.3.31-1~deb10u7, Copyright (c) 1999-2018, by Zend Technologies


gegenüber nun

PHP 8.2.26 (cli) (built: Nov 25 2024 17:21:51) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.26, Copyright (c) Zend Technologies
    with Zend OPcache v8.2.26, Copyright (c), by Zend Technologies

Fehler im apache error.log:
...
[Sun Jan 26 16:54:00.930135 2025] [php:error] [pid 8918:tid 8918] [client 192.168.2.10:53095] PHP Fatal error: Uncaught Error: Call to undefined function imagecreatetruecolor() in /var/www/html/fritzco/weather.php:133\nStack trace:\n#0 {main}\n thrown in /var/www/html/fritzco/weather.php on line 133
[Sun Jan 26 16:54:01.334350 2025] [php:error] [pid 8919:tid 8919] [client 192.168.2.10:53096] PHP Fatal error: Uncaught TypeError: count(): Argument #1 ($value) must be of type Countable|array, Cmfcmf\\OpenWeatherMap\\WeatherForecast given in /var/www/html/fritzco/weather.php:112\nStack trace:\n#0 {main}\n thrown in /var/www/html/fritzco/weather.php on line 112


/EDIT
offenbarte fehlte noch das Paket php-gd, nach einem apt install php-gd funktioniert nun auch die Wetteransicht. Einzig die Vorschau will weiter nicht
und schmeisst nur einen HTTP-Fehler [500]!

mit folgenden korrespondierendem log Eintrag.

Code:
[Sun Jan 26 17:24:19.317530 2025] [php:error] [pid 10513:tid 10513] [client 192.168.2.10:50011] PHP Fatal error:  Uncaught TypeError: count(): Argument #1 ($value) must be of type Countable|array, Cmfcmf\\OpenWeatherMap\\WeatherForecast given in /var/www/html/fritzco/weather.php:112\nStack trace:\n#0 {main}\n  thrown in /var/www/html/fritzco/weather.php on line 112
 
Zuletzt bearbeitet:
  • Like
Reaktionen: drmedcroft
  • Like
Reaktionen: Wesumat
Habe die Zeile einfach mal auskommentiert, Vorschau lässt sich wieder durchblättern, keine Fehler mehr im log.

Dank dir.
 
Zuletzt bearbeitet von einem Moderator:
Welche Firmware läuft auf dem IP-Telefon?

Und zum festhalten für die Zukunft, laut aktueller Signatur (denn die kann sich ja in Zukunft ändern und dann weiß man in Zukunft nicht mehr mit welcher FRITZ!OS-Version das ggf. noch erfolgreich lief) von @drmedcroft: FRITZ!OS 8.02 auf einer 7590 AX.
 
Danke für die flotte antwort. :)
Die installierte Firmware ist die sip88xx.12-7-1-0001-393 auf dem 8851
auf der 7975G die SIP75.9-4-2SR3-1S Firmware.
Auf allen iP Phones das gleiche ergebnis :/
 
Guten Morgen! Ich habe die 8851 und 8841 ebenfalls auf die aktuelle Firmware geupdatet > . Leider keine verbesserung. Immernoch wird mir "&deg;" statt Grad ° angezeigt. Liegt es an der PHP Version? Hab 8.3.... ein downgrade auf 8.0 brachte auch keine änderung.

Was mir auch aufgefallen ist: Wenn ich Beim Wetter auf Aktualisieren drücke wird mir "HTTP 404: Seite nicht gefunden" angezeigt.
 
Das &deg ist vermutlich das Ersetzungszeichen für das Grad-Symbol ° ,das möglicherweise im aktuell verwendeten Zeichensatz nicht vorhanden ist.
 
Danke für dein Tipp. Das heißt ich müßte ich ein anderes font auswählen? in moment verwende ich "ARIAL.TTF" sollte ° darin enthalten sein oder irre ich mich...
 
in moment verwende ich "ARIAL.TTF" sollte ° darin enthalten sein
Kommt auf den Bereich und die interne Übersetzung der genutzten Zeichentabelle an - im Standard-ASCII-Zeichensatz (1Byte) ist das Zeichen nicht enthalten...
Wenn das Fon dieses in der Zeichenkette vorliegende ""&deg" nicht übersetzen kann, dann wird das halt stumpf so angezeigt
 
Moin

Oder es ist ein Schreibfehler im PHP Skript?
Dann korrigieren, alle vorkommen von &deg in den richtigen Bezeichner $deg (eine PHP Variable).

*EDIT*
Nein, es ist keine PHP Variable, sondern ein sogenanntes HTML Entity ;)
Es gehört also kein Doppelpunkt sondern ein Semikolon hinter &deg
Probier mal in der Adresszeile deines Lieblingswebbrowsers....
Code:
data:text/html,<h1>30&deg;</h1>


Bildschirmfoto vom 2025-04-24 18-22-12.png
Wenn der Webbrowser des Telefons das nicht darstellen kann, halte ich das für ein Armutszeugnis :p
Dann ersetze im PHP Skript das "&deg;" durch "°"
 
Zuletzt bearbeitet:
im Standard-ASCII-Zeichensatz (1Byte) ist das Zeichen nicht enthalten...
Der Standard-ASCII-Zeichensatz hat 7 Bit, nicht 8 :)
(vgl. https://de.wikipedia.org/wiki/American_Standard_Code_for_Information_Interchange)

Was mich wundert ist, dass das Symbol
ist.
@drmedcroft kannst du vielleicht einmal kurz sagen, von woher genau du jetzt den Sourcecode genommen hast?
Ich habe da jetzt mal etwas quergelesen und der Zugriff auf OpenWeatherMap wird, lt. meiner Quelle, also https://github.com/SkyhawkXava/fritzco,
über das Projekt "cmfcmf" eingebunden. Und dort steht nicht die HTML-Entity, sondern das Grad-Symbol direkt:

Die Telefone haben ja typischerweise keinen Web-Browser, der HTML interpretiert, sondern XML mit speziellen Tags.
Die allwissende Intelligenz empfahl übrigens auch:
ChatGPT schrieb:
Obwohl &deg; technisch korrekt ist, unterstützt das Cisco 8851 diese benannten Entities nicht zuverlässig. Daher: lieber vermeiden.
Tipps sind:
Das Symbol direkt, verwenden, wie von @koyaanisqatsi empfohlen,
oder via
Code:
&#176;
Es schadet nicht, in dem XML-Root auch ein encoding explizit zu setzen (UTF-8) und dann drauf zu achten, dass der verwendete Webserver den Inhalt als UTF-8 ausliefert, also mit:
Code:
Content-Type: text/xml; charset=UTF-8
 
Zuletzt bearbeitet:
Danke für die erläuterung. Und vielen Dank! @sunnyman Ich habe damals die 2.4 der OpenWeatherMap auch von da heruntergeladen. Die neueen Versionen funktionieren nicht oder? Zumindest habe ich das mal gelesen.
Ich habe die "&deg;" im Forcast.php und im Unit.php stumpf durch "°C" ersetzt und es funktioniert. und weil ich dabei war auch "°F" auch. Mein Monk wollte das so. ;):)

step by step

Jetzt funktioniert nur noch die Aktualisierung nicht... Fehler HTTP 404: Seite nicht gefunden ...

LG
 
Mit dem 404er wäre die Frage, ob da in der API was kaputt ist, sprich gegen OpenWeatherMap was schief läuft oder das "lokale" irgendwie nicht geht. Schau dazu am besten mal in das Log des Webservers.
 
Ich habe hier mal die Errorlogs ab 14 Uhr gesammelt.
Hab auch mal versucht ein Wallpaper hinzuzufügen in der weather.config.inc.php
25.04.2025 13:51:46 iroland.de [client 95.112.65.0] PHP Warning: imagecreatefrompng(iroland.de/cisco_service/fritzco/weather/wallpaper/298x168_pexels.png): Failed to open stream: No such file or directory in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 140
25.04.2025 13:51:46 iroland.de [client 95.112.65.0] PHP Fatal error: Uncaught TypeError: imagecopyresampled(): Argument #2 ($src_image) must be of type GdImage, false given in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php:141
25.04.2025 13:51:46 iroland.de [client 95.112.65.0] Stack trace:
25.04.2025 13:51:46 iroland.de [client 95.112.65.0] #0 /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php(141): imagecopyresampled()
25.04.2025 13:51:46 iroland.de [client 95.112.65.0] #1 {main}
25.04.2025 13:51:46 iroland.de [client 95.112.65.0] thrown in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 141
25.04.2025 14:21:27 iroland.de [client 95.112.65.0] PHP Warning: imagecreatefrompng(): php_network_getaddresses: getaddrinfo for wwwiroland.de failed: Name or service not known in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 140
25.04.2025 14:21:27 iroland.de [client 95.112.65.0] PHP Warning: imagecreatefrompng(http://wwwiroland.de/cisco_service/fritzco/weather/wallpaper/298x168_weather.png): Failed to open stream: php_network_getaddresses: getaddrinfo for wwwiroland.de failed: Name or service not known in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 140
25.04.2025 14:21:27 iroland.de [client 95.112.65.0] PHP Fatal error: Uncaught TypeError: imagecopyresampled(): Argument #2 ($src_image) must be of type GdImage, false given in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php:141
25.04.2025 14:21:27 iroland.de [client 95.112.65.0] Stack trace:
25.04.2025 14:21:27 iroland.de [client 95.112.65.0] #0 /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php(141): imagecopyresampled()
25.04.2025 14:21:27 iroland.de [client 95.112.65.0] #1 {main}
25.04.2025 14:21:27 iroland.de [client 95.112.65.0] thrown in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 141
25.04.2025 14:21:32 iroland.de [client 95.112.65.0] PHP Warning: imagecreatefrompng(): php_network_getaddresses: getaddrinfo for wwwiroland.de failed: Name or service not known in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 140
25.04.2025 14:21:32 iroland.de [client 95.112.65.0] PHP Warning: imagecreatefrompng(http://wwwiroland.de/cisco_service/fritzco/weather/wallpaper/298x168_weather.png): Failed to open stream: php_network_getaddresses: getaddrinfo for wwwiroland.de failed: Name or service not known in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 140
25.04.2025 14:21:32 iroland.de [client 95.112.65.0] PHP Fatal error: Uncaught TypeError: imagecopyresampled(): Argument #2 ($src_image) must be of type GdImage, false given in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php:141
25.04.2025 14:21:32 iroland.de [client 95.112.65.0] Stack trace:
25.04.2025 14:21:32 iroland.de [client 95.112.65.0] #0 /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php(141): imagecopyresampled()
25.04.2025 14:21:32 iroland.de [client 95.112.65.0] #1 {main}
25.04.2025 14:21:32 iroland.de [client 95.112.65.0] thrown in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 141
25.04.2025 14:22:33 iroland.de [client 95.112.65.0] PHP Warning: imagecreatefrompng(): php_network_getaddresses: getaddrinfo for wwwiroland.de failed: Name or service not known in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 140
25.04.2025 14:22:33 iroland.de [client 95.112.65.0] PHP Warning: imagecreatefrompng(http://wwwiroland.de/cisco_service/fritzco/weather/wallpaper/298x168_weather.png): Failed to open stream: php_network_getaddresses: getaddrinfo for wwwiroland.de failed: Name or service not known in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 140
25.04.2025 14:22:33 iroland.de [client 95.112.65.0] PHP Fatal error: Uncaught TypeError: imagecopyresampled(): Argument #2 ($src_image) must be of type GdImage, false given in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php:141
25.04.2025 14:22:33 iroland.de [client 95.112.65.0] Stack trace:
25.04.2025 14:22:33 iroland.de [client 95.112.65.0] #0 /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php(141): imagecopyresampled()
25.04.2025 14:22:33 iroland.de [client 95.112.65.0] #1 {main}
25.04.2025 14:22:33 iroland.de [client 95.112.65.0] thrown in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 141
 
Du hast mindestens mal nen Tippfehler:
Code:
php_network_getaddresses: getaddrinfo for wwwiroland.de failed: Name or service not known in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 140

Da fehlt wohl nen Punkt.
 
Guten Morgen.
@sunnyman Danke :), aber den fehler hatte ich schon korrigiert. Ohne erfolg :/

hier nochmal aktuell von heute.
26.04.2025 06:42:10 iroland.de [client 95.113.5.0] PHP Warning: imagecreatefrompng(http://www.iroland.de/cisco_service/fritzco/weather/wallpaper498x289_pexels-brett-sayles-1431822.png): Failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found
26.04.2025 06:42:10 iroland.de [client 95.113.5.0] in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 140
26.04.2025 06:42:10 iroland.de [client 95.113.5.0] PHP Fatal error: Uncaught TypeError: imagecopyresampled(): Argument #2 ($src_image) must be of type GdImage, false given in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php:141
26.04.2025 06:42:10 iroland.de [client 95.113.5.0] Stack trace:
26.04.2025 06:42:10 iroland.de [client 95.113.5.0] #0 /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php(141): imagecopyresampled()
26.04.2025 06:42:10 iroland.de [client 95.113.5.0] #1 {main}
26.04.2025 06:42:10 iroland.de [client 95.113.5.0] thrown in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 141
26.04.2025 06:43:55 iroland.de [client 95.113.5.0] PHP Warning: imagecreatefrompng(weather/wallpaper498x289_pexels-brett-sayles-1431822.png): Failed to open stream: No such file or directory in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 140
26.04.2025 06:43:55 iroland.de [client 95.113.5.0] PHP Fatal error: Uncaught TypeError: imagecopyresampled(): Argument #2 ($src_image) must be of type GdImage, false given in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php:141
26.04.2025 06:43:55 iroland.de [client 95.113.5.0] Stack trace:
26.04.2025 06:43:55 iroland.de [client 95.113.5.0] #0 /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php(141): imagecopyresampled()
26.04.2025 06:43:55 iroland.de [client 95.113.5.0] #1 {main}
26.04.2025 06:43:55 iroland.de [client 95.113.5.0] thrown in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 141
26.04.2025 06:47:26 iroland.de [client 95.113.5.0] PHP Warning: imagecreatefrompng(weather/wallpaper/498x289_pexels-brett-sayles-1431822.png): Failed to open stream: No such file or directory in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 140
26.04.2025 06:47:26 iroland.de [client 95.113.5.0] PHP Fatal error: Uncaught TypeError: imagecopyresampled(): Argument #2 ($src_image) must be of type GdImage, false given in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php:141
26.04.2025 06:47:26 iroland.de [client 95.113.5.0] Stack trace:
26.04.2025 06:47:26 iroland.de [client 95.113.5.0] #0 /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php(141): imagecopyresampled()
26.04.2025 06:47:26 iroland.de [client 95.113.5.0] #1 {main}
26.04.2025 06:47:26 iroland.de [client 95.113.5.0] thrown in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 141
26.04.2025 07:02:33 iroland.de [client 95.113.5.0] PHP Warning: imagecreatefrompng(weather/wallpaper/498x289_pexels-brett-sayles-1431822.png): Failed to open stream: No such file or directory in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 140
26.04.2025 07:02:33 iroland.de [client 95.113.5.0] PHP Fatal error: Uncaught TypeError: imagecopyresampled(): Argument #2 ($src_image) must be of type GdImage, false given in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php:141
26.04.2025 07:02:33 iroland.de [client 95.113.5.0] Stack trace:
26.04.2025 07:02:33 iroland.de [client 95.113.5.0] #0 /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php(141): imagecopyresampled()
26.04.2025 07:02:33 iroland.de [client 95.113.5.0] #1 {main}
26.04.2025 07:02:33 iroland.de [client 95.113.5.0] thrown in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/weather.php on line 141
26.04.2025 07:53:59 iroland.de [client 95.113.5.0] PHP Warning: Undefined array key "SERVER_SIGNATURE" in /mnt/web612/a0/01/51001601/htdocs/iroland.de/cisco_service/fritzco/lib/logging/logging.php on line 31
 
Da steht doch bereits in der ersten Zeile des Logs, was das Problem ist.
 
Jap. danke. :) Jetzt funktioniert es mit den farbigen wallpaper.
Hätte ich mal genauer hinschauen müßen... :rolleyes:

An der Aktualisierung hat es leider noch nichts geändert.
 
Kostenlos!

Statistik des Forums

Themen
247,081
Beiträge
2,261,721
Mitglieder
375,433
Neuestes Mitglied
kumarleo