Syncom

Aus Piratenwiki
Wechseln zu: Navigation, Suche

Die AG Parteikommunikation dient der Pflege und Betreuung der Parteikommunikationsstruktur.

Personal

Verantwortliche

Jan Simons (Technik)

Nicole Hornung (Struktur)

Koordination

Ralf Kelzenberg

Technik

Michael Vogel (SynCom)

Moderatoren

Technik

Die synchronisierte Forum/Mailinglisten/Newsserver Struktur wird im folgenden SynCom genannt.

Mailinglisten

Die Bundes-IT verwendet Mailman, andere Landesverbände nutzen teilweise andere Software. Mailman besitzt eine eingebaute Synchronisation mit Newsservern. Diese hat allerdings zwei Nachteile:

  • Es findet per Standard ein Neuschreiben der Message-ID statt (was zur Zerstörung der Threads führt)
  • Beim Post von der Newsgroup zur Mailingliste bleiben Header-Informationen stehen, die verwirrend sein könnten

Es existieren Patches für diese Fälle:

Weitere Tests finden mit den Scripten "mailpost" und "news2mail" statt, die bei INN dabei sind. Diese arbeiten über einen speziellen Mailaccount. Dieser Account wird bei den Listen als User eingetragen. Wenn eine Mail ankommt, wird sie per Procmail durch mehrere Scripte geschickt.

  • Das erste entfernt alle überflüssigen Header (Path-Angaben etc.).
  • Der nächste schreibt den Subject um (er entfernt die typischen Listenmarkierungen).
  • Das letzte Script entfernt die typischen Mailinglistenfooter. Im Moment ist das letzte Script ebenfalls so eingestellt, dass es automatisch ToFu entfernt und Kammquoting glättet. Dies geschieht aus Testgründen, da ich diese Konvertierung für die Forenübergabe nutzen möchte. Da sie aber eine Veränderung des Inhalts darstellt, würde sie Signaturen brechen. (Allerdings bricht das Hinzufügen und Entfernen des Mailinglistenfooters ebenfalls Signaturen, wenn sie per MIME durchgeführt wurden).

Die zweite Möglichkeit bietet zwar mehr Einflußmöglichkeiten - wie auch ein X-No-Archive:Yes - jedoch bedeutet dies für den jeweiligen Listenadmin, dass er seine Liste für jeden Poster öffnen muss oder mehr Moderationsaufwand hat.

Newsserver

Als Newsserver wird INN2 verwendet. Um Zugang zum Newsserver news.piratenpartei.de zu erlangen, muss ein Account auf dem Testforum unter http://news.piratenpartei.de angelegt werden. Es wird darüber nachgedacht, die Prüfung auch über das Wiki durchzuführen, auch Single-Sign-On-Lösungen (z.B. über LDAP) sind im Gespräch.

Findet ein Post auf dem Newsserver statt, so wird direkt per Script das Posten ins Forum durchgeführt.

Da sich im Endzustand Newsserver und Forum nicht auf einem System befinden werden, findet die Kommunikation dazwischen per SOAP statt. Die folgenden Dinge müssen per SOAP möglich sein:

  • Überprüfung der Anmeldedaten
  • Schreiben von Beiträgen
  • Übersicht der zur Verfügung stehenden Gruppen (Wird benötigt, wenn wir flexible Gruppenstrukturen haben möchten)

Da die Anmeldung und das Schreiben von Beiträgen getrennte Prozesse sind, beim Schreiben aber die Berechtigungen geprüft werden müssen, stellt sich die Herausforderung, wie die Anmeldedaten zwischen den Prozessen transportiert werden können. Vorschlag:

  • Beim Anmelden wird per Login eine Session-ID erzeugt. Diese Session-ID wird auf dem Newsserver (SOAP-Client) zusammen mit der User-ID gespeichert.
  • Beim Post wird geschaut, ob zur User-ID (diese wird im "Sender"-Header übertragen) eine Session-ID vorhanden ist. Ist dieses der Fall, wird mit Hilfe dieser ID der SOAP-Befehl zum Schreiben des Beitrags durchgeführt.
  • Um Missbrauch zu vermeiden, wird auf der Foren-Seite (SOAP-Server) geprüft, ob die IP-Adresse mit der IP-Adresse der Anmeldung übereinstimmt.

