Apparement, un pape a été appellé arraignée. Drôle de nom, mais passons directement à ce qui nous interesse.

Suite à ce billet d'infocraft (via), j'ai eu envie moi aussi de coder (à l'arrache) un petit compteur temps-réel en Flash des téléchargements de Firefox, le navigateur web qu'il est bien le plus mieux du monde. Ne cherchez pas à comprendre pourquoi j'ai des idées pareilles, moi-même je m'interroge encore.

Il est scalable, aussi, vous pouvez aussi l'afficher plein-pot. La source est dispo ici, et s'utilise comme ceci :

var counter:FFCounter = new FFCounter(this, "ffcounter_rss.php");
Le premier argument passé au constructeur est le clip cible dans lequel vous voulez dessiner le compteur (par défaut, _root sera choisi) et le deuxième l'url de votre script mirroir du fil RSS de Mozilla - j'ai pour ma part utilisé le même qu'infocraft :

Fichier ffcounter_rss.php :

<?php
$host = "www.spreadfirefox.com";
$path = "/download_counter.php?ff=1";
$fp = fsockopen($host, 80, $errno, $errstr, 30);
if (!$fp) {
	echo "$errstr ($errno)
";
} else {
	$out = "GET $path HTTP/1.1
";
	$out .= "Host: $host
";
	$out .= "Connection: Keep-Alive

";
	fwrite($fp, $out);
	while (!feof($fp)) {
		$buffer .= fgets($fp, 128);
	}
	fclose($fp);
	header ('Content-Type: text/xml');
	header ('Expires: Wed, 03 Nov 2004 00:00:00 GMT');
	echo substr($buffer, strpos($buffer, "

") + 4);
}
?>

Chouette, une éclaircie. Je fonce me promener :)

Edit du lendemain désabusé

Les gens de spreadfirefox ont modifié la fréquence de mise à jour de leur fil RSS, et l'ont passé à une minute. Une minute entre chaque comptage, cela veut dire que desormais le compteur en Flash ci dessus devra effectuer une resynchronisation toute les minutes avant de bouger. Ben oui, le compteur n'avait d'interêt que parcequ'il évoluait en temps réel, grace au calcul du download rate entre deux rafraîchissement du flux (6 secondes par défaut). Des fois quand j'écris et que je me relis, j'ai l'impression d'être un dingue.

Bref, vous l'aurez compris, j'ai developpé cette classe pour rien, sauf si vous avez la patience d'attendre une minute avant de le voir évoluer en temps réel. Note que vous pouvez aussi avoir de la chance et le lancer cinq secondes seulement avant que les serveurs mozilla ne mettent à jour leur ficher xml...

Je me doute que ce fil bouffe beaucoup de bande passante et de temps processeur au serveurs qui l'héberge, mais disons que le seul interêt qu'il présentait à mes yeux était jusqu'ici sa fréquence quasi-temps-réel de mise à jour. M'enfin bon. Sinon il pleut, je suis malade et Benoit XVI me les brise déjà. Yiipee.