We have a Clinical System, with MSMQ as its messaging backbone.
In our communication, the MSMQ sockets can only send or receive messages (with MLLP encapsulation).
An MSMQ receiving socket will send a TCP ACK/NAK to indicate that all is OK or not.
An MSMQ sending socket expects a TCP ACK/NAK to indicate that all is OK or not.
We wrote a PDL for this and apart from windows issues with high volume and load, it works well.
We don’t, but it is possible In Cloverleaf to route ‘message ACKS’ to create a ‘full-duplex’ Cloverleaf sending thread.