Wenn kein Sender-Header im Artikel existiert (da der Beitrag per Mailingliste erzeugt wurde), meldet sich der Client mit einer speziellen ID per SOAP am Forum an. Unter dieser ID gibt es ein Schreibrecht auf die allgemeinen Gruppen. Beiträge, die so entstanden sind, werden im Forum so markiert, dass erkennbar ist, dass sie von einem nicht angemeldetem User stammen. (phpBB stellt entsprechende Funktionalitäten zur Verfügung) Damit kein Missbrauch stattfinden kann, wird nur diese spezielle User-ID auf dem SOAP-Server für diese Möglichkeit freigeschaltet.

Forum

Es wird phpBB verwendet. Dieses wird um Funktionalitäten erweitert:

  • SOAP-API für das Login und das Schreiben von Nachrichten (Erledigt)
  • Zusätzliches Feld in der Artikel-Tabelle für die Message-ID (Erledigt)
  • Zusätzliches Feld in der Artikel-Tabelle für die Artikel-ID, auf die sich dieser Beitrag bezieht. Dazu wird das Forum so erweitert, dass es neben dem Quote-Button auch immer einen Reply-Button neben jedem Beitrag geben wird. Wird die Nachricht auf diesem Weg beantwortet, wird die ID im Beitrag vermerkt. (Funktionalität ist erledigt, Optik muss angepasst werden)
  • In die Funktionen zum Schreiben, Ändern und Löschen von Beiträgen wird ein Hook auf entsprechende Syncfunktionen eingebaut (Erledigt)
  • Zusätzliche Felder im Benutzerprofil für den Namen und die Mailadresse die beim Syncen zur Newsgroup erscheinen sollen. (Erledigt)

SynCom

Allgemeines

Das Forum unter http://news.piratenpartei.de soll das Piratenforum unter http://forum.piratenpartei.de nicht ersetzen. Es dient vielmehr dazu, die Synchronisationssoftware zu testen und die Akzeptanz zu prüfen. Wenn der Testlauf zufriedenstellend verlaufen ist, soll die Programmierung auf das Bundesforum übertragen werden. Das Testforum bleibt u.U. weiter bestehen, damit neue Anpassungen in Ruhe entwickelt und getestet werden können.

Voraussetzung für den Sync von Mailinglisten mit Newsgroups

Damit eine bestehende Mailingliste mit dem Newsserver und Forum synchronisiert wird, müssen bestimmte Voraussetzungen erfüllt sein:

  • Es sollte im Vorfeld eine offene Diskussion auf der Liste durchgeführt werden
  • Anhand des Meinungsbildes der Liste sollte sich ein eindeutiges Bild pro Sync ergeben
  • Falls das Meinungsbild nicht komplett einstimmig ist, sollte der Listenadmin entscheiden, ob er Rücksprache mit dem jeweiligen Vorstand (bei Landeslisten der Landesvorstand) hält
  • Wenn die Entscheidung für den Sync gefallen ist, sollte der Admin darauf deutlich hinweisen. d.h, einmal per Nachricht auf der Liste, sowie an den entsprechenden Stellen in den Listeninformationen

Fähigkeiten

  • Sync zwischen Newsserver und Forum
  • Löschen und Ändern wird beidseitig synchronisiert
  • X-No-Archive (in Header oder erster Zeile) verhindert Sync mit Forum
  • Thread-Zuordnung per Subject-Vergleich bei Mails von Mailreadern ohne References

Richtlinien zur Programmierung

Der SOAP-Server wird in klassenorientiertem PHP5 geschrieben. Es gelten die allgemeinen Richtlinien, d.h.:

  • Jede Variable wird initialisiert
  • Eine Funktion wird in viele Einzelfunktionen aufgesplittet statt am Ende Mammutfunktionen von mehreren hundert Zeilen zu erhalten
  • Bei ähnlichen Aufgaben wird nicht einfach der Code kopiert sondern geschaut, wie der vorhandene Code von allen Stellen aus nutzbar gemacht werden kann

Die SOAP-Clients zum Anmelden und Schreiben von Nachrichten können in einer anderen Sprache (z.B. Perl) geschrieben werden, wenn sich jemand findet, der sich damit auskennt. Ansonsten werden diese Scripte auch in PHP erstellt.

Zeitplan

Der Zeitplan sieht wie folgt aus:

  • Aufbau des Newsservers (erfolgt)
  • Synchronisieren einiger Mailinglisten (erfolgt)
  • Aufbau des Testforums (erfolgt)
  • Erstellen der API (bei der Arbeit)
  • Anpassung des Forums (bei der Arbeit)

