Inform Threema contacts about ticket events
Robert Ullrich17. May 2018 | ConsultingCyber SecurityMiscellaneousUse cases
From time to time I missed the possibility to inform agents via Threema about ticket events. Last week I had a customer from the cybersecurity sector, who needs the possibility to inform agents via Threema. Because I really like this use case, I want to show you how you can build such a “ThreemaConnector”.
The first step is to create an account for the Threema Gateway (https://gateway.threema.ch/en).
Afterward you must request a new Threema ID. Pay attention because there are two types of Threema IDs:
- The private key will be generated and stored by Threema
- Messages can be sent
- Messages cannot be received
- The private key will be generated and stored by the customer
- Messages can be sent and received, including delivery reports (delivered, read, acknowledged).
In this blog article, I’m using the Basic Threema ID. Later I’ll also show you how to receive Threema messages in OTRS. :-)
After you registered your Threema ID and received your confirmation email, we can start with our ThreemaConnector in OTRS. As usual, there are some requirements:
OTRS Requirements for this HowTo
- at least OTRS 6.0.x
You need the following OTRS Feature Add-On:
(Adds new invoker for TicketCreate and TicketUpdate in the GenericInterface.)
Third Party Software
You need this third-party software:
Configure the ThreemaConnector in OTRS
Now we can start to configure our ThreemaConnector. The first task is to create a new web service in OTRS.
Now we can continue with our invoker(s). I’m saying invokers because we need one invoker per recipient.
Let’s start with the configuration for the invoker “NotifyViaThreema”:
The most important part is the XSLT mapping and the event trigger for this invoker. You can use my XSLT mapping:
Because I don’t want to send a message every time when a ticket is created, I define a condition for this invoker:
The last step is the configuration of the network transport. The Threema API is expecting everything as parameters. Because of this, we have to work with variables:
That’s all! Now we’re ready to start with our tests. At first we need a new ticket with a priority = 5 very high (my condition for the invoker).
After ticket creation, we should receive a Threema message. As an alternative we can also check the debug logs of our web service:
And on the recipient’s cell phone: