Un messaggio PUBREL è la risposta inviata da un autore (publisher) ad un messaggio PUBREC proveniente dal broker o inviata dal broker a un messaggio PUBREC proveniente da un sottoscrittore. È il terzo messaggio nel flusso del protocollo QoS 2.
La seguente tabella mostra il formato dell'intestazione fissa.
bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|
byte 1 | Tipo messaggio (6) | Indicatore DUP | Livello QoS | RETAIN | ||||
0 | 1 | 1 | 0 | x | x | x | x | |
byte 2 | Lunghezza rimanente (2) | |||||||
0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
L'intestazione variabile contiene lo stesso ID messaggio del messaggio PUBREC per cui è stata inviata conferma. La seguente tabella mostra il formato dell'intestazione variabile.
bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|
byte 1 | MSB ID messaggio | |||||||
byte 2 | LSB ID messaggio |
Quando il broker riceve un messaggio PUBREL da un autore (publisher), il broker rende il messaggio originale disponibile per i sottoscrittori interessati e invia un messaggio PUBCOMP con lo stesso ID messaggio all'autore. Quando un sottoscrittore riceve un messaggio PUBREL dal broker, il sottoscrittore rende il messaggio disponibile all'applicazione di sottoscrizione e invia un messaggio PUBCOMP al broker.