This plugin is bundled with Discourse core. There is no need to install the plugin separately.
Features
Create Zendesk tickets
This plugin allows you to create Zendesk tickets from Discourse topics. This can be done either by configuring the plugin so that all topics in a category automatically generate Zendesk tickets, or by pushing individual topics to Zendesk by clicking the “Create Zendesk Ticket” button that’s displayed for site staff below each topic:
When the ticket is created, the author of the topic’s first post will be set as the Requester on Zendesk. They will also be added to your Zendesk customers list.
After the ticket has been created, the “Create Zendesk Ticket” button will be updated to “View on Zendesk.” Clicking that button will take you to the associated Zendesk ticket:
The plugin allows you to optionally push all replies to the Discourse topic to the Zendesk ticket, or to only push replies created by the topic’s author. Both of these features are configurable via the plugin’s settings.
Sync Zendesk comments with Discourse
Zendesk comment can be synced with the Discourse topic that the ticket originated on.
Configuration
The Discourse Zendesk settings can be accessed from the Plugins page of your Discourse site’s Admin section. Click the “Settings” button for the “discourse-zendesk-plugin” entry on that page to access the settings.
zendesk url : enter the URL of your Zendesk account, followed by api/v2 . For example, https://example.zendesk.com/api/v2
zendesk enabled : used to enable and disable the plugin.
zendesk jobs api token : details for generating the API token on Zendesk are here: Generating a new API token – Zendesk help. Copy that token to this Discourse setting.
zendesk jobs email : the email address of a staff user on your Zendesk account that also has an admin account on your Discourse site.
zendesk autogenerate all categories (formerly zendesk enable all categories) : if enabled, all topics on your Discourse site will automatically generate Zendesk tickets. This setting is disabled by default.
zendesk autogenerate categories (formerly zendesk enabled categories) : a list of Discourse categories that will have all new topics automatically pushed to Zendesk.
zendesk job push all posts and zendesk job push only author posts : both of these settings are disabled by default. Enable one of them if you want to push either all replies, or only the topic author’s replies to Zendesk.
sync comments from zendesk and zendesk incoming webhook token : these two settings are used to sync comments from Zendesk to Discourse. Details about how to configure syncing Zendesk comments to Discourse are here: How to enable Zendesk two-way sync
zendesk tags : an optional list of tags to append to all Zendesk tickets that originate on your Discourse site.
J’aimerais faire une demande de fonctionnalité pour cette intégration Zendesk :
La possibilité d’envoyer des réponses à Zendesk en tant que commentaires, et de récupérer des commentaires de Zendesk en tant que réponses est vraiment essentielle pour nous. Cependant, la seule façon de réaliser ce dernier point est d’avoir des sujets de catégorie Discourse spécifiés qui créent automatiquement des tickets Zendesk.
Je préférerais de loin qu’il y ait un moyen de permettre aux tickets Zendesk créés manuellement d’avoir également cette capacité de récupérer des commentaires en tant que réponses ! En effet, nous avons un processus de triage en place où seuls certains sujets créés par les clients devraient être transmis à Zendesk. Nous ne voudrions pas permettre à nos utilisateurs finaux de créer également des tickets Zendesk en coulisses.
Merci beaucoup pour le plugin, il nous a beaucoup aidés !
J’aimerais de l’aide concernant le problème suivant :
Dans Zendesk, lorsque nous créons des “notes internes” (notes privées) dans un ticket, ces notes internes ne produisent pas de whisper Discourse.
J’ai implémenté un webhook dans Zendesk pour créer un whisper pour chaque note interne, cependant, ce whisper est ensuite renvoyé à Zendesk par le fonctionnement normal du plugin.
Ma question est donc : existe-t-il un moyen d’empêcher le plugin de créer un nouveau commentaire sur Zendesk lorsque je crée les whispers à partir des notes internes, comme décrit ci-dessus ?
Je sais que je peux désactiver la synchronisation pour tous les messages, mais l’objectif serait de ne pas synchroniser uniquement les whispers que je crée via l’API Discourse.
Savez-vous s’il existe une solution simple pour cela ?
Je ne suis pas sûr que ce soit le bon endroit pour signaler un bug, alors dites-moi si je dois déplacer cela ailleurs.
Nous utilisons ce plugin depuis quelques semaines et il a globalement bien fonctionné. Cependant, nous avons trouvé un problème où le plugin semble synchroniser les commentaires en double. Voici ce que je pense qu’il se passe :
L’utilisateur envoie un message dans Discourse
Il est synchronisé dans Zendesk
Le plugin de synchronisation voit le nouveau commentaire dans Zendesk et le resynchronise dans Discourse
Voici ce que nous voyons visuellement où John (l’administrateur qui a configuré le plugin) envoie parfois des doublons des messages d’autres utilisateurs sans son intervention. Cela provient du plugin de synchronisation Discourse :
Du côté de Zendesk, nous ne voyons aucun doublon de réponses, et seulement celle de l’utilisateur (je ne peux pas poster une deuxième capture d’écran en raison des limites de ce forum).
L’expansion de la vue de l’historique du ticket ne montre aucune anomalie sur Zendesk.
Avez-vous des idées sur ce qui pourrait mal se passer ou sur la façon dont nous pouvons déboguer cela ?
Merci d’être intervenu ! Oui, c’est un problème logiciel, John ne publie pas ces messages lui-même.
Je vais examiner nos déclencheurs et tester leur désactivation puis leur réactivation. Malheureusement, je n’ai trouvé aucune similarité quant au moment ou à la raison pour laquelle cela se produit, donc je n’ai aucun moyen direct de le reproduire.
J’ai trouvé un déclencheur qui, chaque fois qu’un ticket est mis à jour et qu’il a le tag discourse, notifie le webhook de synchronisation Discourse via une requête PUT. Je n’ai pas configuré le plugin moi-même, mais cela pourrait-il être la cause ?
En dehors de ce déclencheur, je ne vois aucune autre automatisation qui pourrait interférer. J’ai demandé à nos administrateurs Discourse de renvoyer une liste de tous les commentaires de John (y compris ceux que nous avons supprimés) afin que je puisse comparer chaque instance pour tenter de trouver un lien.
J’utilise le plugin Zendesk et j’en suis très satisfait. Cependant, quelque chose d’inattendu vient de se produire. Lorsqu’un autre membre de l’équipe (quelqu’un qui était auparavant agent dans Zendesk) a répondu à un fil de discussion dans Discourse, Zendesk a renvoyé le message à Discourse. Ainsi, il est publié deux fois dans le sujet Discourse, une fois par le membre de l’équipe qui l’a posté dans Discourse, et une autre fois par l’assigné actuel du ticket dans Zendesk.
Quelqu’un a-t-il rencontré ce problème et a une solution ?
Je rencontre un problème où les sujets privés créés du côté de la communauté ne sont pas générés dans Zendesk. Quelqu’un pourrait-il me conseiller sur les paramètres ou configurations spécifiques nécessaires pour garantir que les sujets privés soient correctement synchronisés avec Zendesk ?
Je vois que les boutons « Créer/Voir un ticket Zendesk » ne sont visibles que par le personnel.
Serait-il possible de contrôler la visibilité de ces boutons par de nouveaux paramètres de plugin zendesk_create_ticket_allowed_groups et zendesk_view_ticket_allowed_groups pour plus de flexibilité ?
Je ne souhaite pas nécessairement accorder des rôles d’administrateur ou de modérateur à nos équipes de support. Ce sont bien sûr les administrateurs de leur domaine (Zendesk), mais je pense que cela ne justifie pas toujours des privilèges étendus sur Discourse.
Ce plugin est désormais inclus dans le cœur de Discourse dans le cadre de Bundling more popular plugins with Discourse core. Si vous auto-hébergez et utilisez le plugin, vous devez le supprimer de votre app.yml avant votre prochaine mise à niveau.