Notification par courriel

administrateurs (basique)

Depuis PmWiki 2.1.7, la fonctionalité de notification par courriel est en passe d'être remplacé par un script notify.php plus avancé. Voir Notify pour les détails.
Cette page est obsolète, voir Notify pour la fonction actuelle.

Le script mailposts.php permet à un administrateur de site de configurer PmWiki pour envoyer des messages email à chaque fois que des pages changent sur le site. L'envoi de courriel peut être configuré pour que de multiples changements de page sur une courte période de temps puissent être combinés en un seul message email (pour éviter d'encombrer la boîte à mails).

L'envoi de courriel est spécialement utile pour les sites dont les mises à jour sont peu fréquentes, éliminant la nécessité de vérifier fréquemment les ChangementsRécents? juste pour voir si quelque chose à changé.

Tous les détails de configuration sont disponibles dans scripts/mailposts.php, mais voici un rapide synopsis de ce dont vous avez besoin de mettre dans config.php ou dans un script de PersonnalisationParGroupe pour l'envoi de courriels:

 $EnableMailPosts=1;                   # active mailposts
 $MailPostsTo="somebody@example.com";  # où envoyer les emails de notifications
 $MailPostsDelay=1800;                 # Attente de 30 mn avant le premier envoie
 $MailPostsSquelch=7200;               # Durée minimale de 2 h entre chaque email

Notez que $MailPostsTo peut être une liste d'adresses séparées par des virgules si vous désirez avoir plusieurs destinataires.

Parce qu'un envoi initial est souvent suivi de plusieurs autres contenant des modifications mineures, il est utile d'attendre une courte période de temps avant d'envoyer un email. $MailPostsDelay est la durée minimale qui doit s'écouler entre l'envoi initial et le départ du message email. Toutes les modifications additionnelles survenant durant la durée du délais sont incluses lorsque le message est envoyé. Le message est envoyé à la première exécution de pmwiki.php après la durée du délais expiré (qui pour des sites inactifs peut être bien plus longue que la durée du délais même). Un délais de zéro signifie l'envoi immédiat d'un message dès qu'une mise à jour est reçue.

$MailPostsSquelch spécifie la durée minimale qui doit s'écouler avant d'envoyer un autre mail d'avertissement. C'est utile pour éviter à un grand nombre d'emails de se succéder rapidement si $MailPostsDelay est paramétrée avec une petite valeur.

Par défaut $MailPostsDelay et $MailPostsSquelch sont réglées respectivement à 0 et 7200. Avec ces valeurs, un email est envoyé dès qu'une page change, et les changements suivants sont "contenus" pour au moins deux heures avant d'être envoyés dans un autre message.

Les variables utilisées pour contrôler l'envoi de courriel sont répertoriées ci-dessous et sont également décrites dans le script mailposts.php.

Note pour les installations Windows

Les sites utilisant PHP sous Windows n'ont probablement pas la fonction PHP mail configurée correctement. De tels sites doivent ajouter un ligne comme

    ini_set('SMTP','smtp.server.com');

dans config.php, où smtp.server.com est le nom de vote serveur courant pour le courrier sortant.

Les variables pour l'envoi d'email

<< Autres variables | Variables | >>

$EnableMailPosts
Indique à stdconfig.php d'activer le script d'envoi d'email.
        $EnableMailPosts = 1;          # active l'envoi d'email
        $EnableMailPosts = 0;          # désactive l'envoi d'email 
$MailPostsTo
Liste des adresses de courriel des destinataires (séparées par des virgules).
        $MailPostsTo = 'admin@example.com, joe@somewhere.org';
$MailPostsFrom
L'adresse de retour à utiliser dans l'email envoyé.
        $MailPostsFrom = 'wiki@example.com';
        $MailPostsFrom = 'Wiki server <wiki@example.com>';
$MailPostsDelay
La durée (en secondes) d'attente avant l'envoi d'un email après la première modification sur le site. Par défaut à zéro - l'envoi part dès que le délais $MailPostsSquelch est expiré.
        $MailPostsDelay = 360;    # envoie un mail  +6 min après le premier "post"
$MailPostsSquelch
La durée minimale (en seconde) qui doit s'écouler entre les envois de message email. Très utile lorsque la valeur de $MailPostsDelay est petite pour conserver un faible nombre de messages d'avertissement. Par défaut à 7200 (deux heures).
        $MailPostsDelay = 43200;  # attente de +12 heures entre chaque envoi d'email.
$MailPostsItemFmt
Le texte à envoyer pour chaque changement. La chaîne "$PostTime" est substitué avec la date de l'envoi de la modification (contrôlée par $MailPostsTimeFmt ci-dessous)
        # Par défaut
        $MailPostsItemFmt = ' * $PageName . . . $PostTime by $Author';
        # inclue l'adresse URL de la page dans le message
        $MailPostsItemFmt =
          " * \$PageName . . . \$PostTime by \$Author\n     \$PageUrl";
$MailPostsTimeFmt
Le format pour les dates/heures dans $PostTime ci-dessus. Par défaut fixée à la valeur de $TimeFmt.
        $MailPostsTimeFmt = 'm-H:%M';  # 2004-03-20 17:44
$MailPostsMessage
Le corps du message à envoyer. La chaîne "$MailPostsList" est remplacée par la listes des modifications (formatées par $MailPostsItemFmt ci-dessus).
$MailPostsSubject
La ligne du sujet pour le mail à envoyer.
$MailPostsHeaders
Chaîne pour les en-tête de mail (headers) supplémentaires à passer à la fonction mail().
$MailPostsFunction
Nom de la fonction à appeler pour envoyer les emails. Par défaut configurée pour utiliser la fonction interne mail() de PHP, cependant certains systèmes peuvent ne pas être configuré correctement. Peut-être paramétrée à 'MailPostsSendmail' pour appeler explicitement /usr/lib/sendmail.
        # Appel direct à  /usr/lib/sendmail au lieu d'utiliser mail()
        $MailPostsFunction = 'MailPostsSendmail';
$MailPostsFile
Le fichier temporaire pour conserver l'information des changements récents. Par défaut fixée à "$WikiDir/.mailposts". Notez que ce fichier doit être accessible en écriture par le processus du serveur web.

<< | Index doc admin | >>


Page originale sur PmWikiFr.MailPosts - Référencé par
Dernières modifications:
PmWikiFr.MailPosts: 10 septembre 2011 à 17h40