PUBACK

Publish Acknowledgement

This message is the response from the receiving end to a PUBLISH message of QoS 1. See the Protocol Flow section for more details. In the case of a PUBLISH being sent by a publishing client, this would be from the broker. It is also the response from a subscriber upon receiving a PUBLISH message of QoS1 from the broker.
 
 

Fixed Header

See the Fixed Header section for more information,
 
bit
7
6
5
4
3
2
1
0
byte 1 
Message Type (4)
DUP flag
QoS level
RETAIN
 
0
1
0
0
 x
x
x
byte 2 
Remaining Length (2)
 
0
0
0
0
0
0
1
0

 

QoS level

The QoS level is not used for the PUBACK message.
 

DUP flag

The DUP flag is not used for the PUBACK message.
 

RETAIN flag

The RETAIN flag is not used for the PUBACK message

Remaining Length

The Remaining Length is the length of the Variable Header (2 bytes)
This may be a multi-byte field. See the Fixed Header section for more details.
 

Variable Header

The Variable Header portion of the PUBACK message contains the Message Identifier of the PUBLISH message that is being acknowledged.

See the Variable Header section for more information.
 
 
bit
7
6
5
4
3
2
1
0
byte 1
Message Identifier MSB
byte 2
Message Identifier LSB

 

Payload

NONE
 

Actions

Upon receipt of a PUBACK message, the client can discard the original message, as it has now been received and logged by the broker. For more discussion on actions to be performed, see the Protocol Flow section.
 


Discussion

ASC on DUP flag
The protocol flows for QoS1 do not require the use of the DUP flag, so it has been dropped.
AN on Payload
At this point in time I do not envisage the need for any payload contents in the PUBACK response from the broker. If there is any information that needs to be conveyed from the Argo broker within the PUBACK message then it should be defined here.
BACK to index 
Last Modified: 19-Oct-99