Hi!
I just tried if openser can handle a service URN in the request URI
(e.g. urn:service:sos which is used for emergency calls (refer to IETF
ECRIT WG)).
Do it stateless with forward() works fine. Doing it statefull with tm
module and t_relay() fails:
DBG:tm:t_newtran: transaction on entrance=(nil)
DBG:core:parse_headers: flags=ffffffffffffffff
DBG:core:parse_headers: flags=78
DBG:tm:t_lookup_request: start searching: hash=20823, isACK=0
DBG:tm:matching_3261: RFC3261 transaction matching failed
DBG:tm:t_lookup_request: no transaction found
ERROR:core:parse_uri: bad uri, state 0 parsed: <urn:> (4) /
<urn:service:sos> (15)
ERROR:core:parse_sip_msg_uri: bad uri <urn:service:sos>
DBG:core:set_err_info: ec: 1, el: 3, ei: 'error parsing r-uri'
ERROR:tm:new_t: uri invalid
ERROR:tm:t_newtran: new_t failed
I wonder, is it really necessary for the tm module to understand the
syntax of the RURI? Of course it is necessary if routing is done based
on the RURI. But if DURI is set, or t_relay("udp:1.2.3.4:5060") is used,
then I think it should work with any uri scheme in RURI.
regards
klaus