Événements Discourse

:discourse2: Résumé Discourse Events ajoute des fonctionnalités dynamiques et interactives de calendrier et d’événements à votre site Discourse.
:open_book: Guide d’installation Ce plugin est inclus dans le noyau de Discourse. Il n’est pas nécessaire de l’installer séparément.

Activation des événements

Le plugin Events peut être activé soit par le commutateur, soit depuis ses paramètres, tous deux accessibles depuis votre page admin/plugins :

:discourse2: Hébergé par nous ? Ce plugin est disponible sur nos offres Business et Enterprise https://www.discourse.org/plugins/calendar.html

Fonctionnalités

Sans grande surprise, Discourse Events ajoute à la fois les fonctionnalités de calendrier et d’événements à votre site Discourse. Grâce à celles-ci, vous pouvez créer des calendriers de sujets individuels pour suivre des occasions importantes ou des chronologies, afficher des calendriers dans des catégories, ajouter un calendrier de vacances pour marquer les congés, les absences ou les jours de maladie, créer des sujets d’événements interactifs, ainsi qu’afficher un résumé de calendrier de tous vos événements à venir, accessible facilement.

Calendriers

Des calendriers sur mesure peuvent être créés dans plusieurs sujets, et ceux que vous souhaitez donner une visibilité plus élevée peuvent être affichés au-dessus de la liste des sujets d’une catégorie.

Vous pouvez trouver des informations plus détaillées sur la création et l’utilisation des calendriers dans :

Événements

La fonctionnalité Événements permet d’insérer des éléments interactifs dans les sujets que vos membres peuvent utiliser pour s’inscrire à assister ou à participer aux activités de votre communauté. Tout cela est récapitulé dans un calendrier dédié à l’ensemble du site, avec l’option d’ajouter un lien d’accès facile à votre menu de navigation. Vous pouvez trouver plus d’informations sur la création et l’utilisation de cette fonctionnalité dans :

:exclamation: Ne pas confondre avec le plugin Events de Pavilion (notez le pluriel)

Paramètres du calendrier

Nom Description
calendrier activé Active le plugin discourse-calendar. Cela ajoutera la prise en charge d’une balise [calendar][/calendar] dans le premier message d’un sujet.
id du sujet du calendrier des vacances ID du sujet du calendrier des vacances / absences du personnel.
emoji du statut de vacances Définit l’emoji utilisé pour le statut de vacances.
suppression des messages d’événements expirés après Les messages avec des événements expirés seront automatiquement supprimés après (n) heures. Définir sur -1 pour désactiver la suppression.
heure de début des événements toute la journée Les événements pour lesquels aucune heure de début n’est spécifiée commenceront à cette heure. Le format est HH:mm. Pour 6:00 du matin, entrez 06:00
heure de fin des événements toute la journée Les événements pour lesquels aucune heure de fin n’est spécifiée se termineront à cette heure. Le format est HH:mm. Pour 6:00 du soir, entrez 18:00
catégories du calendrier Affiche un calendrier en haut d’une catégorie. Les paramètres obligatoires sont categoryId et postId. ex : categoryId=6;postId=453[1] Autres paramètres valides : tzPicker[2], weekends[3] et defaultView[4].
sortie des catégories du calendrier Permet de changer la sortie qui doit afficher le calendrier de la catégorie.
jours ouvrables Définit les jours ouvrables. Vous pouvez afficher la disponibilité d’un groupe en utilisant la balise timezones dans un message, ex : [timezones group=admins][timezones]
heure de début de la journée ouvrable Heure de début des heures de la journée ouvrable.
heure de fin de la journée ouvrable Heure de fin des heures de la journée ouvrable.
extension des heures de la journée ouvrable Définit le temps d’extension dans les heures de la journée ouvrable pour mettre en évidence les fuseaux horaires.
vacances automatiques du calendrier activées Définit automatiquement le statut de vacances en fonction de la région d’un utilisateur (note : vous pouvez désactiver des vacances automatiques spécifiques dans les paramètres du plugin)
titre des événements de la carte Mappe le titre du calendrier de la barre latérale en fonction de la catégorie. Par défaut : “Événements à venir”

Paramètres des événements

