[3.3] Wie wird die Abarbeitung der Email-Queue getriggert

Fragen rund um die Installation, Administration und Benutzung von phpBB 3.2 und höher und die Konvertierung zu phpBB 3.3.
Forumsregeln
Bitte im Thementitel den Präfix deiner phpBB-Version [3.3] oder [3.2] angeben
Antworten
mbld
Mitglied
Beiträge: 24
Registriert: 18.10.2016 16:59

[3.3] Wie wird die Abarbeitung der Email-Queue getriggert

Beitrag von mbld »

Ich habe es inzwischen geschafft, neue Antworten auf vorhandene Topics per Email zu versenden (Siehe hier).
Ein Cron-Job liest die Emails und hängt die Antwort an den Topic an.

Da die Antwort aber per Cron-Job über eine Extension eingetragen wird, und nicht über eine reguläre Anmeldung, bekommen die anderen User die Notifikation, dass es eine neue Antwort gibt, erst dann, wenn sich jemand im Forum anmeldet.
D.h. die Abarbeitung der Email-Queue scheint bei der Anmeldung irgendwie getriggert zu werden. Aber wie genau?

Ich habe für 3.0 diesen Thread gefunden, habe aber den Eindruck, dass der dort beschriebene Ablauf für 3.3. nicht mehr passt.
Jedenfalls habe ich im Browser bei der Anmeldung keinen Netzwerk-Verkehr mit "cron" in der URL gefunden, und ein Aufruf von http://yourforum.com/cron.php?cron_type=queue (mit angepasster URL) scheint auch nicht zur Abarbeitung der Queue zu führen.

Kann mir jemand einen Tipp geben, wie ich in 3.3 die Abarbeitung der Queue per cron-job antriggern kann.

Vielen Dank
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17076
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Re: [3.3] Wie wird die Abarbeitung der Email-Queue getriggert

Beitrag von Dr.Death »

ACP -->
Allgemein -->
Server und Domain -->
Wiederkehrende Aufgaben über Cron-Job des Systems ausführen: Ja
Wenn deaktiviert, wird sich phpBB darum kümmern, dass wiederkehrende Aufgaben automatisch ausgeführt werden. Nein
Wenn aktiviert Ja,
wird phpBB wiederkehrende Aufgaben nicht selbst ausführen;
der System-Administrator muss dann dafür sorgen, dass bin/phpbbcli.php cron:run regelmäßig (z. B. alle 5 Minuten) durch einen Cron-Job des Systems ausgeführt wird.
mbld
Mitglied
Beiträge: 24
Registriert: 18.10.2016 16:59

Re: [3.3] Wie wird die Abarbeitung der Email-Queue getriggert

Beitrag von mbld »

Leider kann ich das so nicht direkt aufrufen, weil mein Provider in der cronjob-Verwaltung nur den Aufruf von http-URLs zulässt.
bin/phpbbcli.php erwartet aber, dass es von der Kommandozeile aufgerufen wird.
Auch das Verpacken des Kommandos in ein PHP exec() läßt der Provider (erwartungsgemäß) nicht zu. (Returncode 126)

Aber vermutlich kann ich das was in bin/phpbbcli.php passiert in einer eigenen extension (die keine Ausführung vom command line client verlangt) nachstellen.

Vielen Dank
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17076
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Re: [3.3] Wie wird die Abarbeitung der Email-Queue getriggert

Beitrag von Dr.Death »

Dann probiere alle 5 Minuten diese URL mal:


http://yourforum.com/cron/cron.task.cron_task
mbld
Mitglied
Beiträge: 24
Registriert: 18.10.2016 16:59

Re: [3.3] Wie wird die Abarbeitung der Email-Queue getriggert

Beitrag von mbld »

mbld hat geschrieben: 10.01.2022 23:22 Aber vermutlich kann ich das was in bin/phpbbcli.php passiert in einer eigenen extension (die keine Ausführung vom command line client verlangt) nachstellen.
Da war ich wohl etwas optimistisch :) Das sieht doch sehr viel komplizierter aus, als erwartet.
Dr.Death hat geschrieben: 11.01.2022 07:28 Dann probiere alle 5 Minuten diese URL mal:
http://yourforum.com/cron/cron.task.cron_task
Hmm, habe ich probiert. Mit beiden Einstellungen (aktiv/nicht aktiv) für System-Cron job. Scheint aber die Abarbeitung nicht zu triggern. (Liefert das 1x1 gif ohne Fehlermeldung zurück.) Könnte aber auch mit meinem unten beschriebenen Problem zusammen hängen.

Was wohl hilft, ist die "Größe von E-Mail-Paketen" auf 0 zu stellen. Wenn ich es richtig verstanden habe, wird dann gar keine Queue aufgebaut, sondern die Email wird sofort versandt. Das wäre - selbst wenn es eventuell die Reaktionszeit beim Speichern eines Posts verzögert (hatte das irgendwo gelesen) - in meinem Fall wohl eine mögliche Lösung, da ich nicht so viele Empfänger habe.

Das ganze ist leider sehr schwer zu testen. Nachdem ich mit den Einstellungen hin und her gespielt habe, funktioniert der "normale" Email-Versand überhaupt nicht mehr. Die Queue (cache/production/queue.php) wird jetzt auch wenn ich mich mehrfach an/abmelde nicht mehr abgebaut. Das Einzige was jetzt funktioniert, ist die "Größe von E-Mail-Paketen" auf 0 zu setzen. Dann werden neuere Emails zuverlässig und sofort verschickt. Die älteren in der Queue bleiben aber einfach stehen. Sieht also so aus, als ob durch das hin- und herschalten der Einstellungen etwas "kaputt" gegangen ist. Ich habe aber keine Idee mehr, wo ich noch nachschauen könnte. Zum Glück spiele ich nur in einer Test-Kopie des Forums herum.
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17076
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Re: [3.3] Wie wird die Abarbeitung der Email-Queue getriggert

Beitrag von Dr.Death »

die "Größe von E-Mail-Paketen" auf 0
ist schon richtig.
Wenn die Queue auf 50 gesetzt wurde, wartet die Queue so lange, bis die Queue Anzahl von 50 voll ist und sendet dann erst.

Works as designed :-)
Antworten

Zurück zu „Support-Forum“