Das Postsystem
==============

    Im Mud gibt es auch die Moeglichkeit, anderen Spielern Post zu senden.
    Anders als bei der Bundespost sind aber weder Briefe noch Postkarten im
    Mud freimachungspflichtig.

    Man geht einfach in eine der Postfilialen und tippt 'post' oder 'mail', um
    in das Postmenue zu gelangen. Das Postmenue gibt auf 'h' (oder 'hilfe')
    eine kurze Hilfsseite mit einer Befehlsuebersicht.

    Die Befehle 'post' oder 'mail' verstehen folgende Optionen:
    -silent    Die im Ordner enthaltenen Mails werden nicht aufgelistet.
    -show <n>  Zeigt nur die letzten n Mails im Posteingang an. Wirkt nur
               beim Einstieg ins Postmenue, d.h. nicht beim Oeffnen anderer
               Ordner innerhalb des Postmenues. Bei mehrfacher Verwendung
               von -show <n> im selben Befehl wirkt immer nur der letzte.

    Gibt man als letztes Argument einen Spielernamen an, wird immer eine
    neue Mail an diesen Spieler erstellt, unabhaengig davon, welche Optionen
    sonst angegeben wurden.


 Inhaltsverzeichnis dieser Hilfsseite:

    1. Mail schreiben
    2. Mail nach und von ausserhalb des Muds
    3. Mailaliase
    4. Mail lesen, beantworten, loeschen und weitersenden - die anderen
       Menuepunkte im Postmenue
    5. Ordner (folders)
    6. Nachsendeauftraege (.forward)
    7. Paketpost
    8. Absender ignorieren

 1. Mail schreiben:
    Grundsaetzlich gibt es zwei Moeglichkeiten: Entweder innerhalb des
    Postmenues `m <name>', oder aber man ruft direkt mit `mail <name>' das
    Schreiben auf und landet dann nach Beendigung im Menue.

    Man wird zunaechst nach der Ueberschrift gefragt und gibt dann den Text
    ein. Die Eingabe verwendet einen einfachen Editor mit einigen
    rudimentaeren Editorfunktionen, eine eigene Hilfsseite ist mit `~h'
    abzufragen.
    Ueberlange Zeilen werden auf 78 Zeichen pro Zeile umgebrochen, man kann
    also getrost auch lange Texte am Stueck schreiben.

    Beendet wird die Eingabe mit `.' oder `**' (als eigene Zeile eingeben) und
    wird dann nach CC's gefragt. CC bedeutet `carbon copy', also Durchschlag.
    Man kann jetzt einen oder mehrere durch Komma oder Leerzeichen getrennte
    Namen angeben, an die der Brief zusaetzlich zum eigentlichen Empfaenger
    gesendet wird.

    Mail an mehrere Personen:
    Man kann gleich beim Aufruf mehrere Namen durch Komma oder Leerzeichen
    getrennt angeben, oder die anderen als cc. Auch eine Kombination ist
    erlaubt. Gibt man mehr als einen Namen als Empfaenger an, so gilt der
    erste als Empfaenger, die restlichen bekommen cc's.

    Blind Carbon Copies (BCC):
    Setzt man vor einen Namen ein `-', so wird der Brief auch an diese Adresse
    gesendet, aber die Adresse steht nicht im Verteiler.
    *Achtung:* Der eigentliche Empfaenger, also die erste angegebene Adresse,
    darf keine BCC sein.

 2. Mail nach und von ausserhalb
    
    a) Mail in andere Muds ((Inter-)Mudmail)
      Es ist moeglich, Mails in eine Reihe von anderen Muds zu schicken und
      welche von dort zu empfangen.
      Zum Empfangen muss man nix tun.
      Zum Versenden gibt man den Charnamen des Empfaenger gefolgt von einem @
      und dem Mudnamen des Empfaengers an, z.B. 'bla@unitopia'.

    b) Mail in den Rest des Internets
      
      Achtung: Politische Vorgaben und das Anwachsen von Spam haben zur
               Abschaltung dieser Funktionen gefuehrt.

 3. Mailaliase:
    Mailaliase koennen wie Namen verwendet werden. Es gibt eine Anzahl
    vordefinierter Aliase, eine Liste der Aliase bekommt man im Postmenue mit
    `a'.
    Magier haben die Moeglichkeit, sich eine Datei `.mailrc' in ihr
    Verzeichnis zu legen, die eigene Mailaliase enthaelt.

    Es gibt einige vordefinierte Mailaliase, die fuer alle gelten:

     * `me' sendet an diejenige Adresse, die man selber als Emailadresse
       angegeben hat. Das ist nuetzlich, wenn man Post an seinen eigenen
       account weiterschicken will.
     * `freunde' - das sind alle Deine Freunde, wie sie auf Deinem
       Freundschaftsband stehen (falls Du eins hast).
     * Rundschreiben an alle Mitarbeiter einer Region: Einfach `d.xyz' als
       Empfaenger angeben, wobei `xyz' natuerlich der Name der Region ist.
     * einige weitere Aliase wie `erzmagier', `polizei', `goetter', ... (siehe
       Liste mit `a') erleichtern es, den richtigen Ansprechpartner zu finden.
     * Einige Aliase sind eigentlich Nachsendeauftraege und werden bald
       verschwinden.

 4. Mail lesen und die anderen Menuepunkte im Postmenue

     Mail lesen:
        Einfach die Nummer des Briefes tippen, die man lesen will. Um den
        aktuellen Brief (das ist der, auf den der Pfeil zeigt) zu lesen, `.'
        tippen, fuer den naechsten `+' (praktisch zum Durchblaettern), `-'
        fuer den vorhergehenden.

     Mail loeschen:
        Alle Briefe werden gespeichert, bis man sie loescht. Als Argument
        Nummer angeben, ansonsten wird der Brief geloescht, auf den der Pfeil
        in der Liste zeigt.

        Listenargumente der Form [nr] [nr-nr] ... sind zulaessig.

        Beispiel: `d 18 12-14 2' loescht die Briefe Nummer 2,12,13,14,18.

     Mail beantworten, Gruppenantwort:
        Dasselbe wie `schreiben', nur dass der Empfaenger automatisch der
        Absender des beantworteten Briefes ist, und, ausser man gibt eine
        andere an, die Ueberschrift `Re: <Originalueberschrift>' lautet.

        Bei "Gruppenantwort" wird die Antwort ausserdem an alle Empfaenger von
        CC's des Originalbriefes verschickt.

        Ist eine `Reply-to:'-Zeile im Text enthalten, wird der Brief an die
        hier angegebene Adresse geschickt.

        *Achtung:* Auch in diesem Fall werden Mailaliase und ggf.
        Nachsendeauftraege ausgewertet!

     Mail weitersenden (forward):
        Der erhaltene Brief wird kopiert und an den neuen Empfaenger
        weitergeschickt. Bei `F' bzw. `Weiter' kann man ausserdem noch
        zusaetzlich eigenen Text anhaengen.

        Nur fuer `f' (also ohne zusaetzlichen Text) gilt: Wird eine Liste als
        Argument angegeben, so werden alle Briefe zu einem langen Brief
        zusammengehaengt und dieser weitergesendet.

 5. Zum Thema Ordner:
    Man kann Briefe, die man noch nicht loeschen will, in verschiedene Ordner
    (folders) sortieren. Solche Ordner muss man zunaechst anlegen, dann kann
    man die Briefe von einem zum anderen verschieben. Angezeigt werden
    natuerlich immer nur die Briefe des aktuellen Ordners. Um andere zu lesen,
    muss man zunaechst den Ordner wechseln.

    Beim Einstieg ins Postmenue schlaegt man zunaechst den Ordner `newmail'
    auf, in den alle ankommenden Briefe auch abgespeichert werden.

    Alle Befehle, die Ordnernamen als Argumente verlangen, akzeptieren auch
    `-' fuer den in der Liste vorhergehenden Ordner, `+' fuer den
    nachfolgenden und jede eindeutige Abkuerzung.

 6. Nachsendeauftraege
    Will man seine Post lieber an einen anderen Charakter ausgeliefert
    bekommen, so geht das auch. Hierzu muss man aber als Emailadresse den
    anderen Char in dieser Form angeben: 'neuer_empfaenger@morgengrauen' 
    (siehe auch Befehl 'email').

    Um einen solchen Nachsendeauftrag zu stellen, geht man zu irgendeinem
    Postamt mit Paketschalter. Genaueres erzaehlt der Postbeamte auf
    Nachfrage.

    Man sollte sich dieses aber gut ueberlegen: hat ein Charakter keine
    gueltige eMail-Adresse eingetragen, ist das Zuruecksetzen des Passwortes
    erheblich komplizierter oder sogar unmoeglich.

    Es ist NICHT moeglich, eine eMail-Adresse ausserhalb des Morgengrauens
    anzugeben.

 7. Paketpost
    Im MorgenGrauen gibt es eine Paketpost. Informationen erteilt der
    Postbeamte an jedem Paketschalter.

 8. Absender ignorieren
    Sollte man von einem bestimmten Absender ueberhaupt keine Post empfangen
    wollen, so kann dies durch "ignoriere name.mail" erreicht werden, wobei
    "name" natuerlich durch den konkreten Spielernamen zu ersetzen ist.

------------------------------------------------------------------------------

(c) 1993-1996 Morgengrauen Postverwaltung
Abteilung Technik, Loco (Abteilungsleiter)
Anregungen, Fehlermeldungen und Fragen bitte direkt an Loco,
Flames direkt nach /dev/null.

LETZTE AeNDERUNG:
   09.03.2020 Arathorn

