Desk-Net can integrate other services and systems in a particular way: with a Message Queue.
I - What is a Message Queue (MQ)?
A Message Queue (MQ) is an option for integration with systems that are permanently installed in a corporate network. It establishes asynchronous data transmission between two communicating applications. In this process, the sender and receiver of messages do not have to interact simultaneously: All messages that the sender transmits to the MQ are stored there until the receiver retrieves them.
II - Advantages of the MQ:
- each customer account has its MQ with a unique name
- information transmitted to the MQ can be stored
- no information is lost during maintenance or system downtime on the receiving side
- one Desk-Net account can also have several MQs
III - How does the MQ work?
The MQ integration connects Desk-Net to the customer's system, such as a CMS (Content Management System). Desk-Net delivers data to the MQ when a new topic is entered into or updated in Desk-Net.
The MQ feeds the information that new data is available to the connected CMS. This retrieves the announced data running continuously under the same ID.
Desk-Net sends an update when a topic entry (message, item) is created, deleted, or at least one of the following fields is changed in Desk-Net:
Topic description with
- short title
- note about the topic
- added location
- group assignment ("entry belongs to...")
- custom fields
- appointment data added or changed
- appointment data (date, time) changed
Production description with
- task(s) assigned / removed
- assigned users
- delivery deadline with date, time
- note on the task
- modification of the task
Publication description with
- channels added / removed
- changes in category and type of channel
- publication status
- publication date or time
IV - Technical Basics:
Our message queue is based on the Apache ActiveMQ. The ActiveMQ is free (open source) and subject to the Apache 2.0 ASF license terms.
It can be used by applications in different languages and supports industry-standard protocols like:
Desk-Net has its own ActiveMQ instance.
Customers who wish to have MQ integration with us should either implement an ActiveMQ client or configure their existing ActiveMQ client to be able to connect to our ActiveMQ instance.
Code samples for different languages and communication protocols can be found here: https://activemq.apache.org/cross-language-clients
ActiveMQ documentation can be found here: https://activemq.apache.org/components/classic/documentation
When a customer prepares their MQ client and asks Desk-Net to set up the integration for their organization, our technical team makes the necessary changes (enable integration, prepare credentials, provide communication details/endpoints) and submits these details to the CMS.
To enable the customer to track the changes, we give them read-only access to their MQ.
When an element change is made, we send the ID of the element and timestamp to the MQ (JSON format):
Where: elementId is the element ID, and modificationDate is the date and time when this message was created or an update was performed.