< Previous by Date Date Index Next by Date >
  Thread Index Next in Thread >

[reSIProcate-users] Forcing an Outbound Transport-Type


Hi,

What is the proper way to force a transport type (e.g. TCP) for an outgoing request - or even better for all request from a certain UserProfile?

The comments in Profile.hxx suggest that somebody thought about using setOverrideHostAndPort() to also populate the Via entries, but it is not implemented.

I tried setting the transport for the first Via of a request like this:

invite_msg = mp_dum->makeInviteSession( m_to_addr, m_profile, &m_sdp, new MyAppDialogSet(*mp_dum) );
 invite_msg->header(h_Vias).front().transport() = "TCP";
 mp_dum->send(invite_msg);   

        

but the message is still sent over the wire as UDP, although it contains the following header:

Via: SIP/2.0/TCP 141.22.27.150:5060;branch=z9hG4bK-d8754z-bf3a78252072422c-1---d8754z-;rport



findTransportByVia() and findTransportBySource() are actually called in the TransportSelector, since I do have setFixedTransportInterface() set for the used profile.

Can anybody give me some advice please?

Thank you,
  gabriel