Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

In this Discussion

osTicket v1.10 (stable) and Maintenance Release v1.9.15 are now available! Go get it now

Fundamental Redo of the client interface to allow greatly simplified non-breaking customizations

I have been thinking on this a lot lately.  One of the problems with any ticket/workflow/task management system is an interface that is hard to change independently of the updates of the system itself.  It becomes a barrier to usage and makes many packages completely unusable for most companies.

The only solution to this that I am aware of that works over time is to separate the interface from the code, providing APIs in the backend, allowing for an independent development track of the front end.  I have read so many great ideas on the message boards here and comments on the internet in general.  I see a much greater potential for this product.  So much so that I have not allowed us to go to another product.

However, as with all things, it is time to start looking at what may be as opposed to what is.  I have not talked with anyone on the development team, so I do not have any idea what the next life phases are for this product, but I do have a vision in my head that I think would greatly improve upon this product and allow you to expand and replace other products currently in use.

Here is what I think the most important tasks ought to be for the future.  I apologize if these are not fleshed out much, but I did not want to write a novella in here.

  1. Separate the interface (client) from the backend (server).
    By tying the two together you are limiting how much focus you can do on one or the other.  Any change to one has to be worked into the other.
    Untying these allows the development of vastly improved user interfaces using different languages and systems.
    Untying these allows easier addition of server functionality.
    The biggest advantage to doing this is allowing other developers to tie into your application to greatly multiply its functionality by integrating it with their own systems (or from your hosted perspective, other products).  This would greatly leverage your income potential.

  2. Combining the users and agents into one table, allowing promotion and demotion without losing track of conversations.
    Support teams exist throughout an organization, most with little to no IT experience.
    Allowing a simple checkbox to apply a promotion to give a user agent status makes it vastly more simple to organize a company's various support teams.
    Simplifying this one thing would help expand company penetration of your product for all kinds of 'supportish' functions, from sales support to maintenance department jobs to IT tech support.

  3. Developing a custom Support Form interface, or at least providing an API that allows a custom form to be easily developed and implemented.
    Many of the forms in support issues are simple, but some, as is the case of many Maintenance forms, are complicated beasts.
    Maybe simple forms are fine with the current setup and complicated ones should be able to be written by a developer?
    Having the ability to do just that will generate more income opportunities for your product and provide more market penetration as well.

  4. Develop a custom data extension.  True, you have one started already, but...
    Can it be used with an API from an outside application to CRUD? (Think integration with other apps and systems)
    Can it be ACL controlled for those CRUD operations?  I might want sales making some updates to one set of data, but Production Control to another.

  5. Tasks.  I know these are limited in your system but they are huge in fixing so many problems in the real world.
    BPMN (Business Process Management Notation) is one such tool that can greatly ease the development of process based solutions.
    This is a heavily tasked based markup as are most of the tickets our company need to manage.
    I create a solution flow and then add processes to it with conditionals to select and document what needs to be accomplished.
    BPMN is a heavy weight and is asking too much of any small team to develop, but it has packages out there already due a lot of the work.
    There are other packages to do this, and other process flow tools.  THis is my personal favorite, not necessarily the best.
Okay.  Five is enough if not too much.  Please let me know your thoughts on these.  This will greatly help me gauge where my time should be spent and which way to develop.  Truly this is a good package and I thank you for it being made available the way you have.  I would be happy to be able to help in its future growth with the limited time I have.



  • I appreciate the feedback and like that you've got ideas. I skimmed your post twice so I apologize if I missed something, or misunderstood something.  I am working but wanted to reply 

    1. has been suggested before and boils down to: making osTicket themable and providing an more API (right now you can open tickets).  Both of which is supposed to be pushed forward with 2.0.

    2. I do not think that this is going to happen, it would necessitate a complete rewrite for the departments and teams.  Also the product is already being used "for all kinds of 'supportish' functions, from sales support to maintenance department jobs to IT tech support."

    3. You can already do this?

    4. More API stuff is coming with 2.0.

    5. I'm not real sure what you mean by this one.  Tasks are very rudimentary right now [and imnsho were probably not ready to be included when they were] but my understanding is that there should be more task based functionality coming at a future time. [Sadly I'm not privy to what or when].  I also personally consider them almost unusable in their current incarnation.  They do not appear to like IIS.
  • As always, thank you Neil! (I believe that is your name?)

    1)  I look forward to seeing what this API will be!  I would love to apply an angular application to this.

    2)  I am probably either not thinking about how to do it correctly or not explaining well enough what I am thinking.  I should probably break this into a separate post explaining what I am trying to do to get feedback on what I am missing.

    3)  Yes you can kind of.  I am attaching a form to this to give you an idea of what they need.  I would really like to do this as a web page app with angular or some such simlar tool

    4)  Eagerly awaiting this too then!

    5) I agree that they are almost unusable at the moment, but I figured it was just a last minute addition just to see what people would want.  If you get a few minutes (okay 30) to look at the  BPMN web site, it will make more sense.

  • edited August 2017
    I finally got permission from management to share this document.
Sign In or Register to comment.