Welcome to BIG Help. BIG Help is an open-source help ticket system that can be used by consumer-focused web companies. BIG Help is designed to be a simple (and free) alternative to online services such as HelpSpot and Kayako.
BIG Help is currently live and in production at BIG Folio. You can see it in action on our help page.
- Configurable categories
- Create categorized FAQs
- Simple support form for customers
- When a customer chooses the category of their request, FAQs from that category are presented (via AJAX)
- Support requests are assigned a unique ticket “key”
- Email confirmation sent to customer upon initial request
- Email sent to all support staff (users) who choose to receive alerts for that ticket’s category
- Support staff can create replies to a ticket
- Ticket replies are emailed to the customer
- Support staff can attach files to a reply. Files are available in-browser and attached to the email.
- Tickets have a state of “Fresh”, “Active”, and “Closed”
- Support staff can upload an avatar
- Fairly robust search
- Mobile views: mobile-friendly view is rendered when used on an iPhone (haven’t tested other mobile devices)
- mislav-will_paginate (for pagination of tickets view)
- chronic (for date range search)
- rmagick (for attaching images to threads via Paperclip)
- Create your database
- Edit the config/database.yml file
- Edit the config/config.yml file (see below)
- Run migration(s) with rake db:migrate
- Edit the views in app/views/help/index.html.erb app/views/help/contact.html.erb (see below)
- Fire up your mongrel(s) or mod_rails
- Browse to /signup and create your initial user account (have your staff do the same)
- Once your staff has created accounts, you’ll want to turn off the /signup route and users/new action (see below)
The config.yml file contains settings about your app and company. You should edit this file with your information. When BIG Help starts, these values are loaded into the AppConfig hash and used in the layouts, views, and email methods.
The root of the app is routed to /help/index, which renders the /app/views/help/index.html.erb file. This is designed to be a general entry point for your customers. Personally, I like to present customers with FAQs or a Wiki before letting them submit a ticket. If that’s not your style, you can change map.root to route to help/new (in config/routes.rb).
You should do the same for the contact page.
BIG Help uses the restful-authentication plugin for support staff access. When you initially fire up the application, you can create new support user accounts by going to /signup. Obviously, once you have created your support accounts, you’ll want to turn off signups. You should do this by:
1. Comment out the /signup route in config/routes.rb
2. Uncomment the redirect_back_or_default(‘/’) line in the users controller (new action)
3. Restart your app
I’m sure there are better ways to do this, but it works for me. YMMV
When a customer submits a support ticket, they are presented with a unique 8-character “key” or “token”. The key can be used to look up their ticket later. If you’d like the change the length, you’ll find it defined in the Ticket model file (app/models/ticket.rb).
BIG Help wouldn’t have been possible (or at least not as cool) without the following great projects/plugins/gems:
- Paperclip plugin from Thoughbot
- restful_authentication plugin from Technoweenie
- jRails plugin
- Fckeditor from Frederico Caldeira Knabben
- mobile_fu plugin from Brendan G. Lim, Intridea, Inc.
- Ruby on Rails from 37signals (natch)