Gruppenmitgliedschaft mit externer Datenbank aktualisieren

Wäre es möglich, eine private Kategorie zu erstellen, die nur für eine benutzerdefinierte Gruppe zugänglich ist, und die Mitgliedschaft dieser Gruppe mit einer externen Datenbank zu synchronisieren?

Ich erwäge, auf einem öffentlichen Forum eine Kategorie für ein Spiegelbild einer privaten Mailingliste einzurichten. Nicht alle Mitglieder der einen Liste sind automatisch Mitglieder der anderen. Damit dies funktioniert, müsste Discourse (oder ein separates Skript) bestehende Discourse-Benutzer basierend darauf, wer zu einem bestimmten Zeitpunkt Mitglied der E-Mail-Liste ist, automatisch zur benutzerdefinierten Gruppe hinzufügen oder daraus entfernen.

Vielen Dank.

1 „Gefällt mir“

Dies sollte mit WordPress als SSO-Anbieter für Discourse möglich sein. Sie müssen WordPress installieren und konfigurieren und für weitere Details unter Manage group membership in Discourse with WP Discourse SSO nachsehen.

2 „Gefällt mir“

In diesem Fall müsste ich WordPress ausschließlich als Brücke zwischen Mailman und Discourse installieren. Ich bin mir sicher, dass ich Benutzer zwischen Mailman und WordPress synchronisieren könnte. Aber das wäre wie mit dem Kanonenkugel auf die Fliege schießen.

Gibt es direktere Wege?

Vielen Dank.

1 „Gefällt mir“

Hmm, keine Ahnung. Vielleicht hat @simon ja eine Idee?

1 „Gefällt mir“

Ich habe mir gerade die Discourse-API-Dokumentationsseite angesehen. Es ist möglich, eine Liste von Benutzern (die Benutzernamen enthält), einen Benutzer nach Benutzernamen (der die Gruppen des Benutzers enthält) abzurufen, einen Benutzer zu einer Gruppe hinzuzufügen und einen Benutzer aus einer Gruppe zu entfernen. Ich könnte also regelmäßig einen Cron-Job ausführen, um sicherzustellen, dass nur aktuelle Mailman-Listen-Abonnenten Mitglieder der privaten Discourse-Gruppe sind.

Wurde dies bereits umgesetzt?

Eine API-Lösung wie diese würde ich empfehlen. Mir ist keine Lösung für die Integration von Mailman in Discourse bekannt. Wenn du den Mailman-Server betreibst, könntest du dort Hooks einrichten, um Personen automatisch zur Discourse-Gruppe hinzuzufügen oder daraus zu entfernen, sobald sich ihr Abonnementstatus ändert. Ein täglicher Cron-Job, der die Listen synchronisiert, ist jedoch wahrscheinlich einfacher und fast genauso effektiv. Je nach Anzahl der Abonnenten und der Fluktuationsrate könntest du auch noch weniger technisch vorgehen: Lass die Nutzer einfach den Zugang zur Gruppe anfragen oder nutze eine Lösung wie Invite users to a group.

2 „Gefällt mir“

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.