Thank you, it does shed a little bit of light.  I had since changed the API
to use the previous value of the Expires header rather than insert the
parameter from the notify.  It seems whoever wrote that section of the API
also misunderstood the RFC.

Thanks again.

On 9/6/07, Michael Procter <[EMAIL PROTECTED]> wrote:
>
> Hi Nicholas,
>
> [RFC3265 extracts]
> > If the value of the "Subscription-State" header is "active" or
> > "pending", the notifier SHOULD also include in the "Subscription-
> > State" header an "expires" parameter which indicates the time
> > remaining on the subscription.
> > ...
> > If the "Subscription-State" header value is "active", it means that
> > the subscription has been accepted and (in general) has been
> > authorized.  If the header also contains an "expires" parameter, the
> > subscriber SHOULD take it as the authoritative subscription duration
> > and adjust accordingly.
>
> > So if there is 5 seconds left on a subscription, and a client receives
> > a NOTIFY, the client changes the Expires of any subsequent SUBSCRIBEs
> > for that event to 5 seconds, and requires a refresh at less than 5
> > second intervals. The longer the client runs, the smaller this value
> > will become.
>
> I think you have misunderstood RFC3265 in this matter.  If the client
> receives a NOTIFY with "Expires: 5", it should infer that the current
> subscription will expire in 5 seconds.  If it wishes to extend the
> subscription, it will need to send a reSUBSCRIBE.  It does not need to
> resubscribe with an expiry of 5 seconds!  Instead, it may choose a different
> one (whatever worked the first time would be a good choice).
>
> So, a typical flow could look something like this:
>
> SUBSCRIBE (Expires:180) --->    # Initial subscribe requesting 180 secs
> <--- 200
> <--- NOTIFY (Expires: 180)        # Note need to resubscribe in 180 secs
> 200 --->
>
> (time passes (137 secs), something happens)
> <--- NOTIFY (Expires: 43)         # Note need to resubscribe in 43 secs
> 200 --->
>
> (another 23 seconds pass, client decides to extend subscription, as only
> 20 seconds remain)
> SUBSCRIBE (Expires: 180) --->
> <--- 200
> <--- NOTIFY (Expires: 180)        # Subscription extended for 3 mins
> 200 --->
>
> I hope this clarifies things,
>
> Michael
>
_______________________________________________
Sip mailing list  https://www1.ietf.org/mailman/listinfo/sip
This list is for NEW development of the core SIP Protocol
Use [EMAIL PROTECTED] for questions on current sip
Use [EMAIL PROTECTED] for new developments on the application of sip

Reply via email to