Hi,
I believe this has been discussed before but I can't find a definitive
answer.
Using kamailio 4.2 with rtpengine.
My clients don't have natively any ICE relay candidates, just host and
server reflexive from STUN.
What is the correct syntax to have rtpengine only add itself as relay
candidate with lowest priority?
The current basic kamailio config I'm testing has rtpengine_manage empty of
flags, which is almost working except that rtpengine's default behaviour in
my circumstance is to add itself as a host candidate.
Reading through
http://kamailio.org/docs/modules/devel/modules/rtpengine.html I believe
what I want (ie. rtpengine adding itself as relay candidate only with
lowest priority - not touching the rest of the SDP or any other ICE
candidates sent by the clients) is not an option. Is my interpretaion
correct or am I missing something glaringly obvious?
Thanks,
Peter
From the module's documentation:
"The default (if no “ICE=...” is given at all), new ICE data will only
be generated if no ICE was present in the SDP originally; otherwise the RTP
proxy will only insert itself as *additional* ICE candidate."
Relevant kamailio config snippet:
route[NATMANAGE] {
#!ifdef WITH_NAT
if (is_request()) {
if(has_totag()) {
if(check_route_param("nat=yes")) {
setbflag(FLB_NATB);
}
}
}
if (!(isflagset(FLT_NATS) || isbflagset(FLB_NATB)))
return;
rtpengine_manage("");
if (is_request()) {
if (!has_totag()) {
if(t_is_branch_route()) {
add_rr_param(";nat=yes");
}
}
}
if (is_reply()) {
if(isbflagset(FLB_NATB)) {
if(is_first_hop())
set_contact_alias();
}
}
#!endif
return;
}