| Zusammenfassung | Discourse Events fügt dynamische und interaktive Kalender- und Ereignisfunktionen zu Ihrer Discourse-Website hinzu. | |
| Installationsanleitung | Dieses Plugin ist im Discourse-Kern enthalten. Es ist nicht erforderlich, das Plugin separat zu installieren. |
Aktivieren von Events
Das Events-Plugin kann entweder über den Schalter oder über seine Einstellungen aktiviert werden, die beide auf Ihrer admin/plugins-Seite erreichbar sind:
Von uns gehostet? Dieses Plugin ist in unseren Business- und Enterprise-Tarifen verfügbar https://www.discourse.org/plugins/calendar.html
Funktionen
Wenig überraschend fügt Discourse Events sowohl Kalender- als auch Ereignisfunktionen zu Ihrer Discourse-Website hinzu. Damit können Sie individuelle Themenkalender erstellen, um wichtige Anlässe oder Zeitpläne zu verfolgen, Kalender in Kategorien anzeigen, einen Feiertagskalender hinzufügen, um Urlaube, Abwesenheiten oder Krankheitstage zu markieren, interaktive Ereignisthemen erstellen sowie einen einfach zugänglichen Kalenderüberblick über alle Ihre anstehenden Ereignisse anzeigen.
Kalender
Individuelle Kalender können in mehreren Themen erstellt werden, und solche, die Sie stärker hervorheben möchten, können über der Themenliste einer Kategorie angezeigt werden.
Detailliertere Informationen zur Erstellung und Nutzung von Kalendern finden Sie unter:
Events
Die Event-Funktion ermöglicht es, interaktive Elemente in Themen einzufügen, mit denen Ihre Mitglieder sich anmelden können, um an den Aktivitäten Ihrer Community teilzunehmen. All dies wird in einem dedizierten, website-weiten Kalender zusammengefasst, mit der Option, einen einfach zugänglichen Link in Ihr Navigationsmenü hinzuzufügen. Weitere Informationen zur Erstellung und Nutzung dieser Funktion finden Sie unter:
Dies sollte nicht mit Pavilions Events-Plugin verwechselt werden (beachten Sie die Mehrzahl)
Kalendereinstellungen
| Name | Beschreibung |
|---|---|
| calendar enabled | Aktiviert das discourse-calendar-Plugin. Dies fügt die Unterstützung für ein [calendar][/calendar]-Tag im ersten Beitrag eines Themas hinzu. |
| holiday calendar topic id | Themen-ID des Urlaubs-/Abwesenheitskalenders des Personals. |
| holiday status emoji | Definiert das Emoji, das für den Urlaubsstatus verwendet wird. |
| delete expired event posts after | Beiträge mit abgelaufenen Events werden automatisch nach (n) Stunden gelöscht. Auf -1 setzen, um das Löschen zu deaktivieren. |
| all day event start time | Events, für die keine Startzeit angegeben ist, beginnen zu dieser Zeit. Format ist HH:mm. Für 6:00 Uhr morgens 06:00 eingeben |
| all day event end time | Events, für die keine Endzeit angegeben ist, enden zu dieser Zeit. Format ist HH:mm. Für 18:00 Uhr 18:00 eingeben |
| calendar categories | Zeigt einen Kalender oben in einer Kategorie an. Pflichteinstellungen sind categoryId und postId. z. B.: categoryId=6;postId=453[1] Weitere gültige Einstellungen: tzPicker[2], weekends[3] und defaultView[4]. |
| calendar categories outlet | Erlaubt die Änderung des Outlets, das den Kategoriekalender anzeigen soll. |
| working days | Setzt die Arbeitstage. Sie können die Verfügbarkeit einer Gruppe mit dem timezones-Tag in einem Beitrag anzeigen, z. B.: [timezones group=admins][timezones] |
| working day start hour | Startzeit der Arbeitsstunden. |
| working day end hour | Endzeit der Arbeitsstunden. |
| close to working day hours extension | Setzt eine Erweiterungszeit in den Arbeitsstunden, um die Zeitzonen hervorzuheben. |
| calendar automatic holidays enabled | Setzt den Urlaubsstatus automatisch basierend auf der Region eines Benutzers (Hinweis: Sie können bestimmte automatische Feiertage in den Plugin-Einstellungen deaktivieren) |
| map events title | Ordnet den Titel des Seitenleistenkalenders basierend auf der Kategorie zu. Standardmäßig “Upcoming events” |
Event-Einstellungen
| Name | Beschreibung |
|---|---|
| discourse post event enabled | Aktiviert die Event-Funktionen. Hinweis: Erfordert auch, dass calendar enabled aktiviert ist. |
| discourse post event allowed on groups | Gruppen, die berechtigt sind, Events zu erstellen. |
| displayed invitees limit | Begrenzt die Anzahl der auf einem Event angezeigten Eingeladene. |
| display post event date on topic title | Zeigt das Datum des Events nach dem Thementitel an. |
| use local event date | Verwendet das lokale Datum nach dem Thementitel anstelle der relativen Zeit. |
| discourse post event edit notifications time extension | Verlängert (in Minuten) den Zeitraum nach dem Ende eines Events, in dem going-Eingeladene noch über Bearbeitungen im ursprünglichen Beitrag benachrichtigt werden. |
| discourse post event allowed custom fields | Erlaubt es, für jedes Event den Wert von benutzerdefinierten Feldern festzulegen. |
| events calendar categories | Zeigt einen Event-Kalender oben in einer Kategorie an. |
| sort categories by event start date enabled | Aktiviert das Sortieren von Kategories Themen nach Event-Startdatum. |
| disable resorting on categories enabled | Erlaubt es Kategorien, die Möglichkeit für Benutzer zu deaktivieren, nach der Event-Kategorie zu sortieren. |
| sidebar show upcoming events | Zeigt den Link “Anstehende Events” in der Seitenleiste unter ‘Mehr’ an. Erfordert post event enabled |
| map events to color | Weist einer angegebenen Kategorie oder einem Tag eine Event-Farbe zu |
![]()
Der Endpunkt
discourse-post-event/events.jsonhat jetzt einen zusätzlichen Parameter, um zwischen einfacher und detaillierter Antwort umzuschalten. Um die detaillierte Antwort zu erhalten, können Sie?include_details=truehinzufügen:
/discourse-post-event/events.json?include_details=true
Erstellen von Events über die API
Sie können Events über POST /posts.json mit [event][/event] BBCode im raw-Feld erstellen. Hier sind die Details zur Einrichtung Ihres API-Anrufs:
- Verwenden Sie
POST /posts.jsonmit demraw-Parameter - Event-Syntax:
[event start="2024-05-10 20:00" status="public" timezone="America/Vancouver" end="2024-05-10 21:30" allowedGroups="trust_level_0"]\n[/event] - Ein buchstäbliches
\n-Zeichenwechsel ist erforderlich zwischen den öffnenden und schließenden Tags - Doppelanführungszeichen müssen bei der Verwendung von JSON maskiert werden (
\") - Das API-Benutzerkonto muss die Berechtigung zum Erstellen von Events haben (Admin oder eine Gruppe mit Event-Erstellungsberechtigungen)
- Setzen Sie die Kategorie über den
category-Parameter, indem Sie die ID der Kategorie als Wert übergeben.
Livestream-Events
Für Live-Events verwenden Sie die Livestream-Funktionalität, damit Mitglieder ein Event ansehen und gleichzeitig im Chat teilnehmen können.
Ein Livestream-Event umfasst:
- Einen Videostream (z. B. mit YouTube)
- Ein Kalender-Event unter Verwendung von Discourse Events
- Einen begleitenden Chat-Kanal, der automatisch für das Event erstellt wird
Voraussetzungen für Livestream-Events
Um Livestream-Events zu verwenden, muss chat enabled aktiviert sein, da Livestream einen Chat-Kanal neben Ihrem Event erstellt, zusätzlich zu discourse post event enabled und calendar enabled.
Wenn Sie Livestream verwenden möchten, aber keinen Chat an anderen Orten...
- Setzen Sie
chat allowed groupsauf die Standardkonfiguration oder schließen Sietrust_level_0ein, damit brandneue Benutzer am Livestream-Chat teilnehmen können - Entfernen Sie Gruppen aus der Einstellung
direct message enabled groups, um direkte Nachrichten zwischen Benutzern zu verhindern - Erstellen Sie keine anderen Chat-Kanäle
Erstellen eines Livestream-Events
Um ein Livestream-Event zu erstellen:
- Öffnen Sie ein neues Thema.
- Wählen Sie das -Symbol in der Compositor-Werkzeugleiste aus und klicken Sie auf Event erstellen (falls das Event noch nicht Ihrem Thema hinzugefügt wurde).
- Fügen Sie den Link zum Event-Video (z. B. eine YouTube-URL) in das Feld Ort/URL ein.
- Schalten Sie “Livestream” ein
Daraufhin sehen Sie, dass das Event und der Livestream erstellt wurden, zusammen mit einem begleitenden Chat-Kanal auf der rechten Seite.
Sobald ein Benutzer auf Teilnehmen beim Event klickt, tritt er automatisch dem Chat-Kanal bei und kann so am Gespräch teilnehmen!
Livestreaming von Zoom-Webinaren
Sie können Livestream verwenden, um Zoom-Webinare direkt in Discourse abzuhalten, damit Mitglieder das Event ansehen und am begleitenden Chat-Kanal teilnehmen können, ohne Ihre Community zu verlassen.
Voraussetzungen für Zoom-Webinare
Zusätzlich zu den Livestream-Voraussetzungen müssen Sie die folgenden Einstellungen konfigurieren:
- Schalten Sie
livestream zoom enabledein - Geben Sie Ihren Zoom Meeting SDK-Schlüssel in die Einstellung
livestream zoom sdk keyein - Geben Sie Ihr Zoom Meeting SDK-Geheimnis in die Einstellung
livestream zoom sdk secretein
So erhalten Sie den Zoom Meeting SDK-Schlüssel und das Geheimnis:
-
Gehen Sie zu marketplace.zoom.us, klicken Sie auf Entwickeln und dann auf App erstellen.
-
Wenn Sie nach der Art der App gefragt werden, die Sie erstellen, wählen Sie General App und klicken Sie auf Erstellen.
-
Kopieren Sie auf der Seite App Credentials der App die Client ID (SDK Key) und das Client Secret (SDK Secret).
-
Aktivieren Sie unter Embed die Berechtigung Meeting SDK.
-
Gehen Sie in Ihrem Discourse zu Admin → Alle Site-Einstellungen und geben Sie die Werte aus Schritt 3 in
livestream zoom sdk keyundlivestream zoom sdk secretein.
Damit das Zoom-Webinar korrekt in Discourse funktioniert:
-
Das Webinar darf keine Registrierung oder einen Passcode erfordern, um beizutreten.
-
Deaktivieren Sie den eingebauten Webinar-Chat von Zoom, um sicherzustellen, dass alle Diskussionen in dem einzigen Discourse-Chat-Kanal stattfinden, damit der gesamte Chat an einem Ort bleibt und das Gespräch nach dem Ende des Webinars fortgesetzt werden kann.
Erstellen eines Zoom-Webinar-Livestream-Events
Um ein Livestream-Event für Ihr Zoom-Webinar zu erstellen:
- Öffnen Sie ein neues Thema, wählen Sie das -Symbol aus und klicken Sie auf Event erstellen.
- Fügen Sie Ihren Zoom-Webinar-Link (z. B.
https://zoom.us/``...) in das Feld URL/Ort ein. - Schalten Sie Livestream ein.
- Setzen Sie den Event-Namen, die Startzeit, die Endzeit und andere Event-Details nach Wunsch.
- Veröffentlichen Sie das Thema.
Wie bei anderen Livestream-Events wird dieses Event mit einem begleitenden Discourse-Chat-Kanal erstellt, dem Mitglieder automatisch beitreten, nachdem sie sich als “Teilnehmend” angemeldet haben.
Benutzererfahrung
So erleben Ihre Mitglieder das Webinar:
Vor dem Event
Ein Zoom beitreten-Button wird 30 Minuten vor dem Start des Events angezeigt. Außerhalb dieses Zeitfensters ist der Button deaktiviert, mit einer Meldung, wann er verfügbar sein wird.
Während des Events
Sobald Mitglieder auf Zoom beitreten klicken, wird das Webinar auf der Themenseite geladen (oder, wenn der Host das Event noch nicht gestartet hat, müssen die Mitglieder warten, bis er es tut, um das Video zu sehen).
Audio wird beim Beitreten zum Webinar nicht automatisch verbunden; Teilnehmer müssen auf das Audio-Symbol in der Zoom-Werkzeugleiste klicken oder tippen, um zu verbinden. Dies ist eine Einschränkung der Zoom SDK und kann nicht geändert werden.
Auf Mobilgeräten wird das Webinar in einer Vollbild-Zoom-Ansicht geöffnet (die auch auf dem Desktop zugänglich ist, indem /zoom ans Ende der Event-Themen-URL hinzugefügt wird), mit einem schwebenden Chat-Button, den sie antippen können, um ein Chat-Overlay-Panel während des Events zu öffnen.
Nach dem Event
Der Zoom beitreten-Button wird 10 Minuten nach der Endzeit des Events ausgeblendet. Der Chat-Kanal bleibt für Teilnehmer zugänglich, bis Sie ihn schließen.
Integrationen mit anderen Plugins
Sie können eine Komponente aus diesem Plugin mit Right Sidebar Blocks verwenden. Sie sollten sicherstellen, dass der gewünschte Pfad in der Right Sidebar Blocks-Komponente aktiviert ist. Der Blockname lautet upcoming-events-list. Historisch gesehen waren zusätzliche Einstellungen im Kalender-Plugin selbst erforderlich, dies wurde jedoch vereinfacht.
So sieht der Seitenleistenkalender standardmäßig aus.
Wenn Sie die Zeit nicht möchten, können Sie einen leeren timeFormat-Wert in der Blockeinstellung der Komponente hinzufügen.
categoryId ist die Kategorie, über der der Kalender angezeigt wird.
postId ist der Beitrag, in dem Sie den Kalender mit [calendar][/calendar] eingefügt haben. ↩︎kann einen Zeitzonen-Auswahlbereich oben rechts im Kalender anzeigen. Standardmäßig falsch, kann mit tzPicker=true aktiviert werden ↩︎
kann Samstage und Sonntage aus dem Kalender ausblenden. Standardmäßig wahr. Kann mit weekends=false auf falsch gesetzt werden. ↩︎
defaultView setzt die Ansicht des Kalenders (Tag, Woche usw.). Kann wie folgt gesetzt werden:
defaultView=agendaDay
defaultView=agendaWeek
defaultView=month (Standard)
defaultView=listNextYear ↩︎


















