gdaws/stompit

Implementation of message acknowledgment is incompatible with STOMP 1.2

Closed this issue · 0 comments

STOMP 1.2 is mostly backward compatible with STOMP 1.1. There are only two incompatible changes:
it is now possible to end frame lines with carriage return plus line feed instead of only line feed.
message acknowledgment has been simplified and now uses a dedicated header.

According to STOMP 1.1 ack frame should look like:

ACK
subscription:0
message-id:007
transaction:tx1

^@

and this is how the package prepares an ACK frame. You may look at there.
But for STOMP 1.2:

ACK
id:12345
transaction:tx1

^@

I see that we receive a broker's STOMP version from frame 'connected' and save it in a socket. So theoretically it should be possible to rely on it to send correct ACK/NACK frames depends on the broker's supported STOMP, yes? Or another fast solution just to except 1.2 from a header ' accept-version.
The main question is are you going to do something with that, or I may try to create a pull request to fix that?