Steve, Good question! The RequestURI matching behavior is defined in TS 29.228, Table F.1:
RequestURI tag shall include a regular expression in a form of Extended Regular Expressions (ERE) as defined in chapter 9 in IEEE 1003.1-2004 Part 1 [13]. For SIP URI, the regular expression shall be matched against the hostport of the SIP-URI. For definition of SIP-URI and hostport, see IETF RFC 3261 [11]. For Tel URI, the regular expression shall be matched against the telephone-subscriber of the telephone-uri. For definition of telephone-subscriber and telephone-uri, see IETF RFC 3966 [15]. In other words, in your example, RequestURI is matched against the hostport, which is "example.com". This is why it matches ".*example.com" (as ".*" matches the blank string), but not "sip:.*" (as there's no "sip:" in the string. I hope that helps - please let us know if you have any follow-on questions. Cheers, Matt From: Clearwater [mailto:[email protected]] On Behalf Of Steve Yeoman Sent: 31 May 2016 21:03 To: [email protected] Subject: [Project Clearwater] IFC matching on RequestURI Hi, I'm having some trouble matching an IFC with an incoming request into Sprout. I have configured my IFC in HSS to match a RequestURI of sip:[email protected]<mailto:sip%[email protected]>. The requestURI is that value, but sprout is not matching it. In the attached log, Line 206 is the problem: 31-05-2016 19:49:42.589 UTC Debug ifchandler.cpp:437: SPT class RequestURI: result false I tried lots of values like: INVITE sip:[email protected]<mailto:sip%[email protected]> SIP/2.0 sip:[email protected]<mailto:sip%[email protected]> SIP/2.0 sip:[email protected]<mailto:sip%[email protected]> [email protected]<mailto:[email protected]> but I couldn't find the actual value. If I try the same test with the To Header instead of RequestURI, then it matches sip:[email protected]<mailto:sip%[email protected]> fine. I tried some regexp matching for RequestURI and found that .*example.com<http://example.com> matches, but sip.* doesn't match. Some more logging would be handy where Sprout prints the two strings it is comparing. What value does sprout think the RequestURI is in this case if it's not sip:[email protected]<mailto:sip%[email protected]>? thanks Steve
_______________________________________________ Clearwater mailing list [email protected] http://lists.projectclearwater.org/mailman/listinfo/clearwater_lists.projectclearwater.org
