Overview
--------
The Support module allows you to manage Tickets in any number of queues,
referred to by the module as "Clients". Each Support Client gets a logically
distinct ticket queue, and a ticket can only be assigned to a single Client at
a time. Drupal users must be granted access to Clients to see tickets in a
given Client queue, and can either be granted limited access to only see the
tickets they created themselves or are explicitly assigned to them, or complete
access to see all tickets assigned to the Client.
Tickets can only be assigned to up to one Drupal User at a time. Tickets always
have a Priority (low, normal, high, critical) and a State (new, active, pending,
closed).
Support Clients can be optionally integrated with email allowing tickets to be
created and updated by email. Notificiation emails can be generated by the
support module when tickets are created or updated. A Drupal User must be
subscribed to a ticket to receive email notifications. There is no limit to the
number of Users that can subscribe to an individual ticket. Inidividual Clients
can be configured to auto-subscribe specific Drupal Users to new tickets.
In Drupal terms, a Ticket is a Content Type, so Tickets are Drupal Nodes. Ticket
Updates are Drupal Comments.
You must create at least one Client to use the Support module. There is no
inherent maximum limit to the number of clients you can create. Read on for
step by step directions to get started with the Support module.
Installation
------------
1) Enable the module.
2) Edit 'Administer >> Content management >> Content types >> Support ticket'
a) Set the desired Submission form settings (such as Title field label, Body
field label, Minimum number of words, etc)
b) Set the desired Workflow settings
c) Set the desired Comment settings (recommended):
- make comments read/write
- make default display mode 'flat list - expanded'
- make default display order 'Date - oldest first'
- increase default comments per page
- do not display comment controls
- disable the comment subject field
- display comment submission form below post or comments
3) Go to "Administer >> Support >> Clients >> Add client" and create one or
more Support clients.
If you only want to track tickets online, and send out notifications as
tickets are created and updated, simply define the 'Client name' and 'Path'.
If you want the ability to create and update tickets via email, you will
need to open the 'Inbound email integration' section, check 'Integrate
email', and fill out the rest of the information in that section. If
integrating inbound email, you will need to create an email account for
each client -- support will use this account to send and receive email.
More information can be found in MAIL.txt.
4) If creating multiple Support clients, go to "Administer >> User management
>> Roles" and create one role for each Support client. (This is an optional
step and is only required if you want to prevent one client from viewing and
updating the tickets of another client. If you are using this ticketing
system internally, this may not be important to you.)
5) Go to "Administer >> User management >> Permissions" and assign the desired
permissions. A user will need at least one "access CLIENT tickets"
permission and "create tickets" permission to be able to create tickets.
Users can only create and update tickets for clients they can access.
Users with "can suppress notification" permissions have the option to
manually disable a notification email from being sent out. An email will
still get sent to admins telling them that an update has been made but not
showing the contents of the update. This feature allows passwords and other
sensitive information to be added to tickets without being sent out as a
plain text email.
Users with "can assign tickets to self" permissions are able to assign a
ticket to themselves, or to assign the ticket to nobody.
Users with "can assign tickets to any user" permissions are able to assign
a ticket to themselves or to another user. Only users with permission to
view a given ticket can be assigned to it.
Users with "can subscribe other users to notifications" permissions are able
to subscribe other users to email notifications when a ticket is updated.
Users without this permission can only subscribe themselves. Only users
with permission to view a given ticket can be subscribed to notifications
for it.
Users with "download mail via support/fetch" permissions can access the path
"support/fetch" which will cause the Support module to download all client
email. Mail is also fetched when Drupal's cron is run, but this allows mail
to be checked at a different frequency than cron is run, if desired. If you
are using Support's mail integration features and you are running Drupal's
cron, you do not ever need to access support/fetch.
Users with "view other users tickets" permissions can view all tickets for
any client that they have "access CLIENT NAME tickets" permissions. Users
that do not have this permission can only view tickets that they themselves
have created. Users with "administer support", "edit any ticket" and/or
"delete any ticket" permissions can always "view other users tickets" whether
or not they are explicitly granted this permission.
Users with "edit multiple tickets" permissions will be able to add updates
and change the state and priority of multiple tickets from the client
overview pages.
When creating and modifying tickets, users with "can select client"
permissions can assign the ticket to any client that they have permission
to access tickets for.
When creating and modifying tickets, users with "can select priority"
permissions can set the priority of the ticket.
When creating and modifying tickets, users with "can select state"
permissions can set the state that the ticket is currently in, based on
the workflow defined in the support_states database table. By default, this
means that new tickets must be in the 'new' state, and only upon updating a
ticket can the user set the state to 'active', 'pending', or 'closed'.
Users with "can administer state" permissions can change the state of any
ticket from any state to any other state, ignoring the workflow defined in
the support_states database table.
Users with "move ticket" permissions and permission to edit a ticket see a
new "Support ticket" fieldset with a "Move ticket" field allowing them to
specify a parent node id which will cause the ticket and any updates to be
moved and become updates on the specified node id. Note that this only
allows for moving an entire ticket and all its updates, not specific updates.
Users with "administer support" permissions can access and update all
clients and client tickets, and automatically have all support permissions
available to them.
NOTE: If you have integrated email for any of your clients and you wish to
save email attachments then the user running Drupal's cron (usually the
anonymous user) must have "upload files" permissions. You can set this on a
per-content-type basis using the Upload Permissions Per Content Type module:
http://drupal.org/project/upload_perm_per_type
--------
Optional
--------
Comment Upload:
---------------
If you would like to be able to attach files to support ticket updates, you
can install the comment_upload module:
http://drupal.org/project/comment_upload
Once the module is enabled, visit "Administer >> User management >> Permissions"
and grant "upload files to commnts" and "view files uploaded to comments" to all
roles that should be allowed to attach files to support tickets. Finally, visit
"Administer >> Content management >> Content types" and click "Support ticket".
In the "Comment settings" section enable "Attachments on comments".
NOTE: If you have integrated email for any of your clients and you wish to save
email attachments then the user running Drupal's cron (usually the anonymous
user) must have "upload files to comments" permissions. You can set this on a
per-content-type basis using the Upload Permissions Per Content Type module:
http://drupal.org/project/upload_perm_per_type
Support Charts:
---------------
If you would like to generate charts from ticket statistics, you must first
install the Google Charts API module:
http://drupal.org/project/chart
Support Timer:
--------------
If you would like to enhance the support ticket system to also be a time tracker
you can install the support_timer module:
http://drupal.org/project/support_timer
(This project seeks one or more co-maintainers.)
Support Nag:
------------
If you would like the support ticket system to remind users about open tickets,
and to automatically update the status of old tickets, you can install the
support_nag module:
http://drupal.org/project/support_nag
(This project seeks one or more co-maintainers.)
Support SMS:
------------
If you would like to schedule SMS notifications to be sent for tickets, you can
install the support_sms module:
http://drupal.org/project/support_sms
(This project seeks one or more co-maintainers.)
View source
- Overview
- --------
- The Support module allows you to manage Tickets in any number of queues,
- referred to by the module as "Clients". Each Support Client gets a logically
- distinct ticket queue, and a ticket can only be assigned to a single Client at
- a time. Drupal users must be granted access to Clients to see tickets in a
- given Client queue, and can either be granted limited access to only see the
- tickets they created themselves or are explicitly assigned to them, or complete
- access to see all tickets assigned to the Client.
-
- Tickets can only be assigned to up to one Drupal User at a time. Tickets always
- have a Priority (low, normal, high, critical) and a State (new, active, pending,
- closed).
-
- Support Clients can be optionally integrated with email allowing tickets to be
- created and updated by email. Notificiation emails can be generated by the
- support module when tickets are created or updated. A Drupal User must be
- subscribed to a ticket to receive email notifications. There is no limit to the
- number of Users that can subscribe to an individual ticket. Inidividual Clients
- can be configured to auto-subscribe specific Drupal Users to new tickets.
-
- In Drupal terms, a Ticket is a Content Type, so Tickets are Drupal Nodes. Ticket
- Updates are Drupal Comments.
-
- You must create at least one Client to use the Support module. There is no
- inherent maximum limit to the number of clients you can create. Read on for
- step by step directions to get started with the Support module.
-
-
-
- Installation
- ------------
-
- 1) Enable the module.
-
- 2) Edit 'Administer >> Content management >> Content types >> Support ticket'
- a) Set the desired Submission form settings (such as Title field label, Body
- field label, Minimum number of words, etc)
- b) Set the desired Workflow settings
- c) Set the desired Comment settings (recommended):
- - make comments read/write
- - make default display mode 'flat list - expanded'
- - make default display order 'Date - oldest first'
- - increase default comments per page
- - do not display comment controls
- - disable the comment subject field
- - display comment submission form below post or comments
-
- 3) Go to "Administer >> Support >> Clients >> Add client" and create one or
- more Support clients.
-
- If you only want to track tickets online, and send out notifications as
- tickets are created and updated, simply define the 'Client name' and 'Path'.
- If you want the ability to create and update tickets via email, you will
- need to open the 'Inbound email integration' section, check 'Integrate
- email', and fill out the rest of the information in that section. If
- integrating inbound email, you will need to create an email account for
- each client -- support will use this account to send and receive email.
- More information can be found in MAIL.txt.
-
- 4) If creating multiple Support clients, go to "Administer >> User management
- >> Roles" and create one role for each Support client. (This is an optional
- step and is only required if you want to prevent one client from viewing and
- updating the tickets of another client. If you are using this ticketing
- system internally, this may not be important to you.)
-
- 5) Go to "Administer >> User management >> Permissions" and assign the desired
- permissions. A user will need at least one "access CLIENT tickets"
- permission and "create tickets" permission to be able to create tickets.
- Users can only create and update tickets for clients they can access.
-
- Users with "can suppress notification" permissions have the option to
- manually disable a notification email from being sent out. An email will
- still get sent to admins telling them that an update has been made but not
- showing the contents of the update. This feature allows passwords and other
- sensitive information to be added to tickets without being sent out as a
- plain text email.
-
- Users with "can assign tickets to self" permissions are able to assign a
- ticket to themselves, or to assign the ticket to nobody.
-
- Users with "can assign tickets to any user" permissions are able to assign
- a ticket to themselves or to another user. Only users with permission to
- view a given ticket can be assigned to it.
-
- Users with "can subscribe other users to notifications" permissions are able
- to subscribe other users to email notifications when a ticket is updated.
- Users without this permission can only subscribe themselves. Only users
- with permission to view a given ticket can be subscribed to notifications
- for it.
-
- Users with "download mail via support/fetch" permissions can access the path
- "support/fetch" which will cause the Support module to download all client
- email. Mail is also fetched when Drupal's cron is run, but this allows mail
- to be checked at a different frequency than cron is run, if desired. If you
- are using Support's mail integration features and you are running Drupal's
- cron, you do not ever need to access support/fetch.
-
- Users with "view other users tickets" permissions can view all tickets for
- any client that they have "access CLIENT NAME tickets" permissions. Users
- that do not have this permission can only view tickets that they themselves
- have created. Users with "administer support", "edit any ticket" and/or
- "delete any ticket" permissions can always "view other users tickets" whether
- or not they are explicitly granted this permission.
-
- Users with "edit multiple tickets" permissions will be able to add updates
- and change the state and priority of multiple tickets from the client
- overview pages.
-
- When creating and modifying tickets, users with "can select client"
- permissions can assign the ticket to any client that they have permission
- to access tickets for.
-
- When creating and modifying tickets, users with "can select priority"
- permissions can set the priority of the ticket.
-
- When creating and modifying tickets, users with "can select state"
- permissions can set the state that the ticket is currently in, based on
- the workflow defined in the support_states database table. By default, this
- means that new tickets must be in the 'new' state, and only upon updating a
- ticket can the user set the state to 'active', 'pending', or 'closed'.
-
- Users with "can administer state" permissions can change the state of any
- ticket from any state to any other state, ignoring the workflow defined in
- the support_states database table.
-
- Users with "move ticket" permissions and permission to edit a ticket see a
- new "Support ticket" fieldset with a "Move ticket" field allowing them to
- specify a parent node id which will cause the ticket and any updates to be
- moved and become updates on the specified node id. Note that this only
- allows for moving an entire ticket and all its updates, not specific updates.
-
- Users with "administer support" permissions can access and update all
- clients and client tickets, and automatically have all support permissions
- available to them.
-
- NOTE: If you have integrated email for any of your clients and you wish to
- save email attachments then the user running Drupal's cron (usually the
- anonymous user) must have "upload files" permissions. You can set this on a
- per-content-type basis using the Upload Permissions Per Content Type module:
- http://drupal.org/project/upload_perm_per_type
-
- --------
- Optional
- --------
-
- Comment Upload:
- ---------------
- If you would like to be able to attach files to support ticket updates, you
- can install the comment_upload module:
- http://drupal.org/project/comment_upload
- Once the module is enabled, visit "Administer >> User management >> Permissions"
- and grant "upload files to commnts" and "view files uploaded to comments" to all
- roles that should be allowed to attach files to support tickets. Finally, visit
- "Administer >> Content management >> Content types" and click "Support ticket".
- In the "Comment settings" section enable "Attachments on comments".
-
- NOTE: If you have integrated email for any of your clients and you wish to save
- email attachments then the user running Drupal's cron (usually the anonymous
- user) must have "upload files to comments" permissions. You can set this on a
- per-content-type basis using the Upload Permissions Per Content Type module:
- http://drupal.org/project/upload_perm_per_type
-
- Support Charts:
- ---------------
- If you would like to generate charts from ticket statistics, you must first
- install the Google Charts API module:
- http://drupal.org/project/chart
-
- Support Timer:
- --------------
- If you would like to enhance the support ticket system to also be a time tracker
- you can install the support_timer module:
- http://drupal.org/project/support_timer
- (This project seeks one or more co-maintainers.)
-
- Support Nag:
- ------------
- If you would like the support ticket system to remind users about open tickets,
- and to automatically update the status of old tickets, you can install the
- support_nag module:
- http://drupal.org/project/support_nag
- (This project seeks one or more co-maintainers.)
-
- Support SMS:
- ------------
- If you would like to schedule SMS notifications to be sent for tickets, you can
- install the support_sms module:
- http://drupal.org/project/support_sms
- (This project seeks one or more co-maintainers.)