## Please edit system and help pages ONLY in the master wiki!
## For more information, please see MoinMoin:MoinDev/Translation.
##master-page:HelpOnNotification
##master-date:2008-05-12 16:37:40
#acl -All:write Default
#format wiki
#language it
<<TableOfContents>>

= Il sistema di notifica =

!MoinMoin 1.7 comprende un sistema di notifiche basato su un processo separato che esegue un bot Jabber/XMPP di notifica. Per maggiori informazioni a riguardo, consultare http://www.jabber.org/ e http://www.xmpp.org/.

Il bot può essere usato per inviare notifiche riguardo diversi eventi che si verificano all'interno del wiki o per poter lavorare interattivamente col wiki.

Essendo un processo separato, non si blocca in attesa di inviare tutte le notifiche e questa soluzione dovrebbe essere utile per siti di grandi dimensioni con molti utenti iscritti a particolari modifiche.

== Caratteristiche ==

 * Le notifiche sono inviate quando le pagine vengono modificate (cambiamento del contenuto, rinomina, cancellazione, copia,...), quando vengono creati gli utenti (visibile solo al super utente), quando vengono aggiunti allegati e quando gli utenti si abbonano a delle pagine...

 * Gli utenti possono scegliere a quali eventi sono interessati. Questo si applica sia al metodo di notifica via email che attraverso Jabber.

 * Il bot Jabber consente di eseguire semplici operazioni su un wiki all'interno del proprio client di messaggistica istantanea (possibilmente in risposta alle notifiche ricevute). In questo modo è possibile ricevere il contenuto della pagina come testo grezzo o come HTML, ricevere informazioni dettagliate sulle pagine (autore, revisione, data della modifica...), recuperare l'elenco delle pagine, eseguire ricerche e ripristinare vecchie versioni.

 * Il bot utilizza le estensioni "Data Forms" (XEP-004) e "Out of Band Data" (XEP-066) se supportate dal client per estendere ulteriormente le opzioni di comunicazione disponibili.

== Problemi noti con il bot Jabber ==

=== È necessaria una versione recente di pyxmpp, la 1.0 non funziona ===

Usare una versione recente oppure recuperarla direttamente da SVN:
{{{
svn checkout http://pyxmpp.jajcus.net/svn/pyxmpp/trunk pyxmpp
}}}

Aggiungere la directory `pyxmpp` a PYTHONPATH o eseguire un'installazione completa come descritto [[http://pyxmpp.jajcus.net/ |qui]]:
{{{
To build the package just invoke:
python setup.py build

To install it:
python setup.py install
}}}

Se si dispone di una vecchia versione di PyXMPP, è meglio disintallarla (cancellare le sotto-directory di pyxmpp subdirectory dalla directory site-packages) prima di installare quella nuova o potrebbe non funzionare correttamente.
{{{
You may also try:
make

and:
make install
}}}

=== Limiti del traffico ===

I server Jabber hanno solitamente dei limiti abbastanza bassi sui dati inviati. Se il proprio sito genere una grande quantità di traffico, il bot di notifica potrebbe diventare instabile o non utilizzabile. Nel caso si verifichi ciò, è utile prendere in considerazione l'esecuzione del proprio server Jabber/XMPP con dei limiti più elevati.

=== Internazionalizzazione ===

Affinché l'internazionalizzazione funzioni, il wiki deve essere accessibile quando il bot di notifica viene avviato.

== Impostare un bot Jabber ==

Queste solo le istruzioni passo-passo da eseguire per avere un bot Jabber di notifica funzionante:

 0. Installare una versione aggiornata (>1.0) di [[http://pyxmpp.jajcus.net/|pyxmpp]].
 0. Il bot Jabber è situato in una directory `jabberbot/` nell'archivio di !MoinMoin. Copiarlo in una posizione adatta e assicurarsi che la variabile d'ambiente `PYTHONPATH` contenga la directory contenente il jabberbot.
 0. Creare un account Jabber per il bot usando un qualsiasi client Jabber/XMPP. Attualmente non è possibile registrare automaticamente l'account.
 0. Modificare il file di configurazione del bot, `config.py`, e impostare i dettagli e '''un segreto da usare per la comunicazione col wiki'''.
 0. Modificare la configurazione del wiki e aggiungere le opzioni `notification_bot_uri` e `secret`. È possibile trovaer un esempio nel file `wiki/config/more_samples/jabber_wikiconfig_snippet` distribuito con !MoinMoin. Assicurarsi che il '''segreto''' sia esattamente lo stesso usato nella configurazione del bot.
 1. Avviare/riavviare il wiki.
 1. Avviare il bot: `python main.py`

== Opzioni di notifica ==

Quando è presente l'opzione `notification_bot_uri` all'interno della configurazione del proprio wiki, le nuove opzioni sono disponibili all'interno delle preferenze dell'utente.

Assicurarsi di impostare il proprio ID di Jabber nelle preferenze.

Un elenco a scelta multipla consente di selezionare per quali eventi ricevere le notifiche e due nuove caselle di selezione consentono di specificare se le notifiche devono essere inviate via email, attraverso il bot o con entrambi i metodi.