update README

This commit is contained in:
2021-04-28 12:23:11 +02:00
parent f9c04b7411
commit 10303aa908

View File

@@ -6,7 +6,46 @@ Diese Sammlung an Skripten kann die meisten Dinge die man so für einen FSR brau
How to configure
----------------
In `generator.conf` die Dateipfade überprüfen, ausserdem für jeden FSR die Werte r Redeleitung und Protokoll anpassen. Wenn die `read_*`-Skripte genutzt werden sollen müssen dort auf Werte angepasst werden.
Die Hauptkonfiguration steht in `generator.conf`. Die `.example`-Datei im Repo sollte sinnvolle Standartwerte für den (digitalen) FSR haben, geändert werden muss insbesondere die E-Mail der Redeleitung (wird für den From-Header genutzt) und der Meeting-Link. Falls die Mattermostintegration genutzt werden soll muss ausserdem die `mm_url` auf einen Mattermost-Hook gesetzt werdnen.
Die `read_*mail`-Skripte haben ausserdem Konfigurationskonstanten, hauptsächlich für den Pfad zur Mailbox, die geändert werden müssen bevor man diese benutzen kann.
Bestandteile
------------
`generate.py`
+++++++++++++
Das Herzstück der Skriptsammlung. Liest Daten aus `generator.conf` sowie den darin angegebenen Dateien und erzeugt den Einladungstext (für E-Mail oder Mattermost), die LaTeX-Datei für die Präsentation und eine Protokollvorlage.
Standardmäßig wird das Ergebnis nach STDOUT geschrieben, es gibt aber auch Optionen das Ganze in eine mbox-Datei zu speichern oder direkt mit sendmail zu verschicken.
`read_db.sh`
++++++++++++
Dieses Skript verbindet sich mit der FSMI-Datenbank und liest die unveröffentlichen Protokolle aus um folgende Dinge zu extrahieren und in Dateien unter `data/` zu speichern:
- Liste der unveröffentlichten Protokolle
- Datum des letzten FSRs (für `read_topmails.py`)
- nächste Redeleitung
- nächster Protokollant
Um es zu nutzen ist es erforderlich dass du
- ein Passwort für postgres `gesetzt <https://www.fsmi.uni-karlsruhe.de/Fachschaft/Personen/ExtraPasswoerter.html>`_ hast
- entweder das Skript auf einem FS-Rechner ausführst oder eine SSH-Config für `fsmi-login.fsmi.uni-karlsruhe.de` eingerichtet hast (Benutzername und SSH-Key)
- die passenden Rechte auf die DB hast (sollten alle haben)
`read_ubmails.py`
+++++++++++++++++
Dieses Skript durchsucht ein Maildir nach der neusten E-Mail mit dem Betreff "Unbeantwortete Mails" und schreibt den Inhalt dieser in eine Datei.
`read_topmails.py`
++++++++++++++++++
Dieses Skript liest alle E-Mails aus einem Maildir deren `List-Id` auf `top.fsmi.uni-karlsruhe.de` gesetzt ist und die nach dem letzten FSR (gelesen aus `data/last_date`) gesendet wurden. Geschrieben wird als mbox in das `top_mbox_file` aus `generator.conf`.
How to use
----------
@@ -14,28 +53,34 @@ How to use
Immer
+++++
Die aktuelle TOP-Mails raussuchen und in eine mbox schreiben deren Pfad in `generator.conf` angegeben ist.
Die aktuelle TOP-Mails raussuchen und in eine mbox schreiben deren Pfad in `generator.conf` angegeben ist. Alternativ `read_topmails.py` ausführen.
Entweder die richtige Redeleitung und Protokollant raussuchen und in die `generator.conf` schreiben oder `read_db.sh` ausführen.
Einladung
+++++++++
Wenn du die E-Mail manuell versenden (und evtl. signieren) möchtest:
`./generate.py --invite --write-mbox`
Die mbox im Mailclient öffnen, die neuste Nachricht auswählen, "als neu bearbeiten", absenden.
Wenn du die E-Mail direkt versenden möchtest (und sendmail konfiguriert hast):
`./generate.py --invite --send-mail`
Präsentation
++++++++++++
`./prepare-presentation.sh`
Entweder manuell die letzte "Unbeantwortete Mails" E-Mail raussuchen und in die konfigurierte Datei schreiben oder `read_ubmails.py` ausführen.
Jetzt liegt unter `data/presentation_[date].tex` eine LaTeX-Beamer-Präsentation. Im idealfall kann man die direkt mit pdflatex o.ä. kompilieren und hat dann eine fertige Präsentation, oft muss man aber die LaTeX-Datei manuell anpassen.
`./generate.py --presentation > whatever.tex`
`pdflatex whatever.tex`
Alternativ gibt es `prepare_presentation.sh` welches die Hilfsskripte ausführt, die Präsentation erzeugt, kompiliert und einen Symlink zum PDF anlegt.
Protokoll
+++++++++
`./read_ubmails.py`
`./read_uvproto.sh`
`./generate.py --protocol > somewhere`
Analog Präsentation, aber mit `--protocol`