So I fixed a few things today
1. In subscribe.c:rls_get_by_service_uri The code was doing a strlen
check as follows:
if((uri->len==strlen(val)) && (strncmp(val, uri->s, uri->len)==0))
The uri coming in is: sip:8475551001@10.50.251.12 and the service
uri in the rls-services list is:
sip:8475551001@10.50.251.12;pres-list=rcs
Hence, the above check was failing. So removing the length
comparison made it go further
2. In notify.c:rls_get_resource_list the code is looking for %5b and
%5d in a case-insensitive fashion. The client xml has %5B and %5D, so
making the check case insensitive helped.
But now I am seeing the following errors:
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: DEBUG:
presence [notify.c:129]: reason:
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:117]: pres_uri: sip:8475551004@myip
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: DEBUG:
presence [notify.c:130]: version: 3
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:118]: watcher_user@watcher_domain: 8475551001@myip
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: DEBUG:
presence [notify.c:131]: expires: 3510
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:119]: to_user@to_domain: 8475551004@myip
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: DEBUG:
presence [notify.c:133]: updated/updated_winfo: 0/0
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:120]: from_user@from_domain: 8475551001@myip
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: DEBUG:
presence_xml [xcap_auth.c:201]: node1->name= rule
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:121]: callid/from_tag/to_tag:
79d86e7367f04a68-32412(a)127.0.0.1/533cb9e91f
4b999cf76861cbb9ed54ed-a97c/a6a1c5f60faecf035a1ae5b6e96e979a-7ed7
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: DEBUG:
presence_xml [xcap_auth.c:209]: cond_node->name= conditions
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:122]: local_cseq/remote_cseq: 1/10
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: DEBUG:
presence_xml [xcap_auth.c:419]: apply_rule= 1
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:123]: local_contact/contact:
sip:myip:5060;transport=udp/sip:rls@10.50.251.12:5060
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: ERROR:
presence_xml [notify_body.c:176]: while parsing the xml body message
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:124]: record_route:
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: ERROR:
presence_xml [notify_body.c:133]: in function get_final_notify_body
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:125]: sockinfo_str: udp:myip:5060
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: ERROR:
presence [notify.c:1470]: in function apply_auth_nbody
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:127]: event: presence
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: ERROR:
presence [notify.c:1658]: sending Notify not successful
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:128]: status: pending
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: ERROR:
presence [notify.c:1282]: Could not send notify for presence
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:129]: reason:
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: DEBUG:
presence [notify.c:1451]: dialog info:
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:130]: version: 1
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: DEBUG:
presence [notify.c:117]: pres_uri: sip:8475551001@myip
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:131]: expires: 1349821273
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32412]: DEBUG:
presence [notify.c:118]: watcher_user@watcher_domain: 8475551001@myip
Oct 9 16:22:47 RCS-Presence /usr/local/sbin/kamailio[32414]: DEBUG:
presence [notify.c:133]: updated/updated_winfo: 0/0
Not sure what the issue is now. Is this the notify that's getting send
out to Client B requesting auth for presence? What xml is it trying to
parse here:
doc = xmlParseMemory(notify_body->s, notify_body->len);
if(doc== NULL)
{
LM_ERR("while parsing the xml body message\n");
goto error;
}
Any help is appreciated. We just want to see a notification request
being sent out to client B requesting auth for presence. Not sure if
the above code is tied to that. Haven't been able to trace
when send_last_notify gets triggered.
Thanks,
Sangeeta