This microservice allows integration of any ticketing platform with Cumulocity IoT. It supports integration with webMethods AgileApps out-of-the-box. However, for integration with other platforms like ServiceNow, ZenDesk, etc. it relies on other integration platforms like webMethods.io.
Please refer to https://github.com/SoftwareAG/c8y-ticketing-integration-accelerator for complete overview of the Ticketing Integration Accelerator for Cumulocity IoT.
- Download the latest
ticketing-{version}.zip
file from the Releases section. - Switch to Cumulocity IoT
Administration
app using App Switcher. Upload the downloaded microservice zip file. Steps vary based on Cumulocity IoT version you are using. Please refer to Cumulocity IoT documentation. - Subscribe the microservice. Steps vary based on Cumulocity IoT version you are using. Please refer to Cumulocity IoT documentation.
- Refresh the page and click on
Logs
tab to view the microservice logs and if there any potential errors.
- webMethods AgileApps
- Ensure you have AgileApps tenant reachable from Cumulocity IoT tenant.
- Create a AgileApps user account that has read and write access to
Cases
object inService Desk
application. Tickets will be created as records inCases
object. - Create a record in
Accounts
object and get it'sRecord id
. Case records will be linked to this Accounts record.
- Other ticketing platform
- Microservice expects access to three APIs to integrate with a Ticketing platform using Basic Authentication.
- Get tickets - To get tickets from the Ticketing platform.
- Get ticket comments - To get comments related to a ticket from the Ticketing platform.
- Create ticket - To create a new ticket in the Ticketing platform.
- Three APIs need to be as per the API definition in the swagger file
apis-swagger.yaml
attached in the Releases section. - Three APIs can be developed and made accessible using any platform. webMethods.io is recommended as it provide connectors for almost all the ticketing platforms out-of-the-box and allows to create APIs by importing the swagger file.
- Microservice expects access to three APIs to integrate with a Ticketing platform using Basic Authentication.
- Refer to https://cumulocity.com/guides/microservice-sdk/java/#create-the-application and create a proxy microservice application. Provide name as 'ticketing-dev' and key as 'ticketing-dev-key'.
- Refer to https://cumulocity.com/guides/microservice-sdk/java/#acquire-the-microservice-bootstrap-user and get the bootstrap user credentials.
- I use
Spring Tool Suite 4.4.14.1
as an IDE. - Clone the Git repository on local machine using
git clone https://github.com/SoftwareAG/c8y-ticketing-integration-microservice.git
. - Uncomment the
application.name
,C8Y.bootstrap.register
,C8Y.bootstrap.tenant
,C8Y.baseURL
,C8Y.bootstrap.user
,C8Y.bootstrap.password
,C8Y.microservice.isolation
properties in thesrc/main/resources/application.propeties
file. - Provide values for
C8Y.bootstrap.tenant
,C8Y.baseURL
,C8Y.bootstrap.user
,C8Y.bootstrap.password
properties in thesrc/main/resources/application.propeties
file. - Update
microservice.name
toticketing-dev
in pom.xml file. - You may need to install maven dependencies using
Run > Maven install
and/ orMaven > Update project
. - Run the project as Spring Boot App. Microservice REST endpoints will be accessible at http://localhost/{endpoint-name}.
- (Optional) push the changes back to the repository after proper testing.
- Finish the development and testing on your local machine. Change the
version
in pom.xml file, if required. - Make sure you have docker installed. I have Docker version
20.10.14, build a224086
running on my windows machine. - Run
Maven clean
. ThenMaven install
to create the build. - Use
ticketing-{version}.zip
file in the target folder as a distribution.
These tools are provided as-is and without warranty or support. They do not constitute part of the Software AG product suite. Users are free to use, fork and modify them, subject to the license agreement. While Software AG welcomes contributions, we cannot guarantee to include every contribution in the master project.
For more information you can Ask a Question in the TECHcommunity Forums.
You can find additional information in the Software AG TECHcommunity.