Pushing messages to a remote (legacy) system over internet including VPN/IPSec tunnels is still a shaky thing. Connection timeouts, read timeouts, proxy failures, network issues, expired certificates (YES! Really!) and webservices that respond with weird http status codes.
Queuing message and having control over the messages at a very detailed level is very important. Lomnido therefore provides out of the box concepts that can be configured with just a few clicks.
FIFO Queue, Error Handling and Retry
Read the article Fail Fast – Succeed Faster – there the messages queuing and error handling are already explained there.
HTTP Push Error Handling
The most used Connector is the HTTP Push Connector. By default, an HTTP message is marked as delivered, when the remote web server answers with a HTTP 2xx response code.
But sometimes it is not as easy. Sometimes you also have to analyze the response headers and body. Imagine a web service that returns HTTP 200 but you have to handle error messages in the body.
Or you would like to mark also messages as delivered if the server returns HTTP 404 with a special text in the response body.
HTTP Response Rules
Therefore, you can configure HTTP Response Rules to override the default behavior. In the two screenshots you see once an example to handle a special HTTP 200 response as an error and an example were we handle an HTTP 500 response as delivered.
Complex Response Handler