InfoFrame: Digitaler Bilderrahmen (Anzeige von Anrufen, E-Mails, Termine, Wetter...)

Hi Uwe,

Und wie machst du das?
 
Hallo Bolle,

in der WeatherPlugin.php die Funktion doUpdate ändern:

Code:
	public function doUpdate() {
		[COLOR="#B22222"]$loop = 5;[/COLOR]
		// download google weather XML into local file for caching
		[COLOR="#B22222"]while($loop--)
		{[/COLOR]
  	  	  $city = urlencode( $this->config['city'] );
  		  $curl = curl_init();
  		  $file = fopen("cache/weather.xml", "w");
  		  if ($file)
  		  {
  			curl_setopt($curl, CURLOPT_URL, utf8_encode("http://www.google.de/ig/api?weather=$city&oe=UTF8&hl=DE"));
  			curl_setopt($curl, CURLOPT_FILE, $file);
  			curl_exec($curl);
  			curl_close($curl);
  			fclose($file);
  	  	  }
[COLOR="#B22222"]  	  	  if(filesize("cache/weather.xml") > 1000)
  	  	    break;
  	  	  sleep(5);
  	  	}[/COLOR]
	}

Tschau
Uwe
 
Ok danke dir, dann wechsle ich den Code Teil malus den du gepostet hast....
 
Danek Uwe, funktioniert jetzt wieder einwandfrei!!!
 
Die rss habe ich abgelegt auf dem webserver und rss.xml genannt.
Im Phillips Photomanager auf dem PC habe ich ich dann folgendes eingetragen http://server.de/rss.xml
der Photomanager zeigt mir dann auch das Bild an. Nur im Bilderrahmen sehe geht das ganze kurz auf laden aber kein Bild zu sehen :-(
Was mache ich falsch?
 
Warum denn so kompliziert über die rss? Ich lege das erzeugte Bild auf der Fritzbox ab und lade dieses dann über die Funktion online des Bilderrahmens.

Musst nur in der Refresh.sh den Lokalpath ändern...var/Media/FTP/Bilder/infoframe

Dann findet der Bilderrahmen dein erzeugtes Bild auch..geht wunderbar!
 
Zuletzt bearbeitet:
Sollte eigentlich so klappen. Hast Du mal den Bilderrahmen neu gestartet? Also der Bilderrahmen zeigt genau das, was Du im Manager einstellst. Also wenn Du es im Manager einstellst und siehst, dann müsste es auch im Bilderrahmen ordnungsgemäß angezeigt werden. Geht das Bild im Manager auch weg?
 
Hi nochmal die frage .... Gibt es einen Vorteil der rss gegenüber meinem Vorschlag?

@uwe
Die Bilder werden manchmal auch mit deiner Variante nicht geladen
 
@bolle: Naja, Du hast wohl dann mindestens jede Minute Schreibzugriff auf deinen Speicher. Somit hat deine Box ja wohl etwas mehr zu tun, wenn auch nicht sonderlich merkbar. Ist doch egal......viele wege führen nach Rom, hauptsache es funktioniert.
 
SO habe jetzt auich mal das mit der rss getestet..im Photoframemanager wird das Bild angezeigt...auf dem Rahemn aber nicht- also gleiches Problem wie bei bicmac
 
Also hie mal die Screenshots wie es bei mir istFrame1.jpgFrame2.jpg

So funktioniert es bei mir. Glaube hier im Forum gibt es noch mehr User mit dem Phillips Frame wo es so läuft. Habe es selber aus dem Forum hier. Versucht doch mal ob andere RSS funktionieren. Also mal den Inhalt der RSS auf eine öffentlich Zugängliche Adresse ändern. Glaube bei http://www.deviantart.com/ kann man den RSS nehemn um es zu probieren. Auch dieser funktioniert einwandfrei bei mir. Kann mir nicht vorstellen warum es grade bei euch beiden nicht gehen soll....
 
son die rss mal interna auf der Fritte abgelegt..da geht es komischweise...nur wenn es auf dem Webserver liegt nicht mehr...
 
Hallo bolle,

schön, das es auch bei Dir funktioniert.

Noch eine Änderung am Code (die Freigabe des curl-Handles fehlt im Fehlerfall!):
Code:
    public function doUpdate() {
[COLOR=#B22222]        $loop = 5;[/COLOR]
        // download google weather XML into local file for caching
[COLOR=#B22222]        while($loop--)
        {[/COLOR]
            $city = urlencode( $this->config['city'] );
            $curl = curl_init();
            $file = fopen("cache/weather.xml", "w");
            if ($file)
            {
              curl_setopt($curl, CURLOPT_URL, utf8_encode("http://www.google.de/ig/api?weather=$city&oe=UTF8&hl=DE"));
              curl_setopt($curl, CURLOPT_FILE, $file);
              curl_setopt($curl, CURLOPT_USERAGENT, utf8_encode("Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"));
              curl_exec($curl);
          [COLOR=#000000]    // [/COLOR][COLOR=#d3d3d3]curl_close($curl);[/COLOR][COLOR=#000000] // Entfernen ![/COLOR][COLOR=#d3d3d3][/COLOR]
              fclose($file);
            }
[COLOR=#FF0000]            curl_close($curl);[/COLOR]
[COLOR=#B22222]            if(filesize("cache/weather.xml") > 1000)
              break;
            sleep(5);
        }[/COLOR]
    }

Evtl. muss die rss-Datei auf dem gleichen Server liegen, wie das JPG.
Die RSS-Variante hat den Vorteil, das man mehrere Bilder (Diaschau) einbinden kann.

Tschau
Uwe
 
Zuletzt bearbeitet:
so,

leider tritt das Problem immer noch auf! Ich denke, dass Google nur eine bestimmte Anzhal an Zugriffen zulässt. Sollte es bei jemandem ohne Problem funktioniern wäre es toll, wenn er sich hier mitteilen würde.

Warum müssen die WetterDaten eigentlich auch jede Minute geladen werden. Könnte man das Problem nicht umgehen, dass die Wetterdaten temporär für eine gewisse Zeit abgelegt werden und der bei der Generierung des Bildes auf diese Daten zurückgegriffen werden.
 
Die Daten der letzten Abrage liegen ja im Cache-Verzeichnis.
Sinnvoll wäre es zum einen das Abfrage-Intervall für das Wetter-Plugin seperat einstellen zu können und eventuell auch, wenn man keine neue Daten von Google erhält, die alten weiterzuverwenden!?

Grüße Olli
 
genau so habe ich mir das auch vorgestellt...
 
Ich habe das jetzt so gelöst:

Code:
public function doUpdate() {
	// download google weather XML into local file for caching
        ......
	$file = fopen("cache/weather.tmp", "w");
        ......
		fclose($file);
	}
	if(filesize("cache/weather.tmp") > 1000) {
		copy ("cache/weather.tmp", "cache/weather.xml");
	}
}

Ronny
 
Zuletzt bearbeitet:
Wo genau kommt das hin? Was bewirkt es?
 
Noch 'ne kleine Änderung, hatte da was vergessen...

Die Wetterdaten werden beim Herunterladen nach "weather.tmp" geschrieben. Nur wenn diese Datei die richtige Größe hat, wird diese nach "weather.xml" kopiert.
 
Wo kommt die Änderung hin?
 

Zurzeit aktive Besucher

Statistik des Forums

Themen
246,201
Beiträge
2,247,950
Mitglieder
373,764
Neuestes Mitglied
Matheuswallin
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.