Hello everyone,
According to the routing flow set in kamailio.cfg
# handle retransmissions
if(t_precheck_trans()) {
t_check_trans();
exit;
}
t_check_trans();
After I traced the flow it seems that SUBSCRIBE message failed on
t_check_trans()
and stopped there.
I add some logs to keep tracing this function and found that:
int t_check_trans(struct sip_msg* msg) { struct cell* t; int branch; int
ret; /* already processing a T */ if(is_route_type(FAILURE_ROUTE) ||
is_route_type(BRANCH_ROUTE) || is_route_type(BRANCH_FAILURE_ROUTE) ||
is_route_type(TM_ONREPLY_ROUTE)) { return 1; } if
(msg->first_line.type==SIP_REPLY) { branch = 0; ret = (t_check_msg( msg ,
&branch)==1) ? 1 : -1; tm_ctx_set_branch_index(branch); return ret; } else
if (msg->REQ_METHOD==METHOD_CANCEL) { return w_t_lookup_cancel(msg, 0, 0);
} else { switch(t_check_msg(msg, 0)){ case -2: /* possible e2e ack */
return 1; case 1: /* found */ t=get_t(); if (msg->REQ_METHOD==METHOD_ACK){
/* ack to neg. reply or ack to local trans. => process it and end the
script */ /* FIXME: there's no way to distinguish here between acks to
local trans. and neg. acks */ if (unlikely(has_tran_tmcbs(t,
TMCB_ACK_NEG_IN))) run_trans_callbacks(TMCB_ACK_NEG_IN, t, msg, 0,
msg->REQ_METHOD); t_release_transaction(t); } else { /* is a retransmission
*/ if (unlikely(has_tran_tmcbs(t, TMCB_REQ_RETR_IN)))
run_trans_callbacks(TMCB_REQ_RETR_IN, t, msg, 0, msg->REQ_METHOD);
t_retransmit_reply(t); } /* no need for UNREF(t); set_t(0) - the
end-of-script t_unref callback will take care of them */ return 0; /* exit
from the script */ <---------------------------- THE POINT !! } /* not
found or error */ } return -1; }
If the line "return 0; /* exit from the script */" was changed to "return
1; /* exit from the script */" , it works ---- means that the configuration
script can keep being proceeded now.
Any suggestions?
Hello,
This might be very simple question for you folks,
I am using Kamailio as SIP - Presence server, and For every user Kamailio
is sending 200 OK, but the EXPIRES IE is missing.
Can u help me include this IE or any other IE for 200 OK message?
How to modify the configuration files to get this done?
Thanks a lot,
MGSK
Hey,
Maybe someone from the list can share some information about the path
module. Why can the path module only add either the received parameter to
path or the flow token with the ob parameter, but not both.
Does the RFC mandates it? I didn't find anything like that and was
wondering because the source calculates max length of the parameters with
following:
>> /* maximum possible length of suffix */
>> suffix_len =
strlen(";lr;received=sip::12345%3Btransport%3Dsctp;ob;>\r\n") +
IP_ADDR_MAX_STR_SIZE + 2 + (add_params ? add_params->len : 0) + 1;
This looks like it can be possible to have both.
Best regards
Rick
I was modifying the routing blocks of the tsilo push notifications
recipe from Federico Cabiddu and could cause a segfault in kamailio
5.0.3 if due to misconfiguration an ACK reached ts_store().
## modify https://www.kamailio.org/events/2015-KamailioWorld/Day2/20-Federico.Cabiddu…
## various route blocks will lead to here
## including ACK and INVITE...
route[LOCALRELAY) {
## ooops: did not check method is INVITE
t_relay();
ts_store();
$sht(vtp=>stored::$rU) = 1;
xlog("L_INFO", "stored transaction [$T(id_index):$T(id_label)] $fU
=> $rU\n");
## saw an ACK and caused segfault
}
If properly checked for INVITE: if (is_method("INVITE")) { /* do tsilo
stuff */ } it works.
I'm wondering whether ts_store() should/could be more defensive and
show an error like "..not the right context for ts_store().." .
Thanks for you thoughts.
Anthony
Hi,
Here are same problems in my configuration of kamailio server.
I have two kamailio server (both have a NAT IP and a lan IP), and I use DNS to keep loadbalance.When sending message to another account , if NAT IP which is returned by DNS, is not the same as receiver account, kamailio server sends 404 not found error.
I really have no idea how to set the configuration when using DNS loadbalance to return two NAT IP.
Thank you , I'm looking forward from you!
Sincerely yours
Ada WU
mlwu(a)south-star.com.cn
Hi,
Here are same problems in my configuration of kamailio server.
I have two kamailio server (both have a NAT IP and a lan IP), and I use DNS to keep loadbalance.When sending message to another account , if NAT IP which is returned by DNS, is not the same as receiver account, kamailio server sends 404 not found error.
I really have no idea how to set the configuration when using DNS loadbalance to return two NAT IP.
Thank you , I'm looking forward from you!
Sincerely yours
Ada WU
Hello,
writing to inform everyone that currently the qq.com domain is
blacklisted by the kamailio.org email server due to high volume of spam
sent to many admin addresses and mailing lists. Spamassassin had very
hard time digesting and filtering, as content kept changing and
addresses were random.
I didn't get the chance yet to check if we have subscribers with this
domain, so, as a fast lane, if you use it and don't have the possibility
to quickly switch to another email server domain, write me to try to
whitelist the address. Hopefully, if anyone is affected, there is not
much inconvenience, but it was the only quick solution that could be
applied for the moment.
Cheers,
Daniel
--
Daniel-Constantin Mierla
www.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio Advanced Training - www.asipto.com
Kamailio World Conference - www.kamailioworld.com