Utilisez les modèles de Zap Discourse de Zapier

Zapier propose plusieurs modèles officiels de zaps pour Discourse. Ces modèles permettent de connecter Discourse à une application externe avec une configuration minimale. Vous pouvez les trouver ici :

Faites défiler la page vers le bas pour voir la liste des intégrations actuellement disponibles.

Ces modèles sont divisés en deux catégories. Dans la première catégorie, Discourse est l’application déclencheuse. Ces modèles vous permettent de publier des messages de Discourse sur Slack, Mattermost, Discord, des groupes Facebook, des pages Facebook, Google Sheets et d’autres services. Dans la deuxième catégorie de modèles, Discourse est l’application action. Avec ces modèles, vous pouvez publier des messages depuis WordPress et Ghost vers Discourse. Il existe également un modèle pour publier des flux en direct Twitch sur Discourse.

Ajout de vos identifiants Discourse sur Zapier

Pour utiliser l’une des intégrations Zapier Discourse, vous devrez ajouter l’URL de base de votre forum, ainsi que votre nom d’utilisateur Discourse et votre clé API lors de la configuration initiale du Zap.

Dans la plupart des cas, le Zap doit être configuré par un administrateur du site en utilisant son nom d’utilisateur Discourse et sa clé API. Les clés API peuvent être créées dans Discourse depuis la page Admin / API / Clés. Notez que la valeur complète de la clé API n’est affichée qu’une seule fois lors de la création de la clé, alors assurez-vous de la copier à ce moment-là.

Après avoir ajouté vos identifiants Discourse à Zapier, cliquez sur le bouton Continuer. Vous devriez voir un message de succès s’afficher à l’écran.

Configuration des messages que le Zap récupérera

Lorsque Discourse est l’application déclencheuse, par défaut, tous les nouveaux messages de votre site déclencheront le Zap. Vous pouvez limiter le Zap pour qu’il ne se déclenche que pour les messages créés dans un sujet spécifique, ou uniquement pour les messages créés par un utilisateur spécifique, dans l’étape facultative « Modifier les options ».

Utilisez le menu déroulant Sujet de l’étape pour sélectionner un sujet spécifique qui doit déclencher le Zap. Une fois configuré, seuls les messages créés dans le sujet choisi seront récupérés par Zapier. Utilisez le menu déroulant Auteur de l’étape pour sélectionner un nom d’utilisateur pour le Zap. Une fois configuré, seuls les messages créés par cet utilisateur seront récupérés par Zapier.

Ajout d’une étape de filtre pour un contrôle plus précis des messages

Si l’étape « Modifier les options » ne vous offre pas suffisamment de contrôle sur les messages utilisés pour déclencher le Zap, vous pouvez ajouter une étape de filtre facultative au Zap. Un exemple de ce qui peut être réalisé avec un filtre est de choisir de ne poursuivre le Zap que si le message est le premier message d’une catégorie spécifique. Pour ajouter un filtre, cliquez sur l’icône :heavy_plus_sign: située sous le Déclencheur, puis sélectionnez « Filtre » dans le menu.

Le filtre vous permettra de définir les conditions dans lesquelles le Zap doit se poursuivre. L’exemple ci-dessous ne poursuivra que si le message est le premier message d’un sujet appartenant à la catégorie dont l’ID est 2.

Sélection du contenu Discourse à publier

Lors de la publication de messages de Discourse vers une autre application, Zapier vous permettra de sélectionner quelle partie du message vous souhaitez publier. Ce que vous choisissez de publier dépendra de l’application vers laquelle vous publiez. Je prendrai l’exemple de la publication d’un message Discourse vers un groupe Facebook.

Le champ Message du formulaire définit le contenu qui sera publié. Pour publier le contenu complet du message, sélectionnez le champ « Brut » (Raw) dans le menu déroulant Message. Pour publier uniquement le titre du sujet, sélectionnez « Titre du sujet » dans le menu déroulant.

Construction d’un lien vers un message ou un sujet

Lors de la publication d’un message Discourse vers une application externe, vous devrez peut-être construire un lien vers le message ou son sujet à partir des données renvoyées par Discourse. Pour ce faire, entrez l’URL de base de votre site dans le champ où vous ajoutez le lien, suivi de /t/. Par exemple, si l’URL de votre site est https://discourse.example.com, entrez https://discourse.example.com/t/ dans le formulaire.

Ouvrez maintenant le menu déroulant du champ et sélectionnez « Slug du sujet » dans le menu.

Zapier ajoutera un espace réservé pour le slug du sujet dans le champ.

