- Expanded functionality (the ability of such systems to absorb interaction with social networks, IP telephony or other mobile apps);
- Automated requests/tickets handling (providing automated processing rules);
- Modules management and data systematization.
During over 16 years of work in field of development of miscellaneous support systems, Scand development team has acquired a great experience in developing solid fast working and reliable modules for HelpDesk software and the one that is under discussion in this paper is the recent development: J-GroupDesk.
The module succeeds in dealing with a user or user group data. The strongest point of this software is that it does not only provide automatic user registration, email and intragroup notifications but what’s more important the module scans the user’s preferences and could send invitations to join already existing groups. The best application of the product based on its functionality could be the business sphere.
The module of J-GroupDesk supports such functions as:
- Automatic user account creation, e-mail notification.
- Opportunity to manage users’ invitation requests bypassing moderator’s assistance.
- Capability to send messages to all members of the group.
- Reliability and module stability module and its ability to process a big number of users and concurrent inquiries simultaneously.
- REST and/or SOAP communication protocol support.
- Adequate speed and minimum memory consumption on processing numerous requests.
- Integration with Atlassian Jira Service Desk.
As you see there were many things taken into consideration while the module was in the process of development. And the first nut to crack was the programming means. After a while, Scand development team decided to use Go programming language as the most suitable for this kind of operations. The Golang is an open source language by Google, a decent network programming one with a lot of frameworks that meet the required functionality. Programming on Golang is beneficial as it creates the clear source code.
With the help of standard tools (packages http, net, websocket, html, and xml) and within a reasonable period of time J-GroupDesk module with complex internal structure was developed.
Golang supports concurrent programming and HTTP load balancer, so in the end, it was quite easy to implement the function of sending and processing a large number of requests by distributing the requests across the available processing resources.
Making products on Golang is handy as the developed well-operating J-GroupDesk module allocates minimum system resources due to lower resources required for go routines (‘green threads’) over a system thread as well as having in supply a dynamic stack and a concurrent garbage collector.
J-GroupDesk allows organizing users’ registration and managing users’ groups being implemented in different kinds of HelpDesk systems. It is easy to use and set up. The module can be reused in order to create integration extensions for any popular REST API-based system or web-services (Atlassian Jira Service Desk, Atlassian Confluence, Slack, etc.).
If you are interested in any Web-Application or other software development with similar functionality, please, do not hesitate to contact us.