promo­wiki

Doktorandenwiki der {iw,mi}

(deutsche Übersetzung der Seite MailPosts, Stand 2006-10-17

Nach Aussagen der aktuellen englishen Seite wurde mailposts ab der Version 2.1.7 durch notify ersetzt, welches eine bessere und umfangreichere Funktionalität hat. Dieses Script ist jedoch in allen aktuellen Versionen (bis 2.2.0) noch enthalten und kann weiterhin eingesetzt werden. --Stephan Schwarzbold? 17.10.2006 21:55 Uhr

Die Scripteinstellungen in der Datei mailposts.php macht es dem Administrator möglich PmWiki so zu konfigurieren, das es per E-Mail über Änderungen der Seite informiert. Dabei kann MailPosts so eingestellt werden, dass es mehere Seitenänderungen innerhalb kürzester Zeit in einer Mail zusammenfasst, damit das Zielpostfach nicht überläuft.

Durch die E-Mail-Benachrichtigung ist es (besonders bei unregelmäßig aktualisierten Seiten) nicht mehr notwendig regelmäßig die RecentChanges auf Änderungen auf der Seite zu überprüfen.

Alle Einstellungsparameter stehen in scripts/mailposts.php.
Folgende Einstellungen müssen jedoch in der config.php bzw. in dem jeweiligen Script der Gruppe eingetragen werden:

 $EnableMailPosts=1;                   # aktivieren von mailposts
 $MailPostsTo="mail@example.com";      # Zieladresse der Benachrichtigung 
 $MailPostsDelay=1800;                 # 30+ min Sendeverzögerung (in Sek.)
 $MailPostsSquelch=7200;               # mindestens 2+ Stunden zw. den Mails (in Sek.)

ERKLÄRUNGEN:

 $MailPostsTo

Für den Fall, dass die Benachrichtigung an mehrere Empfänger gesendet werden soll, müssen die Adressen mit Komma getrennt werden.

 $MailPostsDelay

Nach einem Posting ist es häufig der Fall, dass der Autor noch kleinere Korrekturen an seinem Text vornimmt. Deswegen ist es sinnvoll eine gewisse Zeit nach der letzten Änderung verstreichen zu lassen, bevor die Benachrichtigung gesendet wird.
Die variable $MailPostsDelay gibt also an, welche Zeit (in Sekunden) mindestens verstreichen muss, damit die Mail gesendet wird. Eine weitere Änderung in dieser Zeitspanne wird dieser Benachrichtigungsmail angehängt.
Dabei ist zu beachten, dass die Mail erst mit dem nächsten Aufruf der pmwiki.php nach verstreichen der Zeit versendet werden kann (bei selten besuchten Seiten kann demnach der Versand stark verzögert sein).
Eine Zeiteinstellung von Null(0) hat das sofortige versenden der Mail nach einer Änderung zur Folge.

$MailPostsSquelch Beschreibt die Mindestzeitspanne zwischen zwei Benachrichtigungsmails. Diese Variablen kann eingesetzt werden, damit bei geringer Wartezeit durch $MailPostsDelay und einer hohen Änderungsfrequenz, nicht unnötig viele Mails verschickt werden.

Die Standarteinstellungen für $MailPostsDelay und $MailPostsSquelch sind 0 und 7200. mit diesen Einstellungen wird über eine Seitenänderung sofort informiert, jedoch die zu erwartenden kleineren Änderungen werden gesammelt und nach 2h versendet.

Die einsetzbaren Variablen zur Beieinflussung von MailPosts stehen unten und in mailposts.php auf Englisch.

Wichtig für MS Windows Installationen

Oftmals sind die Mail-Funktionen von PHP-Engines auf Windowssystemen nicht korrekt konfiguriert. In diesen Fällen muss in die config.php folgende Zeile eingefügt werden:

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

Dabei ist smtp.server.com die Adresse des versendenden Mailservers.

MailPosts Variablen

<< Sonstige Variablen? | Variables | Funktionen in PmWiki >>

$EnableMailPosts
Ruft stdconfig.php auf, um das MailPosts Script abzuarbeiten.
        $EnableMailPosts = 1;          # aktiviert mailposts
        $EnableMailPosts = 0;          # daktiviert mailposts
$MailPostsTo
Eine durch Komma getrennte Liste der Mail-Empfänger.
        $MailPostsTo = 'admin@example.com, joe@somewhere.org';
$MailPostsFrom
Die Antwortadresse, welche in der Mail eingetragen wird.
        $MailPostsFrom = 'wiki@example.com';
        $MailPostsFrom = 'Wiki server <wiki@example.com>';
$MailPostsDelay
Die Zeitspanne (in Sekunden), welche gewartet wird, bis die Benachrichtungsmail gesendet wird. Dabei werden alle bis dahin vorgenommenen Änderungen angehängt. Voreinstellung ist Null(0)
Die Nachricht wird jedoch erst versendet, wenn $MailPostsSquelch ebenfalls abegelaufen ist.
        $MailPostsDelay = 360;    # sendet 6+ min nach dem ersten Posting
$MailPostsSquelch
Die Mindestzeitspanne (in Sekunden), welche vergehen muss, bevor die Nächste Benachrichtigung versendet wird. Dies kann eingesetzt werden um bei Änderung schnell informiert zu werden, ohne jedoch bei jeder darauffolgenden unbedeutenden Änderung ebenfalls informiert zu werden. Die Anfallenden Änderungen werden mit der Nächsten Mail versendet. Voreinstellung ist 7200 (2h).
        $MailPostsDelay = 43200;  # wartet 12+h zwischen zwei Mails
$MailPostsItemFmt
Der zu jeder Änderung gehörende, zu sendende Text. Die Variable "$PostTime" wird mit dem Datum und der Zeit des Postings ersetzt. (gesteuert von $MailPostsTimeFmt (unten)).
        # Voreinstellung:
        $MailPostsItemFmt = ' * $PageName . . . $PostTime by $Author';
        # Einfügen der URL (Adresse) in die Benachrichtigung:
        $MailPostsItemFmt = '$PageName . . . $PostTime von $Author $PageUrl';
$MailPostsTimeFmt
Das Datums- und Uhrzeitformat für $PostTime von oben. Die Voreinstellung ist die Formatierung von $TimeFmt.
        $MailPostsTimeFmt = 'm-H:%M';  # 2004-03-20 17:44
$MailPostsMessage
Der zu sendende Textkörper. Die Variable "$MailPostsList" wird ersetzt durch die Liste der Postings (welche durch $MailPostsItemFmt (oben) formatiert ist).
$MailPostsSubject
Die Betreffzeile der Mail.
$MailPostsHeaders
String für die extra einzufügende E-Mail-Header Zeilen für die mail()-Funktion von PHP.
$MailPostsFunction
Name der Funktion, die Aufgerufen werden soll um die Mail zu versenden. Als Voreinstellung wird die Standart-mail()-Funtion von PHP genutzt, jedoch ist diese nicht auf allen Systemen korrekt implementiert. Diese Variable kann auf 'MailPostsSendmail' gestellt werden. Diese Funktion liegt in: /usr/lib/sendmail. Der Aufruf lautet:
        # call /usr/lib/sendmail directly instead of using mail()
        $MailPostsFunction = 'MailPostsSendmail';
$MailPostsFile
Die Datei, in der MailPosts die Liste der erfolgten Änderungen ablegt. Standart ist: "$WikiDir/.mailposts".
Beachte, dass die Datei änderbar für Webserver-Prozesse sein muss.

Der Seitenaufbau ist noch nicht ganz glücklich und sollte evtl. nocheinmal überdacht werden. Die Seite ist auch nicht mit aktuellen Version der englischen Seite abgeglichen. Stephan Schwarzbold? 08.11.2005 09:17 Uhr

<< Problembehebung | Dokumentationsindex | Auffinden von vereinsamten und fehlenden Seiten >>