Simple Help Tickets
Simple Help Tickets
Description:Simple Help Tickets provides a simple and effective system for users to request the assistance of an admin. Starting out as a rather lightweight plugin I threw together for personal use and decided to share, it has continued to expand due to popular demand. By using /ticket a user can open a help ticket, which can then be reviewed and dealt with by an administrator. Both users and admin are able to reply to tickets to further dialogue regarding a ticket. If a user logs in and an open ticket has received a reply from an admin, they will be notified of the change.
Installation:Updating to 1.0
If you are updating to 1.0 you will need to start with a fresh database.
If you're using SQLite simply delete Tickets.db in SimpleHelpTickets plugin directory
MySQL users, delete the table SHT_Tickets in your database, it will be replaced on server start.
1. Download the .jar
2. Place the .jar in your plugins directory
3. Restart the server
Configuration:
• MaxTickets
Maximum number of tickets per user.
• TicketExpiration
Number of days before a closed ticket expires
• NotifyAdminOnTicketClose
Users with the sht.admin permission will receive a message when a ticket is closed.
• MultiWorld
If using more than one world, take/check ticket will display the appropriate world name in ticket details
• OnJoin
Display number of personal tickets to user / total tickets to admin upon join
• USE_MYSQL
Whether to use MySQL instead of SQLite output.yml
• Use to customize plugin output (Language / Formatting)
Commands:
• /helptickets - SimpleHelpTickets Menu.
• /ticket (description) - Open a help ticket.
• /tickets [-a/-c] - List Open/All/Closed tickets.
• /checkticket <#> - Check the details of a ticket.
• /taketicket <#> - Assign self to a ticket. (and be teleported to the location is was set)
• /replyticket <#> <reply> - Reply to a ticket
• /closeticket [-r] <#> - Close a help ticket.
• /delticket (#) - Delete a help ticket.
• /purgetickets [-c/-a] - Purge expired, Closed or All tickets
Permissions:
• sht.ticket - Open a help ticket.
• sht.admin - Administrate help tickets.
• sht.reload - Reload SimpleHelpTickets.
To Do:
•
•
•
•
•
Web GUI
By popular demand, a Web GUI is available for SimpleHelpTickets.
You can download it below. • SimpleHelpTickets Web GUI
Thankyou for your support! :D Recent Change-Log:
1.4
- Updated for Spigot API 1.10.2
- UPDATED: Updated for new UUID system
(Caveats: UUID not translated to player name)
- Fixed: bug when reopening a ticket
1.3.6
- FIXED: MaxTickets not limiting the amount of tickets a user can open
- FIXED: User OnJoin notification of open tickets repeating itself
- FIXED: MySQL Connection Check. (Merged PR: TheCutter)
1.3.5
- Updated extra formatting to not interfere with colour codes
- Recoded ticket.class
- Fixed "CONSOLE has opened a ticket" bug for MySQL users
- Fixed notification of admin reply on user join
1.3.4
- Added bold/italic/underline/strike/reset to output.yml
- Fixed typo in output.yml
- Added check to getconnection in mysqlconnection.java to ensure connection is established, and if not re-stablish connection before continuing.
1.3.3
- minor bugfix: Users rceiving notification about open tickets even if tickt is/are closed
- minor bugfix: Prefix removed from 'No Tickets To Display' message
- minor bugfix: Instances of getDisplayName changed to getName in closeticket & taketicket (Fronix)
- minor bugfix: A few typos in output.yml have been fixed (if your output.yml is unchanged, delete it before starting your server to generate a new one)
-
View User Profile
-
Send Message
Posted May 10, 2012great plugin!i help a lot of player on my server!
-
View User Profile
-
Send Message
Posted May 9, 2012I wish there was something that would show your users that you have replied on theyre tickets. Because they are kind of one way now, even when you reply.
-
View User Profile
-
Send Message
Posted May 7, 2012would be sort of nice if a ticket were hidden from admins upon reply and there were a command to reply to replies that would cause the ticket to reappear.
Also, i would sort of like the ability to have multiple tiers of admin... point in fact, my server has 3 tiers Mod > Admin > Owner and each has progressively more powers, and also generally knows the operation of the server better... So, ability to escalate the ticket up and only the current level of admin able to see it.
Finally, if there is no reply at all on a ticket that is waiting on a user, the ticket should delete automatically after a configurable time. Though, perhaps be highlighted or auto-escalated if it is unresponded to on the admin side.
-
View User Profile
-
Send Message
Posted May 7, 2012Works great, very organized. If there were one thing I would suggest about the plugin is to add an alias for the different commands, making it more practical. For example, /closeticket = /ct
Other than that, fantastic plugin, it makes a great solution for separating help requests from general chat!
-
View User Profile
-
Send Message
Posted May 7, 2012great plugin! It helps much on my server
-
View User Profile
-
Send Message
Posted May 5, 2012@halorrr
/checkticket #
-
View User Profile
-
Send Message
Posted May 5, 2012How does a player see the reply to their ticket?
-
View User Profile
-
Send Message
Posted May 4, 2012Thanks for your work with this plugin it is working great, very simple and lightweight. Is there any chance you will add MySQL support?
-
View User Profile
-
Send Message
Posted May 3, 2012@GrimblyGorn
You're using an outdated version.
-
View User Profile
-
Send Message
Posted May 3, 2012@Jadedwolfs
I'm having the same errors thrown too :(
-
View User Profile
-
Send Message
Posted Apr 30, 2012Looks like a great repl. for HelpTicket. Ive been using reportRTS, but i havent been happy with the fact that it doesnt let you comment (reply) to tickets. I shall test this when i get home! Thanks!
-
View User Profile
-
Send Message
Posted Apr 30, 2012@Jadedwolfs
What a delightful coincidence.
I'm just wrapping up ver0.7 and the lacking sanity checks were/are to be my finishing touch. :)
-
View User Profile
-
Send Message
Posted Apr 29, 2012@Odiumxxx
/checkticket and a few other commands are not being checked for null or invalid parameters. Thus getting this error.
2012-04-29 09:09:39 [SEVERE] null
org.bukkit.command.CommandException: Unhandled exception executing command 'checkticket' in plugin SimpleHelpTickets v0.6
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:42)
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:166)
at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:636)
at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:821)
at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:781)
at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:764)
at net.minecraft.serverhook.NetServerHandlerProxy.a(NetServerHandlerProxy.java:141)
at net.minecraft.server.Packet3Chat.handle(Packet3Chat.java:34)
at net.minecraft.server.NetworkManager.b(NetworkManager.java:229)
at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113)
at net.minecraft.serverhook.NetServerHandlerProxy.a(NetServerHandlerProxy.java:83)
at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:92)
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:622)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:506)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
at me.odium.simplehelptickets.SimpleHelpTickets.onCommand(SimpleHelpTickets.java:337)
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40)
... 14 more
______
if (cmd.getName().equalsIgnoreCase("checkticket")) {
int ticketno = Integer.parseInt(args[0]);
Is not accounting for null or invalid numbers.
______
You are not doing any sanity checking in your commands. Try this.
-
View User Profile
-
Send Message
Posted Apr 27, 2012@Jayyx2
No problem.
FYI: Console commands are fixed in 0.6
However, console is still unable to open a ticket or use /taketicket
( /taketicket is just /checkticket with teleport )
-
View User Profile
-
Send Message
Posted Apr 27, 2012@Odiumxxx
Oh okay. /tickets worked with no issues from the console in the previous version, and works in this version when there are no tickets. When there is 1 ticket or more, it errors. Just thought I would mention
-
View User Profile
-
Send Message
Posted Apr 27, 2012@drumming102
"ahh well don;t I feel dumb"
eh, it's not like I really specified it anywhere. :)
"Users with permission sht.admin will see # of current tickets upon joining not working for me"
Not working for me either, working on it now.
"when you reply to a ticket or close it the person filing it should get a Pop up right? they don't"
When a player with sht.admin permission closes a ticket, the person who opened the ticket should receive a message. If that's not the case it's a bug which requires fixing, I'll run some tests and see if I can replicate your problem and get back to you on that one.
As for a message when a ticket is replied to, I've just left that out for...no particular reason, hmm. Will add it now.
-
View User Profile
-
Send Message
Posted Apr 27, 2012"- Users with permission sht.admin will see # of current tickets upon joining (configurable in config.yml)"
not working for me.
also when you reply to a ticket or close it the person filing it should get a Pop up right? they don't. So the only way to know would be to do /tickets every 5 sec while waiting on a response
-
View User Profile
-
Send Message
Posted Apr 27, 2012ahh well don;t I feel dumb
-
View User Profile
-
Send Message
Posted Apr 27, 2012@drumming102
"You can;t reply to a ticket more than once........."
I was unable to replicate your error until I stumbled upon what I believe is the answer. You are not using the command properly.
you are typing /replyticket <reply> and have neglected to include the number of the ticket to which you are replying.
The correct usage is /replyticket <#> <reply>
Eg: /replyticket 3 I am replying to ticket number 3
(Thanks for using pastebin)
@Jayyx2
"Which permissions node(s) do I use so a user does not see all tickets, but just those opened by them?"
When a user types /tickets they will only see their own tickets, unless they have the sht.admin permission.
"can I prevent them from using /checkticket on tickets not created by them?"
A user can only check their own ticket, unless they have the sht.admin permission.
"Also wanted to mention, getting an error when using tickets from console"
See: Known Caveats - Limited access from console
I'll hopefully improve console commands in later versions.
-
View User Profile
-
Send Message
Posted Apr 26, 2012Also wanted to mention, getting an error when using tickets from console
tickets
01:28:49 [INFO]
Current Help Tickets01:28:49 [WARNING] Unexpected exception while parsing console command org.bukkit.command.CommandException: Unhandled exception executing command 'tickets' in plugin SimpleHelpTickets v0.5 at org.bukkit.command.PluginCommand.execute(PluginCommand.java:42) at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:166) at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:479) at org.bukkit.craftbukkit.CraftServer.dispatchServerCommand(CraftServer. java:475) at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:596) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:565) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:449) at net.minecraft.server.ThreadServerApplication.run(SourceFile:492) Caused by: java.lang.NullPointerException at me.odium.simplehelptickets.SimpleHelpTickets.onCommand(SimpleHelpTickets.java:318) at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40) ... 7 more