At 15:43 24/06/2006, John Clements wrote:
You have a broken UA.
Where do you get that? Nothing is broken, its the Number Porting flag the TDM sends. If anything, Asterisk and SER are broken because they do not recognize it :-)
Hi John,
I am wondering why you think that SER is broken?
IMHO, as Juha pointed out your URI may be a 'valid' result of standard-recommended way of translating Tel to Sip URIs (Rfc3261, 19.1.6).
Now since the same specification does not syntactically recognize parameters with the userpart of a URI, your username is matched in usr-loc database against what it is (some number, followed by semicolon, ndpdi and some more characters). I agree that most likely such lookup does not make much sense (unless you really have usernames with semicolon in it :-))). To me, the recommendation in rfc3261 seems not entirely thought thru -- one obviously didn't want to mix one parameter set with another. However processing the username-embedded parameters hasn't been addressed, making it as a result a subject of local URI policy.
SER's subst_uri can fix it for you, i.e., implement your policy 'throw all parameters from userpart',
-jiri
p.s. -- recall my previous comment about lack of domain, I just 'misparsed' at some of the characters in the URI.
And its subst_uri() that gets rid of it. I found it last night. Thanks though.
-John
AFAIK it's not possible with From. SER processes messages and always keep the original message. When you do subst etc, you basically tell SER how to change the message before sending a reply or forwarding. The ruri can be changed (but still the original uri is kept, i.e. revert_uri()) The lookup function will use the From in the original message, regardless of what you do. You have a broken UA. g-)
John Clements wrote:
I've looked around and have found one or two other posts asking about this, but I have never seen an answer. The From is:
=uri: sip:5551212;npdi=yes@x.x.x.x:5060;dtg=SIP;user=phone
Which causes a number of issues. USRLOC no longer works:
=lookup(): '5551212;npdi=yes' Not found in usrloc
And when you send the call to an Asterisk server, Asterisk wigs out because it truncates everything after the first ";" it encounters in the URI. Does anyone have any idea how to get rid of it? I've tried subst(), but could not get it to work. :-(
-John
Serusers mailing list Serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
Serusers mailing list Serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
-- Jiri Kuthan http://iptel.org/~jiri/