Discours Zoom

:discourse2: Résumé Discourse Zoom permet aux administrateurs et aux utilisateurs de Discourse disposant d’un abonnement Zoom payant de planifier, gérer et participer à des webinaires Zoom directement depuis leur plateforme Discourse.
:hammer_and_wrench: Lien du dépôt GitHub - discourse/discourse-zoom: Integrate Zoom events in Discourse. · GitHub
:open_book: Guide d’installation Comment installer des plugins dans Discourse

Aperçu

Ce plugin intègre les webinaires Zoom à une instance Discourse. Les webinaires Zoom peuvent être associés à des sujets, les utilisateurs de Discourse peuvent s’inscrire aux webinaires et y participer lorsqu’ils commencent.

:warning: En raison de l’abandon de l’authentification JWT par Zoom, à partir du 1er août 2023, le mécanisme d’authentification du plugin a changé : il passe de JWT (maintenant obsolète, Zoom le supprimera le 1er septembre) à l’OAuth Serveur-à-Serveur. Les utilisateurs existants du plugin doivent mettre à jour leurs paramètres.

Fonctionnalités

  • Lorsqu’un webinaire Zoom démarre, le bouton « S’inscrire » bascule automatiquement vers « Rejoindre », et en cliquant dessus, le webinaire se lance via le SDK Zoom sur une page dédiée au sein de votre communauté Discourse
  • Rappel automatique aux inscrits N minutes avant l’événement (N est configurable dans les paramètres du plugin, par défaut les rappels sont désactivés)
  • Les administrateurs peuvent ajouter des panélistes à un webinaire dans Discourse
  • Les administrateurs peuvent ajouter un lien vers les enregistrements vidéo du webinaire dans Discourse, qui sera ensuite affiché aux utilisateurs après la fin de l’événement
  • Les hôtes et panélistes des événements Zoom sont associés aux comptes utilisateurs de Discourse

Utilisation

Pour utiliser le plugin Discourse Zoom, vous devez d’abord l’installer dans votre instance Discourse et le configurer avec les identifiants de votre application OAuth Serveur-à-Serveur Zoom. Une fois le plugin configuré, vous pouvez créer un nouveau webinaire Zoom en créant un nouveau sujet et en l’associant au webinaire. Les utilisateurs peuvent ensuite s’inscrire au webinaire directement depuis le sujet.

Installation

Étape 1 : Installer le plugin dans votre instance Discourse

Vous pouvez installer le plugin dans votre instance Discourse en suivant les instructions ici.

Étape 2 : Créer une application OAuth Serveur-à-Serveur sur le Zoom Marketplace


Pour commencer, vous devrez créer une application OAuth Serveur-à-Serveur sur le Zoom Marketplace. Cette application sera nécessaire pour effectuer des requêtes vers l’API Zoom et recevoir des notifications d’événements via Webhooks.


Étape 3 : Configurer le plugin

Une fois le plugin installé, accédez aux paramètres de votre site Discourse et cochez la case zoom enabled (Zoom activé) puis enregistrez.

Depuis le Zoom Marketplace, allez dans l’onglet App Credentials (Identifiants de l’application) :

Ensuite, copiez et collez les valeurs dans les paramètres de site correspondants de votre instance Discourse :

  • zoom s2s account id (ID du compte S2S Zoom)
  • zoom s2s client id (ID client S2S Zoom)
  • zoom s2s client secret (Secret client S2S Zoom)

Étape 4 : Définir le jeton secret du webhook

Sur l’onglet Feature (Fonctionnalité) de votre application OAuth Serveur-à-Serveur Zoom, copiez le « Secret Token » (Jeton secret) et ajoutez-le au paramètre de site zoom webhooks secret token (Jeton secret des webhooks Zoom) de votre site Discourse.

Étape 5 : Activer les abonnements aux événements

Toujours sur l’onglet Feature (Fonctionnalité) de votre application OAuth Serveur-à-Serveur Zoom, activez « Event Subscriptions » (Abonnements aux événements) et cliquez sur le bouton Add Event Subscription (Ajouter un abonnement aux événements) :

Définissez ensuite l’« Event notification endpoint URL » (URL du point de terminaison de notification d’événement) sur :

https://VOTRESITE.COM/zoom/webhooks/webinars.json

puis cliquez sur le bouton + Add Events (+ Ajouter des événements) :

Ouvrez l’onglet Webinar (Webinaire) dans la liste des types d’événements et cochez tous les événements listés. Si vous ne voyez pas les autorisations d’événement Webinar (Webinaire), consultez comment activer les autorisations.

Sous l’« Event notification endpoint URL » (URL du point de terminaison de notification d’événement) que vous avez définie précédemment, trouvez le bouton Validate (Valider) :

Il devrait afficher A checkmark icon with "Validated" in green si tout a fonctionné.

