[OpenSIPS-Users] pua_usrloc: a REGISTER refresh gets the presence control

Iñaki Baz Castillo ibc at aliax.net
Sun Nov 9 02:49:22 CET 2008

Hi, the following is an old and already discussed and explained issue, but I 
don't see it working:

- UA1 registers wihtout sending a PUBLISH.
- pua_usrloc generates a PUBLISH state=open.
- UA2 (a watcher) receives a NOTIFY state=open.
- Later UA1 sends a PUBLISH state=closed.
- UA2 receives a NOTIFY with two tuples:
    1) status=closed
    2) status=open
  so UA2 selects state=closed for UA1.
- UA1 sends a REGISTER refresh.
- pua_usrloc generates a PUBLISH with empty body.
- presence module sends a NOTIFY with two tuples:
    1) status=open
    2) status=closed
- UA2 receives that NOTIFY and selects state=open for UA1.

Is it really the expected behaviour? as you can see, this means that every 
REGISTER refresh will set state=open in watchers, even if the UA sent a 
PUBLISH state=closed before.
I think that the first tuple is the winner for the watchers, is it as specs 
dictate? if it, why presence module sets status=open as first tuple when 
receiving a PUBLISH with empty body?

I've tryed it with Twinkle 1.3 and X-Lite 3.0 has watchers and Twinkle 1.3 as 

Thanks a lot.

Iñaki Baz Castillo

More information about the Users mailing list