Spigot PureTickets - Ticket System with Discord Integration! 5.1.2

Easily manage player support / questions

  1. Broccolai updated PureTickets - Ticket System with Discord Integration! with a new update entry:

    Java rewrite, Integration overhaul and many fixes.

    Read the rest of this update entry...
     
    • Friendly Friendly x 1
  2. Hey, I installed the plugin and its working very nice, but I have a little problem concerning the discord-function.
    I've invited the bot on my discord-server, typed !setup in a text-channel and copied the guild id and the token into my config, but every time I create a ticket to test it, the channel keeps empty and the log says "401". Do you have any idea what I can to?

    Thanks and kind regards,
    JackVanDyke
     
  3. Hello!
    Make sure you're using the latest version and make sure that you're using the guild id and not the channel id and that the token is 100% correct. If neither of those work you can join the discord and dm me with a screenshot of the config (or if you don't have discord you can email me at [email protected]).

    I have some ideas for better errors with the discord part in the future
     
    • Like Like x 1
  4. Thank you for your time, today it is working, no error, no problem, but a message in the discord. Don't know why haha
    Like your plugin, thanks ^^
     
    • Friendly Friendly x 1
  5. Broccolai updated PureTickets - Ticket System with Discord Integration! with a new update entry:

    Bug fixes and wip events

    Read the rest of this update entry...
     
  6. ERROR ON TICKET CREATE
    [03:31:35 INFO]: RyanRet issued server command: /ticket create i am very gay
    [03:31:35 ERROR]: Could not pass event TicketCreationEvent to PureTickets v3.1.1
    java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Long
    at broccolai.tickets.storage.platforms.MySQL.getPureInteger(MySQL.java:85) ~[?:?]
    at broccolai.tickets.storage.functions.SettingsSQL.exists(SettingsSQL.java:58) ~[?:?]
    at broccolai.tickets.user.UserManager.get(UserManager.java:38) ~[?:?]
    at broccolai.tickets.interactions.NotificationManager.send(NotificationManager.java:112) ~[?:?]
    at broccolai.tickets.interactions.NotificationManager.onTicketCreation(NotificationManager.java:174) ~[?:?]
    at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor75.execute(Unknown Source) ~[?:?]
    at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:69) ~[patched_1.16.3.jar:git-Paper-195]
    at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:76) ~[patched_1.16.3.jar:git-Paper-195]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[patched_1.16.3.jar:git-Paper-195]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:607) ~[patched_1.16.3.jar:git-Paper-195]
    at broccolai.tickets.ticket.TicketManager.onTicketConstruct(TicketManager.java:228) ~[?:?]
    at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor77.execute(Unknown Source) ~[?:?]
    at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:69) ~[patched_1.16.3.jar:git-Paper-195]
    at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:76) ~[patched_1.16.3.jar:git-Paper-195]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[patched_1.16.3.jar:git-Paper-195]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:607) ~[patched_1.16.3.jar:git-Paper-195]
    at broccolai.tickets.commands.TicketCommand.lambda$onCreate$0(TicketCommand.java:42) ~[?:?]
    at broccolai.tickets.lib.taskchain.TaskChainTasks$GenericTask.run(TaskChainTasks.java:83) ~[?:?]
    at broccolai.tickets.lib.taskchain.TaskChain$TaskHolder.run(TaskChain.java:1312) ~[?:?]
    at broccolai.tickets.lib.taskchain.TaskChain$TaskHolder.access$100(TaskChain.java:1266) ~[?:?]
    at broccolai.tickets.lib.taskchain.TaskChain.lambda$nextTask$18(TaskChain.java:1187) ~[?:?]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:1.8.0_262]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_262]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_262]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_262]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_262]
     
  7. Hello,

    A very impressive plugin. Very pleasantly surprised that everything worked straight away, even the Discord integration.

    Would like to volunteer my time/effort/servers to tweak your plugin a little so that it supports Bungeecord/Waterfall. I have a dozen Paper servers all accessed via the a Waterfall proxy and all of those servers share the same PureTickets config file and MySQL database. This allows my players to access and update their tickets regardless of which Paper server they are connected to at the time.

    That all works reasonably well already, but with just one minor cosmetic issue: if a ticket is listed/updated on a different server to the one it was originally created on, the world name is always displayed as blank from within the game and as "unknown" in the integrated discord channel.

    Any chance of being able to show and preserve the original Spigot/Paper server name and world name where each ticket was created? Standing by ready to assist if so.

    Hugs.
     
  8. SlimeDog

    Moderator Patron

    Please retain SQLite as an option.
     
  9. Maintaining both mysql queries and sqlite queries was more hassle for me than it was worth H2 is very similar, it's still a file inside the plugin folder,
     
  10. SlimeDog

    Moderator Patron

    I am completely unfamiliar with H2. I am searching for a command-line SQL client (I find RazorSQL). Perhaps there is a native H2 package on Linux, but I haven't found it. Do you know the Linux package name, and the command to open and inspect the database content?
     
    #75 SlimeDog, Mar 21, 2021
    Last edited: Mar 21, 2021
  11. Yeah, RazorSQL is fine and works well but is gui only afaik, you can also download the official h2 tool from http://www.h2database.com/html/download.html. You want the platform-independent zip.

    Inside the zip and the bin folder run
    Code (Text):
    java -cp h2-1.4.200.jar org.h2.tools.Shell
    This will open a shell. When it asks you for the url you put the jdbc url with this at the end
    Code (Text):
    ;MODE=MySQL;DATABASE_TO_LOWER=TRUE
    for my queries to work specifically, if you're using your own queries you'll probably only need DATABASE_TO_LOWER

    An example of the url would be:
    Code (Text):
    jdbc:h2:/home/broccolai/dev/minecraft/server/plugins/PureTickets/storage.db;MODE=MySQL;DATABASE_TO_LOWER=TRUE
    You can use the defaults for driver, user and pass.
     
    #76 Broccolai, Mar 21, 2021
    Last edited: Mar 21, 2021
  12. SlimeDog

    Moderator Patron

    Thanks, but ... sheesh! Compare to: sqlite3 <databaseFile>

    PureTickets is the only plugin, of 170+ we test, that requires H2 (only two others even offer H2 as an option). :(
     
    #77 SlimeDog, Mar 21, 2021
    Last edited: Mar 21, 2021