Enfin, sélectionnez le bouton Save (Enregistrer) en bas de la page.

Étape 6 : Portées (Scopes)

Une fois que vous avez défini les abonnements aux événements, passez à l’onglet Scopes (Portées) et cliquez sur le bouton Add Scopes (Ajouter des portées). Ici, vous sélectionnerez les portées suivantes soit en recherchant par les valeurs fournies dans les tableaux, manuellement ou en utilisant des valeurs partielles, par exemple au lieu de rechercher webinar:read:list_panelists:admin, recherchez webinar:read: : cela réduira les éléments affichés pour faciliter la recherche des éléments requis.

Dans l’application OAuth Serveur-à-Serveur, sous l’onglet des portées, cliquez sur le bouton Add Scopes (Ajouter des portées) et une fenêtre s’ouvrira :

Dans la recherche de portée, recherchez par nom complet ou partiel. Pour faciliter cette tâche, vous pouvez copier-coller chaque portée dans les tableaux suivants ou les rechercher sous l’onglet correspondant :

Utilisateurs

scope desc
user:read:user:admin Voir un utilisateur
user:read:email:admin Vérifier l’e-mail d’un utilisateur
user:read:list_users:admin Voir les utilisateurs

Webinaire

scope desc
webinar:read:list_panelists:admin Voir les panélistes d’un webinaire
webinar:read:list_absentees:admin Voir les absents d’un webinaire passé
webinar:read:webinar:admin Voir un webinaire
webinar:read:registrant:admin Voir un inscrit à un webinaire
webinar:read:list_registrants:admin Voir les inscrits à un webinaire
webinar:write:batch_registrants:admin Ajouter des inscrits à un webinaire
webinar:delete:webinar:admin Supprimer un webinaire
webinar:write:panelist Ajouter des panélistes à un webinaire
webinar:delete:registrant Supprimer un inscrit à un webinaire
webinar:write:webinar Créer un webinaire pour un utilisateur
webinar:update:status Mettre à jour le statut d’un webinaire
webinar:delete:panelist Supprimer un panéliste d’un webinaire
webinar:update:webinar Mettre à jour un webinaire
webinar:write:registrant Ajouter un inscrit à un webinaire

Webinaire

scope desc
webinar:read:list_panelists:admin Voir les panélistes d’un webinaire
webinar:read:list_absentees:admin Voir les absents d’un webinaire passé
webinar:read:webinar:admin Voir un webinaire
webinar:read:registrant:admin Voir un inscrit à un webinaire
webinar:read:list_registrants:admin Voir les inscrits à un webinaire
webinar:write:batch_registrants:admin Ajouter des inscrits à un webinaire
webinar:delete:webinar:admin Supprimer un webinaire
webinar:write:panelist Ajouter des panélistes à un webinaire
webinar:delete:registrant Supprimer un inscrit à un webinaire
webinar:write:webinar Créer un webinaire pour un utilisateur
webinar:update:status Mettre à jour le statut d’un webinaire
webinar:delete:panelist Supprimer un panéliste d’un webinaire
webinar:update:webinar Mettre à jour un webinaire
webinar:write:registrant Ajouter un inscrit à un webinaire

Étape 7 : Créer une application Meeting SDK

:warning: Zoom a modifié certaines choses de son côté, nous travaillons à mettre à jour le guide.


L’application de réunion SDK authentifie l’utilisateur afin qu’il puisse rejoindre la réunion du webinaire.


Commencez par créer une General App (Application générale) et, sous Select how the app is managed (Sélectionnez comment l’application est gérée), choisissez User-managed (Gérée par l’utilisateur).

Sous l’onglet Basic Information (Informations de base) de votre Application générale, copiez et collez le Client ID/ SDK key (ID client / clé SDK) dans le champ zoom sdk key (clé SDK Zoom), et le Client Secret/SDK secret (Secret client / secret SDK) dans le champ zoom sdk secret (secret SDK Zoom).

En faisant défiler vers le bas, vous trouverez la section OAuth Information (Informations OAuth). Dans OAuth Redirect URL (URL de redirection OAuth), placez l’URL de votre site, par exemple https://VOTRESITE.com.

Étape 8 : Spécifier l’utilisation de votre application

Sous l’onglet Features (Fonctionnalités), sélectionnez le sous-onglet Embed (Intégration), puis activez Meeting SDK.

Limitations

Le plugin ne fonctionne qu’avec les webinaires qui ne nécessitent pas d’inscription sur Zoom.

Avis concernant les modifications incompatibles

En raison de l’obsolescence de certaines fonctionnalités de l’API Zoom, les anciennes instances du plugin devront être configurées en suivant les étapes mentionnées dans ce message.

:discourse2: Hébergé par nous ? Ce plugin est disponible sur nos plans Enterprise.

63 « J'aime »