Personal tools
Un Mondo di Newsletter (parte 1)

Singing & Dancing

Feb 08, 2012

Un Mondo di Newsletter (parte 1)

excursus sui prodotti per newsletter sviluppati per Plone

“Quale portale web che si rispetti è sprovvisto di una newsletter?”

Per quanto riguarda la nostra esperienza, un cliente su due ci richiede l'attivazione di un sistema di Newsletter.

La domanda successiva, da bravi sviluppatori Open Source, è: 

“esiste qualcuno che l’ha già fatto?”

Nel nostro caso specifico ci chiediamo:

“ci sono dei prodotti Plone per la gestione delle newsletter?”

La risposta è ovviamente “Sì” e quindi nel corso degli anni abbiamo installato, testato, litigato, patchato, utilizzato tre diversi prodotti: Singing & Dancing, EasyNewsletter e ploneGazette.

A partire da questo articolo andremo ad analizzare i singoli prodotti, per scoprirne pregi e difetti e i miglioramenti che in qualche caso abbiamo apportato.


Singing & Dancing

Singing and Dancing logo

nome prodotto: collective.dancing (+ collective.singing)
owner e maintainer: Daniel Nouri
pagina ufficialehttp://plone.org/products/dancing

Singing & Dancing non è un prodotto unico, ma l’insieme di 2 prodotti: collective.singing e collective.dancing, che si occupano della gestione/creazione delle mailing-list e del loro invio.
E’ un prodotto “out of the box” perché non prevede Archetypes specifici da utilizzare per le newsletter, ma permette di spedire potenzialmente ogni contenuto del sito come corpo della newsletter.
All’installazione ci si ritrova praticamente con una newsletter “chiavi in mano”, visto che nel tool di gestione delle newsletter (accessibile dal panello di controllo del sito, sotto la voce “Singing & Dancing”) è già presente un canale di diffusione di default da poter utilizzare subito.
Singing and Dancing channel


I canali di diffusione
sono lo strumento con cui viene definito comportamento e aspetto di una newsletter. Infatti per ogni singolo canale (se ne possono creare quanti se ne vuole, a seconda di quante diverse newsletter si vogliono avere all’interno del proprio portale) si possono definire svariate elementi, come la possibilità di iscriversi o meno, un eventuale testo da aggiungere in testata e nel footer della mail spedita e degli stili CSS da applicare.

send as newsletterCome abbiamo detto, non utilizzando nessun Archetype particolare, volendo si può spedire qualunque contenuto del sito come newsletter semplicemente scegliendo la voce “invia come newsletter” dal menu “azioni” dell’oggetto, e poi scegliendo il canale di diffusione attraverso cui si vuole spedire.

Il prodotto prevede inoltre una comoda portlet di iscrizione che permette di iscriversi direttamente ad un canale, oppure passare prima per il form di iscrizione dove potrebbe esserci del testo informativo (magari impostato nella configurazione del canale).

Nostre impressioni

impressioniCi siamo ritrovati ad usare Singing & Dancing per diversi clienti; l’abbiamo trovato molto potente e spesso fa bene il suo dovere; ci sono, però, alcune cose che non ci sono piaciute. Di seguito è riportata una serie di pro e contro per analizzare meglio la situazione.


PRO

  • E' costruito sfruttando l'architettura a componenti di Zope3 e la libreria z3c.form
  • E' estremamente estensibile e upgradabile in base alle proprie
  • esigenze
  • Consente una buona gestione dei canali attraverso il tool di gestione
  • La gestione delle iscrizioni è resa sicura mediante un codice di conferma inviato agli utenti
  • Permette di spedire qualunque contenuto
  • Buon supporto della comunity
  • Buon supporto agli utenti con manuali, chat e gruppo dedicato.

CONTRO

  • Per customizzarlo bisogna avere una buona conoscenza di z3c.form e dell'architettura utilizzata
  • Non prevede la gestione decentrata delle newsletter
  • Prevede un meccanismo di invio schedulato che non sempre funziona correttamente
  • Se per sbaglio si cancella un contenuto (o un canale) che è in coda per essere spedito come newsletter, la coda non si svuota a meno che non si ricrei l’oggetto/canale vecchio
  • Il processo di accodamento ed effettivo invio delle newsletter è un po' troppo macchinoso (bisogna eseguire 3 passaggi in tutto)
  • E’ vero che si può spedire tutto, ma non essendoci controlli, si rischia anche di spedire l’intero portale.

Estensionipower-up

Come dicevamo in precedenza, il prodotto è nato per essere particolarmente "upgradabile", quindi su pypi ci sono diversi prodotti che estendono il funzionamento di base di S&D a seconda delle esigenze.
Alcuni di questi li abbiamo creati anche da noi, come per esempio:

collective.dancingnotlikely

[http://pypi.python.org/pypi/collective.dancingnotlikely]
Dato che il corpo della newsletter è la vista dell’oggetto vero e proprio, dentro S&D è presente un dizionario di “sezioni” della vista da non riportare. Alcuni clienti però ci hanno fatto notare che venivano riportate anche le informazioni sul creatore dell’oggetto e la sua history. Abbiamo quindi creato un semplice plugin che aggiunge questi elementi nella lista di quelli da non mostrare.

collective.dancefloor

[http://pypi.python.org/pypi/collective.dancefloor]
Uno dei difetti maggiori di S&D è il fatto che tutta la gestione delle newsletter è centralizzata.

Per poterle gestire bisogna accedere al relativo pannello di controllo, e a questo si accede solamente avendo un determinato permesso globale.
Sempre più clienti, però, hanno la necessità di far gestire diverse newsletter (o canali) a varie redazioni distribuite in più sezioni del sito, le quali dovrebbero poter gestire solo i canali a cui sono abilitate.
Ciò ovviamente col prodotto originale non si poteva fare, quindi ci siamo messi a cercare (senza troppe speranze) se c’era già qualche plugin che facesse questo... e c’era!
Sfortunatamente era un prodotto iniziato e abbandonato dagli sviluppatori ormai da anni, così ci siamo messi in contatto con loro e ne abbiamo preso il controllo.

Il suo funzionamento è molto semplice. In sostanza permette di “dichiarare” che una cartella (o un qualunque oggetto folderish) è una newsletter locale (attraverso un flag che si imposta dal tab di modifica dell’oggetto).

Una volta marcata una cartella come “Newsletter locale”, questa avrà a disposizione l’intera gestione delle newsletter di S&D replicata localmente.
In questo modo, basta segnalare che degli utenti/gruppi sono abilitati a gestire quella newsletter locale (dallo sharing della cartella, utilizzando un nuovo permesso creato ad hoc) e questi avranno tutti i poteri per gestirla in completa autonomia.
Inoltre, quando cercheranno di spedire un contenuto all’interno di una newsletter locale, avranno a disposizione solamente i suoi canali locali (e quelli globali, se esistono), in modo da garantire una certa separazione tra le varie redazioni.

Le immagini sono state prese dal manuale ufficiale di S&D.

To be continued...

Mirco & Andrea

Filed under: , ,
comments powered by Disqus