I entered JIRA IOT-474 two days ago that spells out this problem. The form of subscribePresence that takes an IP address is fundamentally flawed. It may be useful for writing tests and examples, but an actual application will not have ready access to numeric IP addresses. If it does, our documentation doesn?t spell out how you have to format them to work properly, as described in this thread. The canonical format in Master (?%s:%u%s?) must be matched exactly by the application in order for this form to work. This is not documented, and it might change, both of which are problems for the application. Furthermore, the format WILL change with IPv6. The solution is outlined in IOT-474. We need to provide a way for device discovery to lead to Presence subscription so applications don?t need to manufacture numeric IP addresses. This would also mean that C++ code could generate the canonical format, eliminating application errors and misunderstandings. John
From: iotivity-dev-bounces at lists.iotivity.org [mailto:[email protected]] On Behalf Of ??? Sent: Wednesday, April 15, 2015 7:33 AM To: Lankswert, Patrick Cc: iotivity-dev at lists.iotivity.org Subject: Re: [dev] [Multicast presence Issue raise] FW: Inquire about base C API for multicast presence Hi Patrick, This is Jyong who is committer in primitive service. I want to suggest a solution for multicast presence issue. After branch merging, messages without port numbers(e.g., "224.0.1.187/oc/presence") are not handled properly. In current status, only the messages with "Full URI" are handled (e.g, "coap://224.0.1.187:5683/oc/presence") The reason of this issue are addressed in HandlePresenceResponse() in ocstack.c file. In case of finding "ClientCB", No ClientCB is found. Because, It tries to find "IP/URI" but port number and coap tag is missed(e.g., "224.0.1.187/oc/presence"). If it try to find using "Full URI"(e.g, "coap://224.0.1.187:5683/oc/presence"), It will be found ClientCB, And multicast presence will working. Therefore, my suggestion is, when finding a ClientCB, change uri of multicast presence. snprintf(fullUri, MAX_URI_LENGTH, "%s%s", OC_MULTICAST_IP, endPoint->resourceUri); -> snprintf(fullUri, MAX_URI_LENGTH, "coap://%s%s", OC_MULTICAST_PREFIX, endPoint->resourceUri); Thanks and regards. Jyong. ------- Original Message ------- Sender : Lankswert, Patrick<patrick.lankswert at intel.com> Date : 2015-04-15 21:46 (GMT+09:00) Title : Re: [dev] [Multicast presence Issue raise] FW: Inquire about base C API for multicast presence Uze, I would rather find the cause of the issue. I worry about workarounds since they have a habit of becoming permanent. If I get the time, I will get with Vijay and test engineering to root cause the problem. If you get this message, can you point us to code where you are having the problem. If I can at least fix your problem first, we can enable you to continue your work. Pat From: iotivity-dev-bounces at lists.iotivity.org [mailto:[email protected]] On Behalf Of ???(Uze Choi) Sent: Wednesday, April 15, 2015 6:30 AM To: Kesavan, Vijay S Cc: iotivity-dev at lists.iotivity.org Subject: [dev] [Multicast presence Issue raise] FW: Inquire about base C API for multicast presence Importance: High Hi Vijay, We are urgently integrating the master branch merged from CA with our primitive services. There seems to be several major problems but I wish you resolve two issues regarding multicast presence. 1. Multicast presence issue in the C API layer as following mail.(Doil.Kwon) 2. Unicast Presence request fail (Hyunjun.Kim will send detail later) If you willing to fix them in a couple of days, we will wait. Unless we will fix our code workaround which may cause the side effect, but there is no other option to make the release time. If possible let us know the status on tomorrow OSWG CC. or direct call setup please. BR, Uze Choi From: iotivity-dev-bounces at lists.iotivity.org<mailto:iotivity-dev-bounces at lists.iotivity.org> [mailto:[email protected]] On Behalf Of ??? Sent: Wednesday, April 15, 2015 10:54 AM To: iotivity-dev at lists.iotivity.org<mailto:iotivity-dev at lists.iotivity.org> Subject: [dev] Inquire about base C API for multicast presence Dear iotivity-dev members. i am doil kwon and resource hosting developer. our application is not working about multicast presence for using base C API. After analyzing causes, previous version is a request for using uri that is "coap://224.0.1.187/oc/presence" in order to request multicast presence, After merging "CA branch",we didn't receive callback message about presence although we request,too. so, Checking "Base" and "CA" code, if there is not port, don't transfer message(ex: "coap://224.0.1.187/oc/presence"), and if there is port, can transfer message(ex: "coap://224.0.1.187:5683/oc/presence"),but don't find cbData when receiving callback message. it is occurred that we don't find cbData because occlientcb search for multicast presence request uri using "224.0.1.187/oc/presence". so, i want to know how we can solve this problem. if you know this, plz tell me about any solution. BR, doil kwon. ________________________________ ? ? ? (Doil Kwon) S3 / Assistant Engineer Advanced Convergence Lab. Software R&D Center. Samsung Electronics Co., Ltd. Tel: +82-31-279-3894 Mobile : +82-10-5648-2660 E-Mail : doil.kwon at samsung.com<mailto:doil.kwon at samsung.com> ________________________________ [cid:image001.gif at 01D07754.65386FA0] [Image removed by sender.] -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.iotivity.org/pipermail/iotivity-dev/attachments/20150415/46b4c7c6/attachment.html> -------------- next part -------------- A non-text attachment was scrubbed... Name: ~WRD000.jpg Type: image/jpeg Size: 823 bytes Desc: ~WRD000.jpg URL: <http://lists.iotivity.org/pipermail/iotivity-dev/attachments/20150415/46b4c7c6/attachment.jpg> -------------- next part -------------- A non-text attachment was scrubbed... Name: image001.gif Type: image/gif Size: 13168 bytes Desc: image001.gif URL: <http://lists.iotivity.org/pipermail/iotivity-dev/attachments/20150415/46b4c7c6/attachment.gif>