Sind diese Schritte erfolgt, geht es weiter:

  • Einseitige Synchronisierung einzelner Gruppen mit dem Testforum (Nur der Weg Gruppe->Forum) (erfolgt)
  • Beidseitiger Sync auf dem Testforum mit Testgruppen (erfolgt)
  • Beidseitiger Sync auf dem Testforum mit einigen echten Gruppen (erfolgt)
  • Implementation der Anpassungen auf dem Echtserver
  • Beidseitiger Sync auf dem Echtforum mit wenigen echten Gruppen (am Besten Low-Traffic)
  • Beidseitiger Sync auf dem Echtforum mit allen dafür vorgesehenen Gruppen

To-Do

  • Smileys machen doppelte Leerzeichen vor und nach dem Smiley
  • Wandlung Text->BBCode wird komplett überarbeitet (u.A. mit besserer ToFu-Erkennung)
  • Der Reply-Button, der die Threads erhält, erhält ein eigenes Icon
  • Anhänge müssen synchronisiert werden
  • Differenzierte Anmeldung am Newsserver (d.h. Benutzergruppen etc.)
  • Post-Funktionalität per SOAP auslagern, damit eventuelle Fehler nicht zum Abbruch des Forenposts führen
  • Cache für Login-Prozess, damit man sich auch während eines Forenausfalls am Newsserver anmelden kann

Offene Fragen

  • Was soll bei Moderation geschehen? Das multiple Versenden von Cancel- und Supersede-Nachrichten könnte insbesondere Mailinglisten-User massiv stören. Statt eines Supersede bei einer Weiterleitung in eine andere Gruppe könnte ein Artikel gepostet werden, der einen gewissen Hinweistext enthält und ein follow up auf die neue Gruppe enthält. Ähnliches könnte beim Schließen eines Threads geschehen.

Sichtbarkeit

  • Information: Sichtbar für alle
  • Organisation: Sichtbar für angemeldete Benutzer
  • Diskussion: Sichtbar für angemeldete Benutzer
  • Meta: Sichtbar für alle

Haltezeiten

  • Information: 3 Monate
  • Organisation: 6 Monate
  • Diskussion: 12 Monate (danach Archiv für weitere 24 Monate)
  • Meta: 6 Monate

Note: Einzelne Unterforen können abweichen

Moderation

Im Testing:

  • Verschieben von Topics

Kompatibilität

Im Testing:

  • Interoperabilität von Quotings (Forenquotes Newsquotes)

Richtlinien

Moderation

Kommunikation

Tools

PirateParrot

Strukturierung

Folgende Strukturierung von SynCom soll helfen, dass jedes Parteimitglied, aber auch interessierte Externe mit möglichst wenig Zeitaufwand an die Informationen kommen die sie erhalten wollen.

Organisation

Hierbei handelt es sich nur um Organisation, keine Information oder Diskussionen über politische Themen.

  • Organisation Bund (Parteiweite Aktionen)
  • Organisation Landesverband X (Bayern Brandenburg, . . .)
  • Organisation Arbeitsgebiet Y (Technik, Presse, Werbung, . . .)

Organisationsthemen müssen nur kurze Zeit gespeichert werden, da sie meistens nur einen aktuellen Bezug haben. Organisationskategorien können, müssen aber nicht geschlossen sein.

Information

