Replace the terms such as "Message Identifier" with "Packet Identifier" in all cases
Description
As Part of issue MQTT-17, it was proposed and agreed to use term "MQTT Control Packet" consistently and not "MQTT Command Message" in the specification.
However this change causes a problem in understanding of another term "message Identifier". Comments and discussion may be needed on the use of word Message Identifier and if it should be called as Packet Identifier. I am opening this JIRA issue for further discussion in TC calls.
example - from WD-04, line 383 - 385
"A non zero message identifier (MessageId) MUST be present in the variable header of the following MQTT command messages: PUBLISH(where Qos!=0), PUBACK, PUBREC, PUBREL, PUBCOMP, SUBSCRIBE, SUBACK, UNSUBSCRIBE, UNSUBACK "
In WD-05
"A non zero message identifier (MessageId) MUST be present in the variable header of the following MQTT Control Packets: PUBLISH(where Qos!=0), PUBACK, PUBREC, PUBREL, PUBCOMP, SUBSCRIBE, SUBACK, UNSUBSCRIBE, UNSUBACK "
Should message Identifier be called as Packet Identifier ?
As Part of issue MQTT-21, it was proposed and agreed to use term "MQTT Control Packet" consistently and not "MQTT Command Message" in the specification.
However this change causes a problem in understanding of another term "message Identifier". Comments and discussion may be needed on the use of word Message Identifier and if it should be called as Packet Identifier. I am opening this JIRA issue for further discussion in TC calls.
example - from WD-04, line 383 - 385
"A non zero message identifier (MessageId) MUST be present in the variable header of the following MQTT command messages: PUBLISH(where Qos!=0), PUBACK, PUBREC, PUBREL, PUBCOMP, SUBSCRIBE, SUBACK, UNSUBSCRIBE, UNSUBACK "
In WD-05
"A non zero message identifier (MessageId) MUST be present in the variable header of the following MQTT Control Packets: PUBLISH(where Qos!=0), PUBACK, PUBREC, PUBREL, PUBCOMP, SUBSCRIBE, SUBACK, UNSUBSCRIBE, UNSUBACK "
Should message Identifier be called as Packet Identifier ?
As Part of issue MQTT-17, it was proposed and agreed to use term "MQTT Control Packet" consistently and not "MQTT Command Message" in the specification.
However this change causes a problem in understanding of another term "message Identifier". Comments and discussion may be needed on the use of word Message Identifier and if it should be called as Packet Identifier. I am opening this JIRA issue for further discussion in TC calls.
example - from WD-04, line 383 - 385
"A non zero message identifier (MessageId) MUST be present in the variable header of the following MQTT command messages: PUBLISH(where Qos!=0), PUBACK, PUBREC, PUBREL, PUBCOMP, SUBSCRIBE, SUBACK, UNSUBSCRIBE, UNSUBACK "
In WD-05
"A non zero message identifier (MessageId) MUST be present in the variable header of the following MQTT Control Packets: PUBLISH(where Qos!=0), PUBACK, PUBREC, PUBREL, PUBCOMP, SUBSCRIBE, SUBACK, UNSUBSCRIBE, UNSUBACK "
Should message Identifier be called as Packet Identifier ?
Using something like packet identifier might help avoid some confusion that has been seen around message identifier. The identifier is clearly scoped as only being used for the wire flow and is not intended to be used by the messaging server as a unique identifier of the message with much wider scope. In many messaging systems the term message identifier is used in this way so changing the terminology could help disambiguate things. This should not be used as the reason to change but might be a side effect
David Locke (Inactive)
added a comment - Using something like packet identifier might help avoid some confusion that has been seen around message identifier. The identifier is clearly scoped as only being used for the wire flow and is not intended to be used by the messaging server as a unique identifier of the message with much wider scope. In many messaging systems the term message identifier is used in this way so changing the terminology could help disambiguate things. This should not be used as the reason to change but might be a side effect
Raphael Cohen (Inactive)
added a comment - I'd second the comments above. When I first read the spec, I did mistake this field for an unique message identifier, rather than one for a delivery.
Note, one possible side effect is that a client implementation which has a getMessageId() method should change to getPacketId() to remain consistent with the specification.
Richard Coppen (Inactive)
added a comment - Note, one possible side effect is that a client implementation which has a getMessageId() method should change to getPacketId() to remain consistent with the specification.
Nick O'Leary (Inactive)
added a comment - Agree with all of Dave's points.
The change from getMessageId() to getPacketId() is an unfortunate, but likely necessary side-effect.
Using something like packet identifier might help avoid some confusion that has been seen around message identifier. The identifier is clearly scoped as only being used for the wire flow and is not intended to be used by the messaging server as a unique identifier of the message with much wider scope. In many messaging systems the term message identifier is used in this way so changing the terminology could help disambiguate things. This should not be used as the reason to change but might be a side effect