Habitualmente cuando se establece una sesión SIP se establecen unos «timers» para saber quien y en que momento actualizara la sesión, normalmente se establece el UAS (User Agent Server) o UAC (User Agent Client) como actualizador de sesión y esto se confirma en la respuesta 200 OK del establecimiento de la sesión.

SESSION-EXPIRES: 600;refresher=uac

En este caso la sesión expira a los 600 segundos y el encargado de refrescar la sesión es el UAC (cliente, quien lanza la llamada)

Esta actualización de sesión suele hacerse con UPDATE o RE-INVITE, la diferencia entre usar estos 2 métodos, es que el UPDATE se debe responder inmediatamente. El el caso del UPDATE podemos identificarlo fácilmente ya que cambia el método, pero el el caso del RE-INVITE, a nivel SIP solo vemos un INVITE y podemos identificarlo, ya que el RE-INVITE tiene el mismo FROM y CALL-ID:

En esta actualización (ambos casos), podemos tener cambio de media o no, en caso de no cambiar la media, debe mantenerse el mismo ID de sesión en el SDP, en caso de cambiar la media, debe incrementarse la el ID de sesión en 1:

Owner/Creator, Session Id (o): – 4117888791 2277746976 IN IP4 3.3.3.3

cambia a:

Owner/Creator, Session Id (o): – 4117888791 2277746977 IN IP4 3.3.3.3

En este caso se cambia la media y por ello se incrementa en 1.