Subject: [Simple] Handling Expires:0 are different in two drafts, why?

From: "Li Hua Tang" <[email-masked]>
Date: Tue, 26 Feb 2002 17:13:13 +0800

Hi all,

I am puzzled by how to handle a SUBSCRIBE request with an "Expires" of 0.

In the draft draft-ietf-sip-events-03 it's said,
     Note that the NOTIFY messages triggered by SUBSCRIBE messages with
    “Expires” headers of 0 will contain a “Subscription-State” value
     of “terminated”,and a “reason” parameter of “timeout”.
In this condition, the subscription is terminated and reason=timeout may
cause
a new subscription.

But considering a SUBSCRIBE request for Event:presence.winfo, it's said in
the
draft draft-rosenberg-impp-watcherinfo-00,
     notifications triggered as a result of a fetch operation (a
     SUBSCRIBE with Expires of 0) SHOULD result in the full state of all
     watchers (of course, only those watchers that have been authorized to
     be divulged to the subscriber) to be present in the NOTIFY.
In this condition, what would the value of “Subscription-State” be? I think
the subscription is still active here.

What do you think about these two cases?

Best regards,

Tang Lihua
Research Member, Infrastructure Technology
IBM China Research Lab.
Phone: (8610)62986677-542 Tie line: 905-542
Email:  [email-masked]

---

From: Jonathan Rosenberg <[email-masked]>
Date: Wed, 27 Feb 2002 13:16:30 -0500

> I am puzzled by how to handle a SUBSCRIBE request with an "Expires" of

There is no special casing. Its a SUBSCRIBE that just happens to expire
real soon.

>     ¡°Expires¡± headers of 0 will contain a ¡°Subscription-State¡± value
>      of ¡°terminated¡±,and a ¡°reason¡± parameter of ¡°timeout¡±.
> In this condition, what would the value of ¡°Subscription-State¡± be? I
> think

A fetch does not create a subscription; at least, not one that lives for
more than an infinitesimal period of time. Effectively, the fetch
creates an instantaneously expiring subscription, causing a NOTIFY to be
sent. That NOTIFY has the current state, along with the
Subscription-State header, with a value terminated and reason of
timeout. Thus, the two statements above are not contradictory.

-Jonathan R.

-- 
Jonathan D. Rosenberg, Ph.D.            72 Eagle Rock Avenue
Chief Scientist                         First Floor
dynamicsoft                             East Hanover, NJ 07936
[email-masked]                 FAX: (973) 952-5050
http://www.jdrosen.net                  PH:  (973) 952-5000
http://www.dynamicsoft.com