====== Mails und Mailinglisten ======
===== Ziel =====
Primärziel ist die Einführung einer eleganten OpenSource-Lösung für Mailinglisten mit Weboberfläche, die es erlaubt verschiedenen Nutzer:innen geschlossene und (teil-)öffentliche Mailinglisten zur Verfügung zu stellen. In erster Instanz sollen die Domain jusos.info den Dienst für Juso-Gliederungen bereitstellen.
==== Anforderungskatalog ====
* **Mails**
* es werden Text- und HTML-Mails unterstützt
* es gibt die Möglichkeit für ein geschlossenes und (teil-)öffentliches Archiv je Mailingliste
* **Nutzer und Rechte**
* Admins sollen über die Weboberfläche Nutzeraccounts anlegen können
* Nutzer sollen sich auf der Weboberfläche einloggen können und ihre Mailinglisten verwalten können (Empfänger hinzufügen/entfernen + neue Mailinglisten anlegen/entfernen)sowie Mails an ihre Listen senden können
* Empfänger sollen Mails empfangen können
* **Arten von Listen**
* offene Liste (jeder kann empfangen, sich selbst hinzufügen und senden – auch ohne Mitglied auf der Liste zu sein)
* moderierte offene Liste (jeder kann empfangen, sich selbst hinzufügen, gesendete Nachrichten werden moderiert)
* geschlossene Liste (Empfänger werden aktiv hinzugefügt, nur Empfänger können senden)
* geschlossene moderierte Liste (Empfänger werden aktiv hinzugefügt, Nachrichten von Empfängern werden moderiert)
* geschlossene Liste mit offenem Empfang (Empfänger werden aktiv hinzugefügt, aber jeder kann die Liste anschreiben)
* **beispielhafte Anwendungsfälle**
* (teil-)öffentlicher Newsletter
* unbegrenzt viele Empfänger (Größenordnung bis 500.000)
* (teil-)öffentliches Archiv
* Empfänger fügen sich selbst hinzu oder werden hinzugefügt
* Vorstand
* jeder kann an die Liste senden (auch Empfang für Nachrichten von außen)
* Empfänger werden durch Listenverwalter verwaltet
* geschlossenes Archiv
* Delegation
* nur Listenteilnehmer können an die Liste senden
* Empfänger werden durch Listenverwalter verwaltet
* geschlossenes Archiv
===== Server =====
* Über hostsharing.net
* subdomain: lists.rote.tools, admin: opa02-mlmmj
===== Projektstand =====
* generelle Mailadressen können über die Angebote von Hostsharing realisiert werden: [[https://admin.hostsharing.net/| Admin-Interface]]
* in der dafür angelegten Subdomain: //lists.rote.tools// mit dem entsprechenden admin //opa02-mlmmj// kann ein Postfach definiert werden
* eine Mailingliste braucht ebenfalls einen entsprechenden Eintrag
* Mailinglisten wurden mit dem Dienst mlmmj realisiert [[https://wiki.hostsharing.net/index.php?title=Mlmmj|Wiki-Seite von mlmmj bei Hostsharing]]:
* Hierfür muss angelegt werden, dass mehrere Mailinglisten in einem Account und mit einer Admin-Oberfläche betrieben werden können. Dieses geschieht mit procmail (siehe [[https://wiki.hostsharing.net/index.php?title=Mlmmj|Wiki-Seite]])
* Regelmäßige Aufgaben des Listenmanagers müssen in crontab geschrieben werden (in grundlegender Ausführung bereits geschehen)
* Die folgenden Prozesse müssen automatisiert werden (in bash als User opa02-mlmmj):
* Anlegen eines Mailpostfaches bei Hostsharing (siehe oben)
* Anlegen der Mailingliste //listname// im Unterverzeichnis mlmmj:\\ mlmmj-make-ml -L listname -s /home/pacs/opa02/users/mlmmj/mlmmj
* Dann kommt ein Script, in dem die Domain (//lists.rote.tools//), der Betreiber der Liste (eine Mailadresse) und die Sprache der Liste (//de//) eingestellt werden müssen. Es ist nicht möglich, eine Liste nur mithilfe eines Befehls zu erstellen.
* Eintragung der Mailadresse //example@rotes.team// in in die Mailingsliste //listname//:\\ /usr/bin/mlmmj-sub -L /home/pacs/opa02/users/mlmmj/mlmmj/listname -a example@rotes.team -c
* das //-c// macht, dass die Mailadresse über die Aufnahme informiert wird, es gibt weitere Konfigurationsmöglichkeiten
* Es gibt wohl ein recht rudimentäres Webinterface für mlmmj. Nach diesem Ansatz der Automatisierung wäre das aber eher unnütz.
[[https://list.org/|GNU Mailman]] ist eine Alternative zu mlmmj, die im Grunde auch mächtiger und umfangreicher ist. Die zugehörige Dokumentation der gesamten [[https://docs.mailman3.org/en/latest/|Mailman Suite]] ist umfangreich und informativ gestaltet. GNU Mailman enthält bereits (u.a.)...
* Mailman Core -- mailing list manager core [Herzstück, Kern des Ganzen]
* Postorius -- Ein WebUserInterface
* Hyperkitty -- Einen WebArchiver,
deren einzelne Docs auch über die Startseite des obigen Links leicht auffindbar sind. Das Problem mit mailman3 ist aber, dass es sehr rechenintensiv und deswegen aufwendig zu betreiben ist. Womöglich ist es aber auch gar nicht möglich ist darum herum zu kommen, ab einer gewissen Projektgröße mailman zu benutzen. mailman2 ist definitiv tot, weil Python 2.7 jetzt tot ist.