Hierbei handelt es sich nur um Information, keine Organisation oder Diskussionen jeglicher Themen. Diese Strukturen sind für Menschen gedacht, die nur wenig Zeit haben und sich nur informieren wollen. Deswegen keine Diskussionen in der Struktur in der die Informationen verschwinden könnten. Wer diskutieren will, kann ein Thema verlinken und es an anderer Stelle diskutieren.

  • Ankuendigungen (Mitteilungen von der Parteileitung, enthält auch den Mailverteiler)
  • Politisches Tagesgeschehen (Posts ala: Schaut mal hier http:://link.de )
  • Allgemeines Tagesgeschehen

Informationsthemen müssen nur kurze Zeit gespeichert werden, da sie meistens nur einen aktuellen Bezug haben. Postings dieser Kategorie können auch sehr gut als RSS-Feed exportiert werden und stellen somit eine weitere gute Möglichkeit dar Interessierte zu informieren. Informationskategorien sollten nicht geschlossen sein, da die Informationen für jeden relevant sein können. Eine Indizierung durch Suchmaschinen ist hier unkritisch, solange anonyme Accounts zur Verfügung stehen.

Diskussion

Diskussion von politischen Themen. Hier wird diskutiert. Ziel einer jeden Diskussion sollte sein einen Wiki Eintrag mit Pro und Contra Argumenten zu erstellen.

  • Themenlisten
    • Unterthemenlisten

Diskussionsinhalte sollten längere Zeit gespeichert werden, da der Inhalt einer Diskussion auch für spätere Zeit relevant bleibt. Da Inhalte dieser Kategorie kritisch sein können, sollten diese Kategorien geschlossen bleiben und nur registrierten Benutzern zur Verfügung stehen um die Indizierung durch Suchmaschinen zu verhindern.

Meta

Strukturen die sich nirgends anders einordnen lassen können.

  • Hilfe (gesuche nach Hilfe, evtl nicht notwendig)
  • Neue (wo neue Interessenten Fragen stellen koennen usw)
  • Kommunikation mit Externen (NGOs, Piratenpartei International . . .)

Wichtig ist es eine Struktur zu vermeiden ähnlich der "aktiven Liste" oder dem "allgemeines Forum", die bevorzugt von allen genutzt wird da dort angeblich am meisten Leute erreicht werden, ohne das eine Strukturierung der Postings stattfindet.

Konkrete Strukturierung

Einträge in [Klammern] sind keine Strukturen an die man posten kann sondern nur Kategorien, selbiges gilt für Newsgroup-Namen, die auf * enden. Die Unterstrukturierung bei Niedersachsen ist ein Beispiel, wie weitere regionale Listen eingebunden werden könnten.

Forum Newsserver Lesen/Schreiben Haltezeit
[Organisation]
pirates.de.orga.*
Bundesvorstand
pirates.de.orga.vorstand Piraten/Vorstand 6 Monate
Bundesweite Aktionen
pirates.de.orga.aktionen Angemeldete 6 Monate
[AGs]
pirates.de.orga.ag.*
[AG Öffentlichkeitsarbeit]
pirates.de.orga.ag.oeffentlichkeit.*
AG Online
pirates.de.orga.ag.oeffentlichkeit.online Angemeldete/Piraten 6 Monate
AG Offline
pirates.de.orga.ag.oeffentlichkeit.offline Angemeldete/Piraten 6 Monate
AG Kommunikation
pirates.de.orga.ag.oeffentlichkeit.kommunikation Angemeldete/Piraten 6 Monate
AG Piratenidentität
pirates.de.orga.ag.oeffentlichkeit.piratenidentitaet Angemeldete/Piraten 6 Monate
AG Pressearbeit
pirates.de.orga.ag.oeffentlichkeit.presse Angemeldete/Piraten 6 Monate
AG Webseite
pirates.de.orga.ag.oeffentlichkeit.webseite Angemeldete/Piraten 6 Monate
AG AV Produktion
pirates.de.orga.ag.oeffentlichkeit.audio+video Angemeldete/Piraten 6 Monate
AG 2X
pirates.de.orga.ag.oeffentlichkeit.2x Angemeldete/Piraten 6 Monate
[Technik]
pirates.de.orga.ag.technik.*
Core-Admins
pirates.de.orga.ag.technik.core Piraten/Core Admins 3 Monate
SynCom
pirates.de.orga.ag.technik.syncom Angemeldete/Piraten 3 Monate
Website
pirates.de.orga.ag.technik.website Angemeldete/Piraten 3 Monate
Wiki
pirates.de.orga.ag.technik.wiki Angemeldete/Piraten 3 Monate
Umfragen
pirates.de.orga.ag.technik.umfragen Angemeldete/Piraten 3 Monate
[Information]
pirates.de.info.*
Ankündigungen
pirates.de.info.announce Jeder/Vorstand 3 Monate
Piraten-Pressespiegel
pirates.de.info.pressespiegel Jeder 3 Monate
Politisches Tagesgeschehen
pirates.de.info.politik Jeder 3 Monate
Technologie News
pirates.de.info.technologie Jeder 3 Monate
Anderes
pirates.de.info.misc Jeder 3 Monate
[Diskussion]
pirates.de.talk.*
[Politik]
pirates.de.talk.politik.*
Parteiprogramm
pirates.de.talk.politik.parteiprogramm Angemeldete 12 Monate (24 Monate Archiv)
Wahlprogramm
pirates.de.talk.politik.wahlprogramm Angemeldete 12 Monate (24 Monate Archiv)
[Kernthemen]
pirates.de.talk.politik.kernthemen.*
Bürgerrechte
pirates.de.talk.politik.kernthemen.buergerrechte Angemeldete 12 Monate (24 Monate Archiv)
Urheberrechte
pirates.de.talk.politik.kernthemen.urheberrecht Angemeldete 12 Monate (24 Monate Archiv)
Patentrechte
pirates.de.talk.politik.kernthemen.patenrecht Angemeldete 12 Monate (24 Monate Archiv)
Bildung
pirates.de.talk.politik.kernthemen.bildung Angemeldete 12 Monate (24 Monate Archiv)
Transparenz
pirates.de.talk.politik.kernthemen.tranzparenz Angemeldete 12 Monate (24 Monate Archiv)
[Andere Themen]
pirates.de.talk.politik.etc.*
Wirtschaft
pirates.de.talk.politik.etc.wirtschaft Angemeldete 12 Monate (24 Monate Archiv)
Sozialstaat
pirates.de.talk.politik.etc.sozialstaat Angemeldete 12 Monate (24 Monate Archiv)
Umwelt
pirates.de.talk.politik.etc.umwelt Angemeldete 12 Monate (24 Monate Archiv)
Aussenpolitk
pirates.de.talk.politik.etc.aussenpolitik Angemeldete 12 Monate (24 Monate Archiv)
Demokratisches System
pirates.de.talk.politik.etc.demokratie Angemeldete 12 Monate (24 Monate Archiv)
Sonstige Themen
pirates.de.talk.politik.etc.misc Angemeldete 12 Monate (24 Monate Archiv)
[Partei]
pirates.de.talk.partei.*
Personen
pirates.de.talk.partei.personen Angemeldete 6 Monate
Anderes
pirates.de.talk.partei.misc Angemeldete 12 Monate
[Meta]
pirates.de.etc.*
Inhaltliche Fragen an die Partei
pirates.de.etc.inhalt Jeder 12 Monate (24 Monate Archiv)
Strukturelle Fragen an die Partei
pirates.de.etc.struktur Jeder 12 Monate (24 Monate Archiv)
Hilfe
pirates.de.etc.help Jeder 3 Monate
[SynCom Verwaltung]
pirates.de.etc.syncom.*
Beschwerden
pirates.de.etc.syncom.complaints Angemeldete 3 Monate
Friedhof
Angemeldete 3 Tage

[Landesverbände]

pirates.de.region.*
Baden-Württemberg
pirates.de.region.bw Angemeldete 6 Monate
Bayern
pirates.de.region.by Angemeldete 6 Monate
München
pirates.de.region.by.muc Angemeldete 6 Monate
...
pirates.de.region.by.* Angemeldete 6 Monate
Berlin
pirates.de.region.be Angemeldete 6 Monate
Brandenburg
pirates.de.region.br Angemeldete 6 Monate
Bremen
pirates.de.region.hb Angemeldete 6 Monate
Mecklenburg-Vorpommern
pirates.de.region.mv Angemeldete 6 Monate
Niedersachsen
pirates.de.region.ni.misc Angemeldete 6 Monate
pirates.de.region.ni.braunschweig Angemeldete 6 Monate
pirates.de.region.ni.osnabrueck Angemeldete 6 Monate
...
Nordrhein-Westfalen
pirates.de.region.nw Angemeldete 6 Monate
Hamburg
pirates.de.region.hh.misc Angemeldete 6 Monate
pirates.de.region.hh.ag.aktionen Angemeldete 6 Monate
...
Hessen
pirates.de.region.he Angemeldete 6 Monate
Rheinland-Pfalz
pirates.de.region.rp Angemeldete 6 Monate
Saarland
pirates.de.region.sl Angemeldete 6 Monate
Sachen
pirates.de.region.sn Angemeldete 6 Monate
Sachsen-Anhalt
pirates.de.region.st Angemeldete 6 Monate
Schleswig-Holstein
pirates.de.region.sh Angemeldete 6 Monate
Thüringen
pirates.de.region.th Angemeldete 6 Monate
Sonstige
pirates.de.region.misc Angemeldete 6 Monate