Nom Description
événement de message discourse activé Active les fonctionnalités d’événement. Note : nécessite également que calendrier activé soit activé.
groupes autorisés pour les événements de message discourse Groupes autorisés à créer des événements.
limite d’affichage des invités Limite le nombre d’invités affichés sur un événement.
afficher la date de l’événement de message dans le titre du sujet Affiche la date de l’événement après le titre du sujet.
utiliser la date locale de l’événement Utilise la date locale après le titre du sujet au lieu du temps relatif.
extension du temps des notifications de modification des événements de message discourse Étend (en minutes) la période après la fin d’un événement pendant laquelle les invités going (venant) sont encore notifiés de la modification dans le message d’origine.
champs personnalisés autorisés pour les événements de message discourse Permet à chaque événement de définir la valeur de champs personnalisés.
catégories du calendrier des événements Affiche un calendrier des événements en haut d’une catégorie.
tri des catégories par date de début de l’événement activé Active le tri des sujets de catégorie par date de début de l’événement.
désactivation du retri sur les catégories activée Permet aux catégories de désactiver la possibilité pour les utilisateurs de trier sur la catégorie d’événement.
afficher les événements à venir dans la barre latérale Affiche le lien des événements à venir dans la barre latérale sous ‘Plus’. Nécessite post event enabled
mapper les événements vers une couleur Attribue une couleur d’événement à un tag ou une catégorie spécifiée

:information_source: :curling_stone: Le point de terminaison discourse-post-event/events.json a désormais un paramètre ajouté pour basculer entre une réponse simple et détaillée. Pour obtenir la réponse détaillée, vous pouvez ajouter ?include_details=true :

/discourse-post-event/events.json?include_details=true

Création d’événements via l’API

