mardi 10 mars 2009

Operation: fournir les évenements du jour par email

Pour mon site sur le village de Risoul et sa station de ski je souhaitais fournir aux utilisateurs la possibilité de s'abonner aux évenements. Je pense que c'est pratique lorsqu'on est en station, de savoir quels sont les évenements et les animations qui s'y deroule le jour même. Moi même je suis souvent frutré de ne pas trouver un progamme simple des évenemtns près de chez moi.

Alors comme le site est sous joomla, j'ai utilisé le composant Eventlist (composant d'excellente qualite d'ailleurs...) afin de gérer les evenements et de permettre aux organisatuer des les entrer eux memes sur le site.

Tout fonctionne a merveille jusque là. Une page permet meme de voir les évenements du jour.

Alors tout d'abord j'ai rendu cette page (et finallement l'ensemble du site) disponible sur les mobiles grace a l'excellent plugin pour joomla. Ce module affiche un template special (simple) lorsqu'il detecte un mobile (pda ou iphone) qui se connecte.

Pratique mais cela oblige a se rendre sur la page pour consulter les evenements du jour, alors que je pense qu'il vaut mieux les fournir par email (l'ideal serait par sms...).

Le site gratuit propose tout ce qu'il faut pour transférer un fil rss vers un email.

Et c'est là que çà coince... Le composant Eventlist propose un flux RSS mais il contient (a l'heure actuelle) tous les évenements et pas uniquement ceux du jour... pas très interessant dans mon cas.

Alors il a fallu créer un flux rss à partir de la page de mon site. Pour celà j'ai utilisé l'excellent Feedity, gratuit lui aussi. Ce petit outil permet à partir d'une page web, de générer un fil rss.

Me voilà donc avec un fil RSS. Maintenant il faut l'envoyer aux abonnés.

Pour celà j'ai créé un groupe google... auquel ceux qui veulent recevoir chaque jour les évenements de risoul peuvent s'abonner. Il me reste donc a envoyer les fil RSS vers le groupe.

J'utilise donc Xfruit et son RSS to Mail.

Problème numero2: pour s'abonner au groupe, il faut confirmer son adresse. Si je veux envoyer mon flux RSS vers un mail par Xfruit, je ne pourrais pas confirmer.

Donc j'ai pris un chemin detourné.

Xfruit envoit le contenu du flux, chaque jour, dans une boite mail crée pour l'occasion. Et cette boite est configurée pour transmettre automatiquement le mail sur le groupe (et oui, avec cette boite j'ai pu devenir membre du groupe).

Voila, il me reste donc a faire quelques tests, et normallement les visiteurs de risoul-05.fr pourront bientot s'abonner au groupe pour recevoir chaque jour gratuitement la liste des évenements de la journée directement dans la boite mail de leur bel Iphone :)

Bon c'est vrai, un fil RSS sur la page des evenements du jour dans eventlist aurait nettement simplifié la tache... mais on est developpeur ou on ne l'est pas :)

edit:
Les test sont fait, et ce n'est pas vraiment top.

1. Feedity (en version gratuite) ne s'actualise que tous les 5h. Ca pourrait etre suffisant mais çà ne me convient pas.
2. Feedity ajoute des pubs dans le flux RSS, çà se comprend mais j'aime pas et je n'ai pas en vie de passer à la version payante.

Donc je decide de remplacer feedity par un yahoo pipe. L'outil est très performant. Pour moi la difficulté à été d'apprendre la syntaxe des expressions reguliere pour utiliser le module regex. En effet ce module permet d'extraire des données depuis la page html et de les assigner à une variable. Donc après 4 bonnes heures de galère, je suis parvenu a extraire mon contenu et à en faire un flux RSS.

Restait à distribuer le flux. Xfruit paraissait bien sur le papier, le probleme est qu'il a l'air plus ou moins a l'abandon (spams dans les commentaires...). Et le gros probleme est que la brique RSS to Mail ne m'a jamais envoyé un seul email... bizarre...
J'ai donc décidé de m'en passer. On oublie donc l'abonnement aux évenements depuis une liste de diffusion google groups.

J'ai testé PHPList qui peut envoyer des fils RSS, de façon journaliere mais je n'ai rien trouvé pour programmer l'heure d'envoi.

Donc finallement ce sera simplement feedburner

Aucun commentaire:

Enregistrer un commentaire