[Asterisk-Dev] Session-Expires: headers (RFC4028)

John Todd jtodd at loligo.com
Fri Oct 21 20:05:28 MST 2005


I've seen various needs for implementation of RFC4028 in the past 
with Asterisk, most notably controlling zombie calls from devices 
that vanish off the network.  The short form on this RFC is that one 
end of the connection specifies a timer (in seconds) after which the 
session will be refreshed via a re-INVITE or an UPDATE message.  The 
call doesn't end or change state; it's just a "keepalive" message 
between the two endpoints that has to pass all the way through the 
SIP proxy chain.  If the keepalive fails, then a BYE is sent, and the 
media session is torn down.   This is very useful for spotty network 
connections to keep calls from lasting forever, when your gateway is 
too stupid to know what asymmetric RTP means, or is simply not in the 
media path.

Using Asterisk as a B2BUA (as I am prone to do) it would be sometimes 
helpful to create SIP sessions with Session-Expires: headers, and 
then to control those expiration times on a per-peer basis for what 
we will accept (Min-SE) and what we expect (Session-Expires) for 
session re-INVITEs or UPDATEs.

http://www.ietf.org/rfc/rfc4028.txt

Yes, I have clients and gateways that support this RFC.  Not all do, 
but that's OK - the RFC accounts for systems that do and do not 
support it.  If Asterisk could support it as UAS/UAC, then it could 
be useful in those circumstances where two Asterisk systems need to 
communicate to each other via a chain of intermediate proxies.

My question to the list is: Has anyone considered or implemented this 
in Asterisk as either (or both) a UAS or UAC?  Is this idea relegated 
to the land of the little people, beyond the rainbow, in chan_sip3? 
<pokes Olle>  I have a few (very few) hundred dollars in bounty 
towards this if someone wants to implement it...

JT



More information about the asterisk-dev mailing list