#########################################
#  CPSWebMail - Documentation technique #
#########################################

#########################
# Utilisation du module #
#########################

CPSWebmail est un outil permettant aux utilisateurs du portail de consulter
et grer leurs mails. Cette interface de consultation d'un serveur de mails
utilise les protocoles IMAP et SMTP.

########################
# Historique du module #
########################

Le produit CPSWebMail provient de la fusion de deux produits :
- le produit WebMail, dvelopp par l'Universit de Savoie, France
  (http://www.univ-savoie.fr) : ce produit fournit le moteur du webmail; car
  il gre la communication avec le serveur de mail via un serveur IMAP.
- le produit NuxWebMail, dvelopp par Nuxeo : ce produit fournit
  l'habillage de l'application (pages d'affichage) et les mthodes
  requises.
L'utilisation du produit NuxWebMail tait dpendante de l'utilisation du
produit WebMail.

CPSWebMail est une rcriture de NuxWebMail, qui ne fonctionne qu'avec
CPS3. Il reprend galement les lments du produit WebMail ncessaires au
fonctionnement de l'application.


#######################################
# Prrequis  l'utilisation du module #
#######################################

CPSWebmail ne peut fonctionner qu'avec des versions de CPS suprieures  CPS
3.1.0.
Il a t test avec Zope 2.6 et Zope 2.7, et les versions suivantes de
produits CPS:
- CPS-3.1.0, qui contient les produits suivants :
  - CMFCalendar (from CMF-1.4.3)
  - CMFCore (from CMF-1.4.3)
  - CMFDefault (from CMF-1.4.3)
  - CMFTopic (from CMF-1.4.3)
  - DCWorkflow (from CMF-1.4.3)
  - CPSCore (from CVS, tag: CPS-3_1_0)
  - CPSDefault (from CVS, tag: CPS-3_1_0)
  - CPSSchemas (from CVS, tag: CPS-3_1_0)
  - CPSDocument (from CVS, tag: CPS-3_1_0)
  - CPSDirectory (from CVS, tag: CPS-3_1_0)
  - CPSForum (from CVS, tag: CPS-3_1_0)
  - CPSInstaller (from CVS, tag: CPS-3_1_0)
  - TranslationService (from CVS, tag: CPS-3_1_0)
  - NuxUserGroups (from CVS, tag: CPS-3_1_0)
  - PortalTransforms (from CVS, tag: CPS-3_1_0)
  - PluggableUserFolder (from CVS, tag: CPS-3_1_0)
  - CPSCalendar (from CVS, tag: CPS-3_1_0)
  - CPSChat (from CVS, tag: CPS-3_1_0)
  - CPSSubscriptions (from CVS, tag: CPS-3_1_0)
  - CPSRSS (from CVS, tag: CPS-3_1_0)
  - CPSCollector (from CVS, tag: CPS-3_1_0)
  - Localizer-1.0.1.tgz
  - BTreeFolder2-1.0.tar.gz
  - Epoz-0.7.4.tar.gz
  - CPSSkins-cvs-2004-05-10.tgz
- LDAPUserGroupsFolder-2.5.0, pour pouvoir utiliser la fonctionnalit de
  redirection des mails.

################
# Installation #
################

Dcompresser l'archive contenant le module dans le rpertoire Products.
Renommer "CPSWebMail" le dossier obtenu.
Redmarrer Zope.
Le fichier README contenu dans le produit contient les informations
d'installation dans une instance de CPS.

#############################
# Fonctionnalits du module #
#############################

cf doc fonctionnelle CNCC.
Il n'existe pas beaucoup de fonctionnalits supplmentaires par rapport aux
fonctionnalits dcrites dans le document pour la CNCC.
La seule chose que l'on puisse ajouter est la possibilit de grer des listes
de diffusion personnelles.
Le fichier README contenu dans le produit prsente une description
exhaustive des fonctionnalits.

############################
# Fonctionnement du module #
############################

Diffrents objects sont manipuls. Les objets marqus d'une toile
proviennent du produit WebMail.
Le protocole IMAP respecte le standard RFC822.
- IMAPGateway* gre la passerelle de connection avec le serveur de mails.
- IMAPFolder* reprsente un dossier IMAP.
- IMAPMessage* reprsente un message IMAP.
- Attachment* reprsente un fichier joint  un message.
- IMAPProperties permet d'obtenir les paramtres de l'utilisateur pour la
  connection avec le serveur de mails.
- WebMailTool est l'outil de gestion du webmail.
- WebMailSession gre les sessions : l'application utilise les sessions pour
  conserver les donnes concernant un email en cours d'criture, ou les
  rsultats de recherche dans les carnets d'adresses, par exemple.
- Timeout*, TimeoutSocket*, TimeoutFile* grent les timeouts lors de la
  communication avec le serveur de mails.
- IMAP4* reprsente la connection avec le serveur IMAP.
- RFC822MessagesTools* possde des mthodes utilises pour dcoder le langage IMAP.
- mime_message* permet de parser des fichiers au format mime.

Les templates d'habillage et les scripts appels dans les formulaires sont
dans skins/cpswebmail_default/.
Les images sont dans skins/cpswebmail_images/.
Les traductions sont dans skins/i18n/.


#########################
# Redirection des mails #
#########################

Il est possible de grer la redirection des mails depuis l'interface de CPS
en utilisant une configuration particulire :
- Les utilisateurs du site doivent tre rfrencs dans un annuaire LDAP.
- L'annuaire LDAP doit suivre un schma particulier.
- Le serveur de mail doit tre qmail, patch  l'aide de qmail-ldap.
Pour plus d'information, voir le fichier notes_installation_qmail.txt dans
le rpertoire doc/ du produit CPSWebMail.

En pratique, les utilisateurs auront juste besoin de spcifier une adresse
mail de redirection, et un mode de distribution.
Le mode de distribution spcifie la faon dont les mls seront dlivrs 
l'utilisateur.
- No forward : les mls ne sont pas redirigs vers l'ventuelle adresse ml
  de redirection.
- Forward only : les mls sont uniquement redirigs vers l'adresse ml de
  redirection.
- Local : les mls sont transfrs vers l'ventuelle adresse ml de
  redirection, et une copie est conserve dans la bote mail locale.