Entrez maintenant une barre oblique (/) après l’espace réservé du slug du sujet, puis sélectionnez « ID du sujet » dans le menu déroulant.

Le résultat final ressemblera à la capture d’écran ci-dessous.

Pour construire un lien vers des messages spécifiques dans un sujet, ajoutez une autre barre oblique (/) au champ, puis sélectionnez « Numéro du message » dans le menu.

Notez que les valeurs de tous les espaces réservés que vous utilisez lors de la configuration du Zap seront remplacées par les valeurs transmises par Discourse lorsqu’un nouveau message sera publié.

Création d’intégrations sans modèle

Les modèles Zapier répertoriés sur leur page d’intégrations sont conçus pour faciliter la connexion de Discourse à une application externe. Si vous souhaitez connecter Discourse à une application qui ne dispose pas de modèle, ou si vous souhaitez créer un Zap qui écoute un webhook Discourse ou effectue une requête POST vers l’API Discourse, vous pouvez le faire en suivant ou en modifiant l’un des guides répertoriés ici :

17 « J'aime »

Voici ce qui s’affiche sur l’écran d’ajout d’identifiants Zapier :

Une erreur s’est produite lors de l’ajout de votre nouveau compte

Échec de l’authentification : Code d’erreur 500 : {“status”:500,“error”:“Internal Server Error”}

Tous les détails sont corrects.

Discourse rapporte une utilisation réussie de la clé API :

Et le journal d’erreurs suivant :

Message

Draft::OutOfSequence (Draft::OutOfSequence)
/var/www/discourse/app/models/draft.rb:124:in `get'

Backtrace

/var/www/discourse/app/models/draft.rb:124:in `get'
/var/www/discourse/lib/topic_list_responder.rb:11:in `respond_with_list'
/var/www/discourse/app/controllers/list_controller.rb:152:in `block in generate_message_route'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/actionpack-6.0.3/lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/actionpack-6.0.3/lib/abstract_controller/base.rb:195:in `process_action'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/actionpack-6.0.3/lib/action_controller/metal/rendering.rb:30:in `process_action'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/actionpack-6.0.3/lib/abstract_controller/callbacks.rb:42:in `block in process_action'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activesupport-6.0.3/lib/active_support/callbacks.rb:135:in `run_callbacks'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/actionpack-6.0.3/lib/abstract_controller/callbacks.rb:41:in `process_action'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/actionpack-6.0.3/lib/action_controller/metal/rescue.rb:22:in `process_action'

Env

HTTP HOSTS: discuss.bevry.me

Exécution de la version 2.5.0.beta4 (811bc3544f)


Cela dit, l’actualisation de la page d’ajout Zap qui a déclenché la fenêtre contextuelle donne le résultat suivant :

Il semble donc que l’ajout ait été effectué avec succès malgré l’erreur.


Cependant, la sélection de l’une des entrées ajoutées déclenche à nouveau le flux d’authentification :

4 « J'aime »

Utilisez-vous une clé API Discourse « Tous les utilisateurs » et le nom d’utilisateur d’un administrateur de votre site ? Je ne suis pas certain que ce soit ce qui est requis, mais j’ai configuré un nouveau compte Zapier Discourse avec des identifiants API d’administrateur la semaine dernière. Cela a fonctionné pour moi à ce moment-là.

1 « J'aime »

Nous avons également rencontré ce problème.

Il est maintenant édit : était impossible de faire quoi que ce soit (enfin, beaucoup de choses) avec un utilisateur ayant un identifiant négatif, en raison de ce changement :

@tgxworld Ce serait bien si l’on pouvait désactiver ce nouveau comportement et/ou ajouter des comptes à une liste blanche.

3 « J'aime »

C’était un bogue et il a été corrigé dans

3 « J'aime »

C’était bien quelque chose que nous avons rencontré hier :laughing: .
Merci !! (et j’aurais dû vérifier avant de publier ce message)

3 « J'aime »

Merci beaucoup, ça fonctionne à merveille !

1 « J'aime »

Bonjour, existe-t-il un moyen de filtrer les publications Discourse agissant comme déclencheur afin de ne conserver que les nouveaux sujets (le premier message d’un fil) et de rejeter les réponses dans un fil ? Merci.

J’ai finalement trouvé comment faire cela :

1 « J'aime »

Cela me renvoie toujours une erreur 403, spécifiquement dans la partie « Configurer le déclencheur » du Zap où je suis censé spécifier l’auteur :

J’ai essayé les paramètres « Tous les utilisateurs, global » et « Utilisateur unique, global », ainsi que le paramètre « Tous les utilisateurs, lecture seule ». Ils renvoient tous la même erreur (403).

1 « J'aime »