Importare RSS di Drupal in Facebook: quando un warning diventa un errore
Qualche tempo fa mi è saltato in mente di voler importare questo blog nella mia pagina personale di Facebook (FB) in modo da sperimentare la commistione tra blog personale e pagina personale su FB. L'idea non mi sembrava così strana anche perché avevo visto che su FB esisteva la funzione di importazione blog via RSS feed. Visto che il mio blog è già accessibile via RSS feed 2.0, ho pensato che la cosa doveva essere veramente semplice!
Niente di più sbagliato!
In sintesi: anche se sulla carta l'operazione dovrebbe essere proprio quella di inserire semplicemnte l'indirizzo del RSS feed e basta, nella realtà si deve verificare che il proprio RSS feed non solo produca un formato RSS 2.0 "esteso", ma anche che non ci siano assolutamente warning di formato nell'XML prodotto in quanto un qualsiasi warning blocca l'importazione senza nessun avviso da parte di FB!
La cosa sarebbe anche accettabile se fosse chiaramente scritto che il formato deve rispettare una certa sintassi in modo rigido, ma quando, invece, non si specifica nulla e si danno solo indicazioni generiche allora si deve anche realizzare un servizio/funzione in grado di gestire tutte le condizioni possibili altrimenti si allontana l'utente.
Per chi volesse capirne di più, ecco la sintesi di quello che mi è capitato e come sono riuscito a venirne a capo.
Premessa: per la maggioranza (compreso gli informatici) i paragrafi seguenti sono un po' noiosi e anche irritanti perché dimostrano ancora una volta che l'informatica applicata in modo pressapochista complica la vita anziché semplificarla.
In FB si può importare un blog o nel proprio wall o come elementi nella sezione 'Note'. L'operazione di importazione consiste semplicemente nello specificare in un apposito campo di configurazione l'indirizzo (URL) del RSS feed del proprio blog. Un programma di FB provvederà ad aggiornare ogni 3 ore circa la pagina di FB importando gli elementi nuovi presenti nel blog.
Su FB non si dilungano molto a specificare qual è il formato RSS supportato dal loro sistema. Apparentemente sembra che il formato RSS supportato sia il 2.0.
Ho inserito l'indirizzo del mio blog. All'inizio ha funzionato. Tutti gli elementi sono stati importati.
Il problema è sorto dopo qualche settimana: ho notato che i nuovi elementi del blog non venivano importati. Ho provato quindi a verificare lo stato del servizio è, con un po' di meraviglia, ho scoperto che c'era un errore di formato. Gli help in linea non aiutavano (aiutano) molto: uno di questi (http://www.facebook.com/help/?faq=13377) suggerisce semplicementi di validare il proprio RSS feed con il validatore all'indirizzo http://www.feedvalidator.org/. Ho validato con successo il mio feed (il sito dice anche di pubblicizzare con l'icona
This is a valid RSS feed). C'erano solo 2 warning: uno relativo al fatto che mancava un elemento per il protocollo Atom (ma a chi interessa... RSS 2.0 è sufficiente!) e l'altro che un elemento conteneva un attributo non valido.
Visto che erano warning e che su FB richiedevano solo la validazione, ho pensato che il problema del mancato aggiornamento fosse da imputare ad un errore di FB.
Ho provato quindi a cancellare e a reinserire l'impostazione con il risultato che gli elementi importati si sono duplicati (con conseguente perdita di tempo per ripulire i doppioni) senza risolvere il problema.
A un certo punto ho pensato allora di ripulire il mio feed in modo da eliminare qualsiasi warning.
Dei due, il secondo era banale da eliminare perché era un errore su un elemento. Il primo però richiedeva una modifica dei sorgenti di Drupal in modo che il feed prodotto rispettasse anche il formato Atom. L'ho fatto: dopo qualche ora di lavoro sono riuscito a fare in modo che il RSS feed producesse il formato RSS 2.0 + Atom.
Con questa modifica, FB mantiene l'allineamento con il blog.
No comment :-(
- Roberto Posenato's blog
- Login per inviare commenti
- 3731 letture
- Versione stampabile