Vous pouvez créer des événements via POST /posts.json avec le BBCode [event][/event] dans le champ raw. Voici les détails sur la configuration de votre requête API :

  • Utilisez POST /posts.json avec le paramètre raw
  • Syntaxe de l’événement : [event start="2024-05-10 20:00" status="public" timezone="America/Vancouver" end="2024-05-10 21:30" allowedGroups="trust_level_0"]\n[/event]
  • Un retour à la ligne littéral \n est requis entre les balises d’ouverture et de fermeture
  • Les guillemets doubles doivent être échappés lors de l’utilisation de JSON (\")
  • Le compte utilisateur de l’API doit avoir la permission de créer des événements (administrateur ou un groupe avec des droits de création d’événements)
  • Définissez la catégorie via le paramètre category, en transmettant l’identifiant de la catégorie comme valeur.

Événements en direct

Pour les événements en direct, utilisez la fonctionnalité de diffusion en direct pour permettre aux membres de regarder un événement et de participer au chat en même temps.

Un événement en direct comprend :

  • Un flux vidéo (en utilisant YouTube, par exemple)
  • Un événement de calendrier utilisant Discourse Events
  • Un canal de chat accompagnant automatiquement créé pour l’événement

Prérequis pour les événements en direct

Pour utiliser les événements en direct, vous devez avoir chat enabled (chat activé), car le direct crée un canal de chat pour accompagner votre événement, en plus de discourse post event enabled et calendar enabled.

Si vous voulez utiliser le direct, mais ne voulez pas le chat ailleurs...
  • Définissez chat allowed groups sur la configuration par défaut, ou incluez trust_level_0 pour permettre aux tout nouveaux utilisateurs de participer au chat en direct
  • Retirez les groupes du paramètre direct message enabled groups pour empêcher les messages directs d’utilisateur à utilisateur
  • Ne créez pas d’autres canaux de chat

Création d’un événement en direct

Pour créer un événement en direct :

  1. Ouvrez un nouveau sujet.
  2. Sélectionnez l’icône + dans la barre d’outils du composeur et cliquez sur Create Event (si l’événement n’a pas déjà été ajouté à votre sujet).
  3. Collez le lien vers la vidéo de l’événement (par exemple, une URL YouTube) dans le champ emplacement/URL.
  4. Activez “livestream”

Vous verrez alors que l’événement et le direct ont été créés, ainsi qu’un canal de chat accompagnant sur le côté droit.

Dès qu’un utilisateur clique sur Going (Venir) pour l’événement, il rejoindra automatiquement le canal de chat, lui permettant de participer à la conversation !

Diffusion en direct des webinaires Zoom

Vous pouvez utiliser le direct pour héberger des webinaires Zoom directement dans Discourse, afin que les membres puissent regarder l’événement et participer au canal de chat accompagnant sans quitter votre communauté.

Prérequis pour les webinaires Zoom

En plus des prérequis du direct, vous devrez également configurer les paramètres suivants :

  • Activez livestream zoom enabled
  • Entrez votre clé Zoom Meeting SDK dans le paramètre livestream zoom sdk key
  • Entrez votre secret Zoom Meeting SDK dans le paramètre livestream zoom sdk secret

Pour obtenir la clé et le secret du Zoom Meeting SDK :

  1. Allez sur marketplace.zoom.us, cliquez sur Develop (Développer), puis sur Build app (Créer une application).

  2. Lorsque l’on vous demande quel type d’application vous créez, choisissez General App (Application générale) et cliquez sur Create (Créer).

  3. Depuis la page App Credentials (Identifiants de l’application) de l’application, copiez l’Client ID (Clé SDK) et le Client Secret (Secret SDK).

  4. Sous Embed (Intégration), activez l’autorisation Meeting SDK.

  5. Dans votre Discourse, allez dans Admin → All site settings (Admin → Tous les paramètres du site) et entrez les valeurs de l’étape 3 dans livestream zoom sdk key et livestream zoom sdk secret.

Pour que le webinaire Zoom fonctionne correctement dans Discourse :

  • Le webinaire ne doit pas exiger d’inscription ou de mot de passe pour rejoindre.

  • Désactivez le chat de webinaire intégré de Zoom pour vous assurer que toute la discussion se déroule dans le seul canal de chat Discourse afin de garder tout le chat en un seul endroit et de s’assurer que la conversation peut se poursuivre après la fin du webinaire.

Création d’un événement en direct pour un webinaire Zoom

Pour créer un événement en direct pour votre webinaire Zoom :

  1. Ouvrez un nouveau sujet, sélectionnez l’icône + et cliquez sur Create Event.
  2. Collez votre lien de webinaire Zoom (par exemple, https://zoom.us/``...) dans le champ URL/Emplacement.
  3. Activez Livestream.
  4. Définissez le nom de l’événement, l’heure de début, l’heure de fin et autres détails de l’événement comme souhaité.
  5. Publiez le sujet.

Comme pour les autres événements en direct, cet événement sera créé avec un canal de chat Discourse accompagnant que les membres rejoindront automatiquement après avoir répondu “Going” (Venir).

Expérience des membres

Voici comment vos membres vivront le webinaire :

Avant l’événement

Un bouton Join Zoom (Rejoindre Zoom) est affiché 30 minutes avant le début de l’événement. En dehors de cette fenêtre, le bouton est désactivé avec un message indiquant quand il sera disponible.

Pendant l’événement

Une fois que les membres cliquent sur Join Zoom, le webinaire se chargera dans la page du sujet (ou, si l’hôte n’a pas encore commencé l’événement, le membre devra attendre qu’il le fasse pour voir la vidéo).

L’audio ne se connecte pas automatiquement lors de la connexion au webinaire ; les participants doivent cliquer ou toucher l’icône audio dans la barre d’outils Zoom pour se connecter. C’est une limitation du SDK Zoom et ne peut pas être modifiée.

Sur mobile, le webinaire s’ouvre en vue plein écran Zoom (qui est également accessible sur ordinateur de bureau en ajoutant /zoom à la fin de l’URL du sujet de l’événement) avec un bouton Chat flottant qu’ils peuvent toucher pour ouvrir un panneau de chat superposé pendant l’événement.

Après l’événement

Le bouton Join Zoom est masqué 10 minutes après l’heure de fin de l’événement. Le canal de chat reste accessible aux participants jusqu’à ce que vous le fermiez.

Intégrations avec d’autres plugins

Vous pouvez utiliser un composant de ce plugin avec Right Sidebar Blocks. Vous devrez vous assurer que l’itinéraire souhaité est activé dans le composant Right Sidebar Blocks. Le nom du bloc sera upcoming-events-list. Historiquement, des paramètres supplémentaires étaient requis dans le plugin Calendar lui-même, mais cela a été simplifié.

Voici à quoi ressemblera le calendrier de la barre latérale par défaut.

Si vous ne voulez pas l’heure, vous pouvez ajouter une valeur timeFormat vide dans le paramètre du bloc du composant.


  1. categoryId est la catégorie sur laquelle le calendrier sera affiché en haut.
    postId est le message dans lequel vous avez placé le calendrier avec [calendar][/calendar] ↩︎

  2. il peut afficher un sélecteur de fuseau horaire en haut à droite du calendrier. Faux par défaut, vous pouvez l’activer avec tzPicker=true ↩︎

  3. il peut masquer les samedis et dimanches du calendrier. Vrai par défaut. Vous pouvez le définir sur false avec weekends=false. ↩︎

  4. defaultView définit la vue du calendrier (jour, semaine, etc.). Il peut être défini comme suit :

    defaultView=agendaDay
    defaultView=agendaWeek
    defaultView=month (par défaut)
    defaultView=listNextYear ↩︎

101 « J'aime »
How to use the calendar plugin?
Discourse Calendar - How to?
Calendar plugin, nothing is displayed
Discourse 2.2.0.beta3 Release Notes
How to use the calendar plugin?
Discourse Calendar dislpay link text rather than link url
Ability to mark any post as unread
Is there a room booking plugin?
📅 Event List Widget (Layouts Plugin)
I am looking for a webhook or event api
Inserting date/time into new topic's title field (ie, right here > !)
Db:migrate fails on discourse-calendar
Moderator/Admin Off Duty Button
Go from a Wordpress + Discourse structure to a Discourse site only?
Creating sub-communities in a discourse server
Vacation autoresponder for users who are away?
Please better document the Discourse Calendar plugin
Plugin to gather approvals / signatures on an initiative?
Plugin to show upcoming events on hosted discourse
Discourse Livestream
New to Discourse, have some questions :)
Expired events with end times are being removed from upcoming-events even with setting set to -1
Setup Continuous Integration using GitHub Actions
Add color to events based on event category or tag?
Is there any way to change the starting date of the Calendar?
SEO applied to Discourse Official Plugins
Add color to events based on event category or tag?
Add recurrent items within a date-range
Use Case Question - Room/Equipment Booking
Best practices for communicating to user base
Integrate with Discourse-calendar
My Wiki of useful Meta (and other) links
Quotes in event name clears attendees
Calendar in Discourse
Show Cakeday dates on the Calendar plugin
Agenda de colegio
What are your favorite plugins for your community?
Display a category as a calendar by scheduled Topic-timer dates
Why you should use Discourse internally for your company/team instead of Slack (4 years use case)
Newbie question: Is there a comprehensive guide to configuring and administering Discourse instance?
Angus' Events Plugin :calendar:
When "closing" event it moves it to today's date & time
How to display different calendar views?
Discourse calendar and event iCal integration?
Can the auto-responder fire on @mentions?
Event/Calendar Plugin - Cannot select a user for bulk-invite
Bulk Invite via modal only allowing one user (and not displaying correctly)
Event Creation
500 Error when posting, moment.tz runtime error
Best practice for a topic for a recurring event
How to get "back" btn
Event Chat Channels Now Available
📅 New Calendar Feature: End Date for Recurring Events
🌍 New Calendar Feature: Show Local Time
What livestream/webinar platforms do you use?
Custom Wizard Plugin :mage:
ICS → Discourse Importer
How have you built a local community around Discourse?
Angus' Events Plugin :calendar:
What happens next?
Bundling more popular plugins with Discourse core
Calendar subscription URLs for external calendar apps
Listing event invitees with email addresses
Discourse Daily Challenges
Upcoming Events Extra Buttons and Enhancements
Horizon: High Context Topic Cards
Besoin de renseignement pour informer une annulation d'événement
Current Projects - May 2026
It's easier than ever to create events in Discourse!
Easily create Events categories using the Calendar and Events plugin
Discourse Calendar & Events: Webhook triggers & Automations Plugin
Discourse Calendar - How to?
Angus' Events Plugin :calendar:
Topic List Previews (TLP)
New Topic button text does not change to New Event in sidebar in events category in Horizon Theme
Current Projects - June 2026
Event Duplicator: duplicate calendar events/topics into a new time period
It is very difficult to make events all day in the events modal (and 00:00 is confusing)
Questions about the Zoom Livestream integration
Help us test Horizon, our newest theme
Discourse Calendar is now Discourse Events!
Category Calendar with defaultView="listNextYear" not showing events
Zoom webinar livestream in the Events plugin
Calendar Core - Needs any special theme?
Current Projects - August 2026
Creating and managing calendars
Sorting Categories by Title
Creating and managing events
Category Calendar with defaultView="listNextYear" not showing events
The "Save Changes" button is very low on my user preferences interface page
Group Timezones
Easily create Events categories using the Calendar and Events plugin
Available hours / work hours flair
Could use help, setting up new community
Feature request: wrap calendar items when there's just one per day
Right Sidebar Blocks
Custom Discourse instance for a writers club
Unread messages blue numbers appearing in Latest lately (when they shouldn't)?
Database migration chokes on huge value of a "calendar-details" item in table "post_custom_fields"
"Out of office" user indicator
Database migration chokes on huge value of a "calendar-details" item in table "post_custom_fields"
Angus' Events Plugin :calendar:
Angus' Events Plugin :calendar:
Calendar plugin features to make it really useful for us
"Out of office" user indicator
Can discourse display topic replies in reverse order?