SIP: il metodo MESSAGE

A cosa serve il metodo MESSAGE

Il metodo MESSAGE (introdotto con il documento RFC3428) serve, come facilmente intuibile dal nome, ad inviare messaggi instantanei all’interno di una sessione stabilita.

I messaggi istantanei sono spesso usati in “modalità conversazione”, in quanto la consegna dei messaggi è abbastanza veloce per mantenere una conversazione interattiva.

Essendo un’estensione del SIP, eredita tutte le funzionalità di instradamento e sicurezza del SIP stesso. Le richieste MESSAGE non stabiliscono di per sè una sessione di dialogo, bensì ogni messaggio è autonomo e senza riferimenti a dialoghi in corso.

I messaggi trasportati al di fuori di una sessione multimediale non devono superare i 1300 byte. Messaggi più grandi possono essere inviati come parte di una sessione multimediale o utilizzando un tipo di contenuto indiretto.

Per evitare la riproduzione di vecchi messaggi, tutte le richieste e le risposte di tipo MESSAGE devono contenere un campo con la data di invio e devono essere firmati. Ogni messaggio arrivato, contenente una data di invio di qualche minuto nel passato o nel futuro, riceverà una risposta con un messaggio di errore “400”.

Com’è composto?

Flusso SIP con due MESSAGE
Flusso SIP con due MESSAGE

Nel flusso di fianco vediamo una sessione di dialogo stabilita colorata in verde e, più in basso, con i colori giallo e azzurrino, vediamo 4 messaggi, tra cui 2 non autorizzati (401-Unathorized) e 2 autorizzati (Risposta 202-Accepted).

Il primo messaggio viene sempre rifiutato, in quanto il pacchetto non contiene non contiene il campo Authorization (come abbiamo già visto con il metodo REGISTER).

I messaggi hanno un colore diverso proprio perché, come abbiamo detto in precedenza, vengono inviati al di fuori della sessione di dialogo.

Pacchetto MESSAGE Unathorized
Pacchetto MESSAGE Unathorized

Analizzando il pacchetto, notiamo che è messaggio è stato inviato dal 210 verso il 200, con testo “ciao!”. Notiamo anche che non contiene alcun campo di autenticazione, infatti questo è il primo pacchetto, ovvero quello che ha ricevuto risposta
“401-Unathorized”. Di seguito lo stesso messaggio, inviato di nuovo completo di campo “Authorization”

Pacchetto MESSAGE Authorized
Pacchetto MESSAGE Authorized

Per conoscere gli altri metodi, fondamentali e di estensione, puoi andare nell’apposita sezione: Metodi SIP