Hi,
Presence server works according to the specifications in RFC 3903.
If it received a Publish message with no SIP-If-Match header, it stores
a new record and generates a E-Tag which is inserted in 200OK reply.
When a refreshing publish with a SIP-If-Match header, it checks if it
has a record with that etag. If a match is found it updates the expires
time and eventualy the presece state info, if the message has body.
Otherwise, if not etag match it replies with 412 (Conditional Request
Failed) and stops processing that request.
regards,
Anca Vamanu
Cesc wrote:
Hi,
I am using openser1.2
If the presence module receives a PUBLISH:
- without E-Tag, it gets stored and if needed, a NOTIFY is generated
... works for me.
- with an E-tag, for which this openser has not seen the first PUB
(the one without E-tag) ... it gets discarded/ignored?
How is the e-tag used in processing publishes and then generating
notifies?
I ask this because in my (peculiar) setup with two openser's sending
publish to each other, depending on the order I start the elements (2
phones, 2 opensers), I don't get always a working behavior:
- if the opensers are running before the phones start ... no problem
... I guess as they see the PUB without e-tag, it all goes fine
- if the boot order is : openser1 ... then phone 1 ... sometime after
(enough to miss the first PUB without e-tag) ... openser2 ... then
phone2 ... Phone 2 does not receive NOTIFYs of status changes from
phone1, eventhough the PUBlish messages do get to openser2 ... but
somehow, they get "discarded" ...
Regards,
Cesc
_______________________________________________
Users mailing list
Users(a)openser.org
http://openser.org/cgi-bin/mailman/listinfo/users