On Sat, Nov 27, 2010 at 3:41 AM, Juha Heinanen <j...@tutpro.com> wrote:
>
>> Let's discus the MWI case.  If a PUBLISH is received by the presence
>> server, a record is created and a 200ok with 'SIP-ETag' header is sent
>> back.
>> If a new PUBLISH is received and the PUBLISH does not have a
>> 'SIP-If-Match' header that will match the previous 'SIP-ETag' header,
>> a new record will be created for the same subscription.  Instead of
>> creating a new record, the existing record should be updated: the
>> state of the voicemail box is unique per subscriber.
>
>> This approach is not compliant with the rfc 3903, but it make sense to
>> implement the above behavior for certain event types packages like
>> mwi.
>
> my mwi application first checks if etag exists and depending on the
> result, either uses existing one or "." in the new publish.

Hello Juha,

That is the correct behavior.  I have seen scenarios in which PUBLISH
were sent all the time without an etag (externnotify from asterisk
sending PUBLISH).  It works, but it creates multiple records in the
presentity table.
I was thinking about extending the sever behavior for this particular
kind of event packages for which a single record in the presentity
table is enough to maintain the event state.

Regards,
Ovidiu Sas

_______________________________________________
Devel mailing list
Devel@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/devel

Reply via email to