add contact header to publish request

16 views
Skip to first unread message

Luis Valencia

unread,
Jan 16, 2011, 2:19:43 PM1/16/11
to mobicent...@googlegroups.com
Hi All,
I am developing a sip-ims client that registers to an ims-core.
I need to add contact header to initial publish request, since the ims-core uses that information for multi-device scenarios.
In a regular scenario it is not needed to have a contact header in the initial publish requests, but it is when multi-device configuration is enabled.
I know it is not compliant with RFC 3903. The point is that in a multi-device scenario, which was probably not considered at the time the RCF, there may exist more than one contact binded for the same sip uri, and when a publish request is generated by one of the contacts, the only way the ESC knows which contact is sending the request is by means of that contact header, so that is the reason why need to add it. 
 
Regards,
Luis
 

emma...@gmail.com

unread,
Jan 17, 2011, 5:17:18 PM1/17/11
to mobicents-public
The ESC does not need to know the contact, since it will never send
any message back other then the PUBLISH response. Each publication is
identified by a SIP ETag, which is used by the client to refresh,
modify or remove that particular published state.

In case of OMA SIP Presence network, the ESC, which is the Presence
Server, uses a composition policy to combine all publications from
different devices or services, with respect to each entity/uri. More
at http://www.openmobilealliance.org/Technical/release_program/Presence_simple_v1_1.aspx

-- Eduardo
..............................................
http://emmartins.blogspot.com
http://redhat.com/solutions/telco

Luis Valencia

unread,
Jan 20, 2011, 5:19:57 PM1/20/11
to mobicent...@googlegroups.com
Hi,
That is correct, the ESC (Presence Server) does not need to know about the contact.
Despite of that, there might be some nodes between the UAC and the ESC, i.e. an stateful proxy, that could need that infomation. The RFC 3903 says in section 4:
   The PUBLISH request MAY contain a Contact header field, but including
   one in a PUBLISH request has no meaning in the event publication
   context and will be ignored by the ESC
so if the UAC may include a Contact header in the request, I think it should be considered to be supported in the MSS, as an optional header in the request. MSS implementing UAC behaviour should not be restricted by ESC behaviour.
Thanks. Regards,
Luis

Bartosz Baranowski

unread,
Jan 20, 2011, 5:47:52 PM1/20/11
to mobicent...@googlegroups.com
Well, each request will have set of Via headers, wont it? Proxy will know how to route answer back. 
IIRC proxy will not consume contact as message traverser it :)
Bartosz Baranowski
JBoss R & D
==================================
Word of criticism meant to improve is always step forward.

Luis Valencia

unread,
Jan 22, 2011, 12:48:38 PM1/22/11
to mobicent...@googlegroups.com
Yes, every thing about proxies is right, so no Contact is needed.
But what I am trying to suggest in this discussion is that implementing something that the spec says is optional (MAY) could be useful at some point. 
Lets say you are developing a car and the spec says the car MAY have a GPS navigator. But the car you are developing will always drive through the same road, so there is no need to have a GPS. Then, what should be best option: to allow the GPS navigator as an optional equipment, or not to give that option at all. Maybe in the future a new driver gets to you and says "I want your car but i will drive through new roads so I need the optional GPS navigator as in the specs", but then there is no option to have it.
Anyway, that was only a suggestion :)
Thanks 

Reply all
Reply to author
Forward
0 new messages