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

Reply via email to