Auto-Reminder.page 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. # Autoreminder für FFDO Freifunktermine
  2. Hier wird Installation und Betrieb der remind Pythonroutine beschrieben, die 2 oder 4 Tage vor dem Termin eine Erinnerung an die FFDO Mailingliste(n) verschickt.
  3. # Systemvoraussetzungen und Installation
  4. - Installiertes Python3 (ist bei debian 10 buster und ubuntu 20.4 erfüllt)
  5. - Es wird das iCalendar python module benötigt
  6. sudo apt install python3, falls nicht vh
  7. sudo apt install python3-pip, falls nicht vh
  8. sudo python3 -m pip install icalendar
  9. - remind in die tägliche cron Ausführung einstellen
  10. bei Debian / Ubuntu remind nach /etc/cron.daily kopieren
  11. remind darf nicht remind.py heißen, da run-parts, das die cronjobs abarbeitet, die Datei sonst ignoriert.
  12. - z.Zt. läuft remind auf der APU berghofen.ffdo.net
  13. # Interna
  14. - remind verwendet als Absender reminder@freifunk-dortmund.de. Diesen account gibt es nicht, er ist aber für die Listen freifunk-do@list.free.de, freifunk-do-infra@list.free.de und freifunk-do-verein@list.free.de als Nichtmitglied postberechtigt eingetragen. Dies geht über Listenadministration -> Abo-regeln und Adressfilter -> Absender-filter -> Anti-spam-filter.
  15. Die Vorwarnzeit in Tagen ist im Programm verdrahtet:
  16. REM_TREFFEN_MONAT = 4 # Tage vorher erinnern an Monatstreffen
  17. REM_TREFFEN_TOPS = REM_TREFFEN_MONAT + 2 # Tage vorher erinnern an TOP ergänzen
  18. REM_STANDARD = 2 # Tage vorher erinnern an FF@home, ...
  19. REM_INTERVALL = 6 # heute + x Tage Termine prüfen
  20. Die Termindaten im iCal Format werden von der Freifunk Webseite geholt für den laufenden Monat und eventuell den nächsten, falls das Prüfintervall in den nächsten Monat zeigt.
  21. - Beispieleintrag
  22. BEGIN:VEVENT
  23. DTSTART;TZID=Europe/Berlin:20210325T140000
  24. DTEND;TZID=Europe/Berlin:20210325T170000
  25. DTSTAMP:20210319T211111
  26. CREATED:20210311T170027Z
  27. LAST-MODIFIED:20210311T170059Z
  28. UID:553-1616680800-1616691600@www.freifunk-dortmund.de
  29. SUMMARY:FF@home
  30. DESCRIPTION:
  31. URL:https://www.freifunk-dortmund.de/termin/ffhome-4/
  32. LOCATION:https://meet.nerd.re/FreifunkDortmund
  33. ORGANIZER;CN="FFDO%20e.V.":MAILTO:info@freifunk-dortmund.de
  34. END:VEVENT
  35. Mit dem SUMMARY Eintrag wird die Empfangsliste bestimmt, z.Zt. geht Erinnerungen mit FF@home an die infra liste, Öffentlichkeitsarbeit an die Vereinsliste, alle andern an die freifunk-do Liste.
  36. Für das Monatstreffen wird 2 Tage vor der Erinnerung die Aufforderung zur Ergänzung der TOPs verschickt inklusive der bisher eingetragenen TOPs.
  37. Die Ausführung oder Fehler werden im systemd Journal und im syslog protokolliert.
  38. In den letzten Wochen hat das Verschicken der Nachrichten öfter nicht geklappt. Deshalb ist der Reminder erweitert: falls der tägliche Lauf (aus cron.daily) nicht klappt, wird remind in den stündlichen Lauf (cron.hourly) eingestellt und wiederholt.
  39. Bei einem erfolgreichen Lauf wird remind aus cron.hourly wieder gelöscht.