Create Zendesk Tickets from Discourse posts


(Shiv Kumar) #1

Create Zendesk Tickets from Discourse posts. No special installation instructions.


Using discourse as a community ticket system
Discourse Zendesk Plugin
Feature to allow uservoice/getsatisfaction suggestions and voting
How to measure efficiency of workers in conjunction with Discourse posts
(Johnnyman727) #2

Hey @shivermetimbers,

Thanks for your work on this plugin! I have a couple of questions about it that I’d love some information on when you get a chance. I’m new to Ruby, Docker (where my company hosts Discourse) and Discourse itself so I apologize if these are silly questions:

Does your plugin automatically generate a Zendesk ticket for every new forum post? Or does it generate a dialog box from which a user manually creates a ticket?

Also, do you happen to know if you can still use plugins in conjunction with the one-click upgrade from within Docker?

Thanks a ton!

Jon


(Shiv Kumar) #3

The plugin places a green, Zendesk button at the bottom of every topic visible only to forum admins and moderators. When that button is clicked, an API call is made to Zendesk to create a ticket for the given topic. The description for the ticket contains the topic title, the contents of the topic’s first post and the topic’s URL. It also CC’s the original topic creator so they can follow along with the ticket as it’s being resolved.

Green Zendesk button at the bottom of every topic

After the green, Zendesk button is clicked, it immediately turns yellow and the text changes to indicate that a ticket has been created. When you click on the button, it takes you directly to the ticket in Zendesk. On every page load, a call is made to Zendesk to check the status of the ticket and update the color/text of the button to reflect the ticket’s current status.

Button variations based on ticket status





Not sure. We (New Relic) host our forum through Discourse, so they’ve taken care of all the deployment and Docker configurations. I’m not familiar with the one-click upgrade process. Maybe search around this forum to see if anyone else was wondering the same thing? If not, you could always create a new topic :smile:


(Tobias Eigen) #4

I love this functionality - great work!!

I would love to have something like this for redmine, which our team at Kabissa uses as our issue tracker. Now we do it the long way which is probably ok as a start, e.g. when there is a forum topic that we need to ensure gets handled we go over to redmine, create an issue and in the description link to discourse.

Sometimes we also create a topic and an issue at the same time when it involves a discussion, when in the past we used redmine for discussion as well. But of course discourse is a much better place for discussion. :smile:


(Kane York) #5

Yes - the plugins get added to the upgrade screen.


(Johnnyman727) #6

@shivermetimbers and @riking,

Thanks for the guidance! I’d like to build a plugin that will automatically create (and, ideally, update) a Zendesk ticket when a forum item is posted. Does anyone have some recommended reading for creating a plugin? I stumbled upon this tutorial but I think it was posted before the new plugin system.

Thanks!

Jon


(Shiv Kumar) #7

@johnnyman727 sorry for the delay here. I think you could start with the code here: GitHub - shivpkumar/Zendesk-Plugin: Zendesk Plugin for Discourse and then add an after_create hook to the Post object to either create a new Zendesk ticket (if it’s a new topic) or update an existing Zendesk ticket (if a ticket already exists for that topic). Something like that seems like it should work.


(Rene Groeschke) #8

Thanks for sharing this. It’s a good blueprint for the jira export plugin we need for our forum.


(Chris Anderson) #9

@shivermetimbers thanks so much for creating this plugin, just what we needed!


(Руслан Корнев) #10

While learning plugin found, that it slightly outdated.

The method reloadBySlugOrId.

where renamed to reloadById.

The changes should made here.


(Erlend Sogge Heggen) #11

You should open a pull request for that on GitHub :wink:


(Руслан Корнев) #12

Yeah. Done Changes caused changes in Discourse sources. by woto · Pull Request #5 · shivpkumar/Zendesk-Plugin · GitHub


Install Plugins in Discourse
(Allen - Watchman Monitoring) #13

I wonder… could this be expanded to allow creation of tickets from posts which are pending approvals?

I’d go so far as to pay for that feature to be added to the official plugin as a PR


(Michael Geneles) #14

Great plugin idea! Thank you for building it.

Is it compatible with the current version of Discourse? I’m getting the following error after including this plugin in my app.yml and doing a rebuild.

FAILED
--------------------
RuntimeError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 364 exit 1>
Location of failure: /pups/lib/pups/exec_command.rb:105:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"bundle_exec", "cmd"=>["su discourse -c 'bundle install --deployment --verbose --without test --without development'", "su discourse -c 'bundle exec rake db:migrate'", "su discourse -c 'bundle exec rake assets:precompile'"]}
4335ed02986c83337729d28bdc37c027c2e00e39c4a27662....
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one

Any help with this is greatly appreciated.

Michael


(Allen - Watchman Monitoring) #16

We’re you able to get this working?


(Savannah Dowling) #17

Hey everyone!

Was just wondering if the Zendesk plugin is now working for the current version of discourse? The last post on this hasn’t been updated in a while. Noticed that someone also asked a couple of months ago. An update would be an amazing help, as this is a super important feature for my company’s forum!


(Erlend Sogge Heggen) #18

Haven’t heard from @shivermetimbers & co in a while. If you’re thinking about subscribing to one of our hosted plans we can look into taking over maintainership for the plugin.


(Allen - Watchman Monitoring) #19

This is a case where I’d love to be able to sponsor development… but can’t use discourse hosting for reasons which have nothing to do with Discourse as a company or team.


(bob tang) #20

We are currently subscribing to the hosted plan and are interested in this plug in.


(jauxking) #21

Very VERY interested in this Plugin! Would love to know if the plugin is still compatible.

Thanks!