Opened 15 years ago

Last modified 15 years ago

#833 closed enhancement

Support for SIP Session Timer (RFC 4028) — at Version 4

Reported by: bennylp Owned by: bennylp
Priority: normal Milestone: release-1.4
Component: pjsip Version: trunk
Keywords: Cc: johan, lantz
Backport to 1.x milestone: Backported:

Description (last modified by nanang)

Scope:

  • Run-time configurable session interval (Session-Expires header) and minimum session interval (Min-SE header) per account basis.
  • Refresher performs refreshes at half of session interval, and refreshee sends BYE slightly before session expiration. 'Slightly' == minimum of 32 seconds and one-third of session interval.
  • Session interval negotiation, i.e: generate/handle 422 when SE less than Min-SE.
  • Works even when only one UA in a dialog supports Session Timer (and it's not listed in Require header).
  • Able to use Session Timer even when peer doesn't support Session Timer, perform refreshes by and for itself.
  • Able to adapt when Session Timer is turned-off.

Limitations:

  • Refreshing session using UPDATE hasn't been supported yet.
  • Refreshing session will always restart the media session (even if the media session is not modified).
  • Session Timer can always be listed in Supported header, but it's not necessarily always used (by omitting Session-Expires header), currently there is no mechanism to omit/turn-off Session-Expires header.

Change History (4)

comment:1 Changed 15 years ago by bennylp

  • Milestone changed from release-1.3 to release-1.4

comment:2 Changed 15 years ago by bennylp

  • Cc johan lantz added

comment:3 Changed 15 years ago by nanang

In r2858:

  • Initial version of Session Timers (RFC 4028).
  • Added new options in pjsua app to configure Session Timers settings.
  • Added python tests for Session Timers.

comment:4 Changed 15 years ago by nanang

  • Description modified (diff)
Note: See TracTickets for help on using tickets.