jfqd / redmine_helpdesk

Lightweight helpdesk plugin for redmine.
MIT License
195 stars 101 forks source link
helpdesk redmine redmine-helpdesk

Redmine Helpdesk

Lightweight helpdesk plugin for redmine. Adds the email sender-address of an anonymous supportclient to the custom field 'owner-email' of a ticket which was created by a support email. Answers can be send to the supportclient by checking the support checkbox on a journal.

Features

Screenshot

Send mail to supportclient

Getting the plugin

A copy of the plugin can be downloaded from GitHub

Installation

To install the plugin clone the repo from github and migrate the database:

cd /path/to/redmine/
git clone git://github.com/jfqd/redmine_helpdesk.git plugins/redmine_helpdesk
bundle install --without development test rmagick
bundle exec rake redmine:plugins:migrate RAILS_ENV=production

To uninstall the plugin migrate the database back and remove the plugin:

cd /path/to/redmine/
rake redmine:plugins:migrate NAME=redmine_helpdesk VERSION=0 RAILS_ENV=production
rm -rf plugins/redmine_helpdesk

Further information about plugin installation can be found at: https://www.redmine.org/wiki/redmine/Plugins

Usage

To use the helpdesk functionality you need to

project configuration sample

Cronjob

Creating tickets from support emails through an IMAP-account is done by a cronjob. If you are not familiar with cron you first should read about the concept. The following syntax is for ubuntu or debian linux:

*/5 * * * * redmineuser /path/to/your/rake -f /path/to/redmine/Rakefile --silent redmine:email:receive_imap RAILS_ENV="production" host=mail.example.com port=993 username=username password=password ssl=true project=project_identifier folder=INBOX move_on_success=processed move_on_failure=failed no_permission_check=1 unknown_user=accept 1 > /dev/null

Further information about receiving emails with redmine can be found at: https://www.redmine.org/projects/redmine/wiki/RedmineReceivingEmails

Please note that forwarding emails with rdm-mailhandler.rb is currently not supported by the plugin.

Compatibility

The latest version of this plugin is only compatible with Redmine 5.0.x.

If you prefer to run Redmine with JRuby make sure to use Redmine versions prior to 3.0.x!

Development

Testing

Rake tasks for testing against Redmine are provided. Redmine is installed under test/app and tests are run against the local instance.

REDMINE_VERSION=3.2 DATABASE_ADAPTER=mysql rake helpdesk:redmine:install

Docker is used to provide local MySQL (DATABASE_ADAPTER=mysql) and PostgreSQL (DATABASE_ADAPTER=postgresql_ext) instances.

export DATABASE_ADAPTER=mysql
rake helpdesk:prepare_local
rake helpdesk:migrate

Test suite can be executed with:

DATABASE_ADAPTER=mysql rake helpdesk:ext_ci

The local database instance has to be stopped with a rake task:

rake helpdesk:localdb:stop

Contributions

License

This plugin is licensed under the MIT license. See LICENSE-file for details.

Copyright

Copyright (c) 2012-2022 qutic development GmbH