> -----Original Message-----
> From: Craig Southeren [mailto:cr...@southeren.com]
> Sent: Monday, 6 June 2011 7:22 AM
...
> > To resume: What does SIP standard say about this NOTIFY with empty
> > body?  Does this mean that the user xyz is offline?

The specification gives no meaning to an empty body. "No meaning" does not mean 
"offline". Offline means something!

The only purpose of sending a NOTIFY with an empty body, as per the 
specification, is to finalise the establishment of a subscription when you do 
not yet have any state information. Any other use is "undocumented", so there 
had better be a large body of evidence that "everyone does it that way" before 
we use any semantics.

> > Or does this mean that user's status has not changed?  In fact, the
> > NOTIFY with empty body (as shown above) is the first one sent by
> > kamailio, so there is no "previous" state of that user, hence
> > "unchanged" status has no meaning.
> 
> Here is my understanding.
> 
> If the NOTIFY is the first NOTIFY sent in response to the SUBSCRIBE,
> then the NOTIFY should be ignored. Opal should be doing this.
> 
> if the NOTIFY is *not* the first NOTIFY, i.e. there was a previous
> NOTIFY that contains a valid presence status, then the previous status
> should be used.

Interestingly, I was doing some Googling on this and it appears that the first 
notify, when it is empty, is supposed to have a Subscription-State header field 
value of "pending". Again the specification is not clear but there were some 
discussion groups that mentioned this.

Unfortunately, Kamailio does not do this. So we could not even use this as a 
discriminator.


Robert Jongbloed
OPAL/OpenH323/PTLib Architect and Co-founder.



_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

Reply via email to