Daniel, Klaus thanks a lot for your responses i do appreciate them,
just got me a bit confuse because on the documents as what Daniel
suggest to advertise directive for listen parameter, I do if you see
my config below that i advertise it and have an alias, kamailio still
sends an invite to itself without recognizing that it came from the
internal ip.
Is there anything else wrong that i am not putting on my advertise line ?
thanks i really apreciate your input.
Julian.
*listen=udp:1.1.1.1:5060 advertise 2.2.2.2:5060*>>* *>>**>>*
alias=1.1.1.1:5060 <http://1.1.1.1:5060>*>>* alias=1.1.1.1*>>*
alias=2.2.2.2:5060 <http://2.2.2.2:5060>*>>* alias=2.2.2.2*
>Hello,
>
>for reference, in case kamailio is running behind nat, like on AWS, one
>should just use advertise directive for listen parameter, like:>
>
>listen=proto:privateip:port advertise publicip:port>
>
>
>See:
>
>http://www.kamailio.org/wiki/cookbooks/4.0.x/core#listen
>
>It simplifies the config by not needing to use alias parameter,
>advertised_address/set_addvertised_address() and record_route_preset().>
>
>Cheers,
>Daniel
>
>On 10/18/13 8:23 AM, Klaus Darilion wrote:
>**>**>* On 17.10.2013 17:31, julian arsanches wrote:*>>* Hi all, before hand thanks for all the support received on this channel.*>>**>>* I have an issue with an installed server on a aws instance which is*>>* giving me routing loops, my setup is simple, i have alias set for both*>>* ips internal and external and the loop still present when t_relay don't*>>* find any routes to relay it just sent it to itself with the public ip*>>* then the loop starts.*>>**>>* can any one please advise how can i prevent that or just tell t_relay*>>* that if there is no more routes just respond with a cancel or stop*>>* searching.*>**>* If you call t_relay, then the message will be forwarded to $ru (or to *>* $du if $du is set). t_relay itself does not have any logic inside.*>**>* Thus, if you do not want a message to be forwarded, then you must not *>* call t_relay.*>**>* If you do not want to send a message to a certain destination, then *>* set $ru (the domain part) to the respective destination.*>**>* One issue may be the aliases. If Kamailio thinks that it is not *>* authoritative for a domain, then it forwards the message to the *>* domain. Kamailio by default feels authoritative for the IP addresses *>* on which it listens (the private IP addresses). Thus if a request is *>* received by Kamailio, but the RURI (request URI, $ru) indicated the *>* public IP address, KAmailio by default forwards the message to the *>* respective RURI (which my be forward again by AWS NAT to Kamailio).*>**>* Thus, alias=public.ip.addr.ess must be added to the config.*>**>* If there are still problems you have set debug=4 and track in the log *>* file how the message is processed, and where the routing decision *>* takes the wrong direction.*>**>* regards*>* Klaus*>**>>**>>* same thing happens when a gw code is not found on the dispatcher list *>>* file.*>>**>>* as i had read by just specifying the alias=domain it should take care of*>>* it but it is not happening perhaps because it is a AWS instance, or most*>>* likely i am missing something after the T_relay to stop the call from*>>* looping.*>>**>>* I do have several headers fix because i have an asterisk sending calls*>>* with lots of signalling calls added to the call that i need to remove*>>* before the call is passed out to a carrier or another UA, Kamailio is*>>* just proxing the calls between asterisk and the outside world no Media*>>* handling, No registrations.*>>**>>* Again thanks for any tips to find my answer or if anyone had a similar*>>* issue thanks again.*>>**>>* thanks for any help .*>>**>>* Julian.*>>**>>* on this setup i have*>>**>>* public ip as 2.2.2.2*>>**>>* private IP as 1.1.1.1*>>**>>**>>* #!KAMAILIO*>>* ####### Global Parameters #########*>>**>>* #!ifdef WITH_DEBUG*>>* debug=4*>>* log_stderror=yes*>>* #!else*>>* #debug=2*>>* #log_stderror=yes*>>* #!endif*>>**>>* memdbg=5*>>* memlog=5*>>**>>* log_facility=LOG_LOCAL7*>>**>>* fork=yes*>>* children=6*>>**>>* auto_aliases=no*>>**>>**>>* listen=udp:1.1.1.1:5060 <http://1.1.1.1:5060> advertise 2.2.2.2:5060*>>* <http://2.2.2.2:5060>*>>**>>* alias=1.1.1.1:5060 <http://1.1.1.1:5060>*>>* alias=1.1.1.1*>>* alias=2.2.2.2:5060 <http://2.2.2.2:5060>*>>* alias=2.2.2.2*>>**>>**>>* port=5060*>>**>>* enable_tls=no*>>**>>* #tcp_connection_lifetime=3605*>>**>>* #!ifdef WITH_SRCPATH*>>* mpath="modules_k:modules"*>>* #!else*>>* mpath="/usr/lib64/kamailio/modules_k/:/usr/lib64/kamailio/modules/"*>>**>>* #!endif*>>* loadmodule "db_mysql.so"*>>* ##loadmodule "mi_fifo.so"*>>* loadmodule "tm.so"*>>* loadmodule "sl.so"*>>* loadmodule "acc.so"*>>* loadmodule "rr.so"*>>* loadmodule "maxfwd.so"*>>* loadmodule "uac.so"*>>* loadmodule "textops.so"*>>* loadmodule "pv.so"*>>* loadmodule "dispatcher.so"*>>* loadmodule "usrloc.so"*>>* loadmodule "registrar.so"*>>* loadmodule "siputils.so"*>>* loadmodule "sanity.so"*>>* loadmodule "ctl.so"*>>* loadmodule "mi_rpc.so"*>>* loadmodule "avpops.so"*>>* #!ifdef WITH_NAT*>>* loadmodule "nathelper.so"*>>* loadmodule "rtpproxy.so"*>>* #!endif*>>* loadmodule "xlog.so"*>>* ##mysqlcdr*>>* modparam("acc", "db_flag", 2)*>>* modparam("acc", "db_missed_flag", 3)*>>* modparam("acc", "report_cancels", 1)*>>* modparam("acc", "db_url", "mysql://openser:password@1.1.1.2/openser*>>* <http://openser:password@1.1.1.2/openser>")*>>* modparam("acc", "db_extra", "from_uri=$fu; to_uri=$tu; intid=$fU;*>>* type_call=$si; dst_ip=$ru; carriercode=$tu;callmode=$var(out)" )*>>**>>* #loadmodule "carrierroute"*>>* modparam("tm", "cancel_b_method", 1)*>>* modparam("tm", "failure_reply_mode", 3)*>>* modparam("tm", "fr_timer", 30000)*>>* modparam("tm", "fr_inv_timer", 120000)*>>**>>* modparam("dispatcher", "list_file", "/etc/kamailio/dispatcher.lst")*>>* modparam("rr", "enable_full_lr", 1)*>>**>>* #!ifdef WITH_NAT*>>* # ----- rtpproxy params -----*>>* modparam("rtpproxy", "rtpproxy_sock", "udp:127.0.0.1:7722*>>* <http://127.0.0.1:7722>")*>>**>>* # ----- nathelper params -----*>>* modparam("nathelper", "natping_interval", 30)*>>* modparam("nathelper", "ping_nated_only", 1)*>>* modparam("nathelper", "sipping_bflag", FLB_NATSIPPING)*>>* modparam("nathelper", "sipping_from", "sip:pinger at kamailio.org <http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users>*>>* <mailto:sip%3Apinger at kamailio.org <http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users>>")*>>* # ----- mi_fifo params -----*>>**>>* ##modparam("mi_fifo", "fifo_name", "/tmp/kamailio_fifo")*>>**>>* # params needed for NAT traversal in other modules*>>* modparam("nathelper|registrar", "received_avp", "$avp(RECEIVED)")*>>* modparam("usrloc", "nat_bflag", FLB_NATB)*>>* #!endif*>>* modparam("xlog", "buf_size", 8192)*>>* modparam("xlog", "force_color", 1)*>>* #carrierroute*>>* #modparam("carrierroute", "config_file", *>>* "/etc/kamailio/carrierroute.conf")*>>* #end carrierroute*>>**>>* modparam("pv", "shvset", "ruta=s:$ru")*>>* modparam("pv", "varset","in=s:IN")*>>* modparam("pv", "varset","out=s:OUT")*>>* #################BEGINING MAINROUTE##################*>>* request_route {*>>**>>* if (!mf_process_maxfwd_header("4")) {*>>* sl_send_reply("483","Too Many Hops");*>>* drop;*>>* exit;*>>* }*>>* ##*>>* # initial sanity checks -- too long messages*>>* if (msg:len >= 2048 ) {*>>* sl_send_reply("513", "Message too big");*>>* xlog("out header CHECK 513 baderror from_uri=$fu;($ct++)<$tU---=$var(n)>*>>* to_uri=$tu; intid=$fU; type_call=$si; dst_ip=$ru;*>>* carriercode=$var(z);callmode=$var(out)");*>>* drop;*>>* exit;*>>* };*>>* #*>>* if(is_method("OPTIONS")) {*>>* # send reply for each options request*>>* sl_send_reply("200", "ok");*>>* exit();*>>* }*>>**>>**>>**>>* #*>>* if ( is_method("ACK") ) {*>>* if ( t_check_trans() ) {*>>* # no loose-route, but stateful ACK;*>>* # must be an ACK after a 487*>>* # or e.g. 404 from upstream server*>>* $var(n)=$(tU{s.substr,3,0});*>>* $var(i)=$(ct{re.subst,/^.*11811(.*)/"\1/});*>>**>>* $var(t)=$(fn{re.subst,/^.*11811(.*)/"\1/});*>>**>>* $var(r)=$rd; ##to domain*>>* $fU=$(fU{s.substr,14,0});*>>* $fn=$var(t);*>>* $tU=$var(n);*>>* $td=$var(r);*>>**>>* subst('/^Contact:.*11811(.*)$/Contact: <sip:\1\2/ig');*>>**>>* # Remove prefixes numbers from Contact\*>>* t_relay();*>>* exit;*>>* } else {*>>* # ACK without matching transaction ... ignore and discard*>>* $var(n)=$(tU{s.substr,3,0});*>>* $var(i)=$(ct{re.subst,/^.*11811(.*)/"\1/});*>>**>>* $var(t)=$(fn{re.subst,/^.*11811(.*)/"\1/});*>>**>>* $var(r)=$rd; ##to domain*>>* $fU=$(fU{s.substr,14,0});*>>* $fn=$var(t);*>>* $tU=$var(n);*>>* $td=$var(r);*>>**>>* subst('/^Contact:.*11811(.*)$/Contact: <sip:\1\2/ig');*>>* t_relay();*>>* exit;*>>* }*>>* }*>>* ##responding to bye requests and modifying headers to match invite*>>* if(method=="BYE") {*>>* #Account BYE transactions*>>* #$var(d) = $tu;*>>* #$var(e)=$(var(d){s.substr,4,3});*>>* setflag(2);*>>* setflag(10);*>>* $var(n)=$(tU{s.substr,3,0});*>>* $var(i)=$(ct{re.subst,/^.*11811(.*)/"\1/});*>>**>>* $var(t)=$(fn{re.subst,/^.*11811(.*)/"\1/});*>>**>>* $var(r)=$rd; ##to domain*>>* $fU=$(fU{s.substr,14,0});*>>* $fn=$var(t);*>>* $tU=$var(n);*>>* $td=$var(r);*>>**>>* subst('/^Contact:.*11811(.*)$/Contact: <sip:\1\2/ig');*>>* t_relay();*>>* exit;*>>* };*>>**>>* #CANCEL processing*>>* if (method=="CANCEL") {*>>* setflag(2);*>>* setflag(3);*>>* $var(n)=$(tU{s.substr,3,0});*>>* $var(i)=$(ct{re.subst,/^.*11811(.*)/"\1/});*>>**>>* $var(t)=$(fn{re.subst,/^.*11811(.*)/"\1/});*>>**>>* $var(r)=$rd; ##to domain*>>* $fU=$(fU{s.substr,14,0});*>>* $fn=$var(t);*>>* $tU=$var(n);*>>* $td=$var(r);*>>**>>* subst('/^Contact:.*11811(.*)$/Contact: <sip:\1\2/ig');*>>* t_relay();*>>* exit;*>>* ##if (t_check_trans()) t_relay();*>>**>>* exit;*>>* };*>>**>>**>>* #*>>**>>**>>* #*>>* if (loose_route()) {*>>**>>**>>* ##*>>* if(is_method("OPTIONS")) {*>>* # send reply for each options request*>>* sl_send_reply("200", "ok");*>>* exit();*>>* }*>>* ##*>>* if(method=="BYE") {*>>* #Account BYE transactions*>>* setflag(2);*>>* };*>>**>>**>>* ##CANCEL processing*>>* if (method=="CANCEL") {*>>* setflag(3);*>>* $var(n)=$(tU{s.substr,3,0});*>>* $var(i)=$(ct{re.subst,/^.*11811(.*)/"\1/});*>>**>>* $var(t)=$(fn{re.subst,/^.*11811(.*)/"\1/});*>>**>>* $var(r)=$rd; ##to domain*>>* $fU=$(fU{s.substr,14,0});*>>* $fn=$var(t);*>>* $tU=$var(n);*>>* $td=$var(r);*>>* subst('/^Contact:.*11811(.*)$/Contact: <sip:\1\2/ig');*>>* if (t_check_trans()) t_relay();*>>* exit;*>>* };*>>**>>* if (!t_relay()) {*>>* sl_reply_error();*>>* }*>>* exit;*>>* }*>>**>>**>>* if (is_method("INVITE")) { #Procesing invites*>>**>>**>>* record_route();*>>* }*>>* ##LOGGING CALL BEFORE IS PROCESSED*>>* xlog("before strip,< time [$Tf] > Aip= $src_ip, r-uri($ru\n");*>>* xlog("before from_uri=$fu; to_uri=$tu; pai=<<$ct>>;intid=$fU;*>>* type_call=$si; dst_ip=$ru; carriercode=$tu;callmode=$var(out) *>>* --$$--$ou");*>>* #creando rutas*>>* setflag(2);*>>* # Account Missed calls*>>* setflag(3);*>>* ###VARIABLES FOR MODIFICATIONS*>>* $var(x) = $(ru);*>>**>>* $var(y)=$(var(x){s.substr,4,3});*>>**>>* $var(z)=$(var(y){s.int <http://s.int>});*>>**>>* $var(t)=$(var(x){s.substr,7,0});*>>**>>* $var(h)=$(var(x){s.substr,0,7});*>>**>>* $var(o)=$(fU{s.substr,14,0});*>>**>>* if($(var(x){s.len}) < 3)*>>* {*>>* $var(z)='0'+ $var(z);*>>* }*>>**>>* xlog("dsroute $var(z)fullruri($ru)\n");*>>**>>**>>* strip(3);*>>**>>* xlog("after strip time [$Tf] method ($rm) via el code*>>* ($var(z)--varhex($var(h))-- ($var(y))\n");*>>* xlog("after from_uri=$fu; to_uri=$tu; intid=$fU; type_call=$si;*>>* dst_ip=$ru; carriercode=$var(z);callmode=$var(out)");*>>**>>* ds_select_domain ("$var(z)", "4");#carrer dynamic*>>**>>**>>* ###########KILLING BUGGIES#######when t_realy fails to find a route a*>>* loop is generate then strip takes off a digit until 0 at 2.2.2.2 <http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users>*>>* <mailto:0 at 2.2.2.2 <http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users>> is left for to: user this kills that call.#####*>>* if ($(tU{s.len}) < 4) {*>>* xlog("CHECK TU 1bad kILLING BUGGIES>>> $tu--$td-$tU-$tt--$dd-$dd-$du-*>>* -<<$rd>$ru --- $oU> pai+++ <<$ct>>++ from_uri=$fu;<$tU---=$var(n)>*>>* to_uri=$tu; }pai<$ai> id=$fU; type_call=$si; dst_ip=$ru;*>>* carriercode=$var(z);callmode=$var(out)");*>>* ##sl_reply_error();*>>* ##sl_send_reply("513", "Message too big");*>>* ##sl_send_reply("488","Not Acceptable Here");*>>* sl_send_reply("488","Not Acceptable Here");*>>* #t_reset_retr();*>>* #t_release();*>>* ##if(!t_relay()){ sl_reply_error(); drop; exit;}*>>**>>* #if (!t_relay()) { sl_reply_error(); break; };*>>* # t_relay();*>>* #setflag(2);*>>* drop;*>>* exit;*>>**>>* }; ## Endif less than 4*>>* ##############END KILLING###########*>>* ################ROUTE SELECTION###############*>>* if($(fn{s.len}) > 10) { # IF WE CHECK FOR FROM: ROUTEID MUST BE LONGER*>>* THAN 10 DIGITS TO BE A VALID ROUTE*>>**>>* xlog("out header CHECK more than 10 digits BEFORE*>>* from_uri=$fu;($ct++)<$tU---=$var(n)> to_uri=$tu; intid=$fU;*>>* type_call=$si; dst_ip=$ru; carriercode=$var(z);callmode=$var(out)");*>>* $var(n)=$(tU{s.substr,3,0});*>>* $var(i)=$(ct{re.subst,/^.*00700(.*)/"\1/});*>>* $var(t)=$(fn{re.subst,/^.*00700(.*)/"\1/});*>>* $var(r)=$rd; ##to domain*>>* $fU=$(fU{s.substr,14,0});*>>* $fn=$var(t);*>>* $tU=$var(n);*>>* $td=$var(r);*>>**>>* subst('/^Contact:.*11811(.*)$/Contact: <sip:\1\2/ig'); # Remove number*>>* from Contact*>>**>>* ##if(!t_relay()){ sl_reply_error(); drop; exit;}*>>**>>* if (!t_relay()) { sl_reply_error(); break; };*>>**>>* # t_relay();*>>**>>* drop;*>>* exit;*>>**>>* };*>>**>>* ################ENDrouteselect##############################*>>**>>**>>* ###############AFTER LAST IF##############reply 488 ANY CALL THAT DID*>>* NOT FOUND A ROUTE.*>>* sl_send_reply("488","Not Acceptable Here");*>>* drop;*>>* exit;*>>* }*>>**>>* ###################END MAINROUTE#################*>>**>>**>>**>>**>>**>>* On My dispatcher.lst i have*>>**>>**>>* 1 sip:1.1.1.1:5060 <http://1.1.1.1:5060>*>>* 2 sip:2.2.2.2:5060 <http://2.2.2.2:5060>*>>* 3 sip:3.3.3.3:5060 <http://3.3.3.3:5060>*>>* 3 sip:3.3.3.5:5060 <http://3.3.3.5:5060>*>>* ...*>>**>>**>>**>>**>>* _______________________________________________*>>* SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list*>>* sr-users at lists.sip-router.org <http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users>*>>* http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users*>>**>**>* _______________________________________________*>* SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list*>* sr-users at lists.sip-router.org <http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users>*>* http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users*
--
Daniel-Constantin Mierla -
http://www.asipto.comhttp://twitter.com/#!/miconda -
http://www.linkedin.com/in/miconda
Kamailio Advanced Trainings - Berlin, Nov 25-28; Miami, Nov 18-20, 2013
- more details about Kamailio trainings at http://www.asipto.com -
------------------------------
- Previous message: [SR-Users] Loop detected on aws
setup<http://lists.sip-router.org/pipermail/sr-users/2013-October/080128.html>
- Next message: [SR-Users] Proxy-Registrar call
issues<http://lists.sip-router.org/pipermail/sr-users/2013-October/080126.html>
- *Messages sorted by:* [ date
]<http://lists.sip-router.org/pipermail/sr-users/2013-October/date.html#80129>
[ thread ]<http://lists.sip-router.org/pipermail/sr-users/2013-October/thread.html#801…>
[ subject ]<http://lists.sip-router.org/pipermail/sr-users/2013-October/subject.html#80…>
[ author ]<http://lists.sip-router.org/pipermail/sr-users/2013-October/author.html#801…>
------------------------------
More information about the sr-users mailing
list<http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users>
Hi,
I am looking to use SNMP with Zabbix to monitor Kamailio. However the
module is not in the directory so won't load. I built Kamailio from YUM, is
there amyway I can include the SNMP module without having to reinstall?
Thanks,
Keith
Hello again.
Compiling from source, using the proxy-to-central registrar configurations
outlined here
http://www.kamailio.org/docs/modules/4.0.x/modules/outbound.html and adding
in the additional "append_hf("Supported: path, outbound\r\n");" on the
proxy, registration works.
However, when a call is made, the debug traces show problems when entering
this area of the configuration outlined in the Outbound Module:
if (!t_load_contacts()) {
send_reply("500", "Server Internal Error");
exit;
}
if (!t_next_contacts()) {
send_reply("500", "Server Internal Error");
exit;
}
as shown here:
1(26960) ERROR: *** cfgtrace: c=[//etc/kamailio/kamailio.cfg] l=700 a=16
n=if
1(26960) ERROR: *** cfgtrace: c=[//etc/kamailio/kamailio.cfg] l=695 a=24
n=t_load_contacts
1(26960) DEBUG: tm [t_serial.c:166]: t_load_contacts(): nr_branches is 0
1(26960) DEBUG: tm [t_serial.c:169]: t_load_contacts(): nothing to do -
only one contact!
1(26960) ERROR: *** cfgtrace: c=[//etc/kamailio/kamailio.cfg] l=705 a=16
n=if
1(26960) ERROR: *** cfgtrace: c=[//etc/kamailio/kamailio.cfg] l=700 a=24
n=t_next_contacts
1(26960) DEBUG: tm [t_serial.c:376]: t_next_contacts(): no contacts in
contacts_avp - we are done!
1(26960) ERROR: *** cfgtrace: c=[//etc/kamailio/kamailio.cfg] l=701 a=26
n=send_reply
The result from t_load_contacts seems to imply one contact exists, which
would be correct as there should be one, but then t_next_contacts sees no
cotacts and the sever returns an error, breaking the call.
Any ideas?
I am at the Database configuration screen and I get the Subject line message
when I try to submit.
I used directions from the
http://liuchangjun.com/2011/04/08/howto-kamailio-openser-installation-guide/
and edited /usr/local/etc/kamailio/kamctlrc per "2. Configuration Config the
enviroment variables"
I was able to successfully # /usr/local/sbin/kamdbctl create
And I get all the tables in db openser when I do a mysql>show full tables
from openser;
But I get this error when I try to do a #/usr/local/sbin/kamailio
loading modules under
/usr/local/lib/kamailio/modules_k/:/usr/local/lib64/kamailio/modules/
ERROR: bad config file (3 errors)
root@proxy:/usr/local/lib64/kamailio/modules#
Little stuck. Thanks.
Sorry if this is a duplicate email. First one bounced.
"I am having trouble starting Kamailio. Please see below for the error
output and the content of /usr/local/etc/kamailio/kamailio.cfg at the lines
noted in the error. Following instrucions at
http://www.kamailio.org/wiki/install/4.0.x/git
root@proxy:/etc/default# /etc/init.d/kamailio start
Not starting Kamailio: invalid configuration file!
-e
0(15561) : <core> [cfg.y:3567]: yyerror_at(): parse error in config file
/usr/local/etc/kamailio/kamailio.cfg, line 356, column 30-34: syntax error
0(15561) : <core> [cfg.y:3567]: yyerror_at(): parse error in config file
/usr/local/etc/kamailio/kamailio.cfg, line 356, column 30-34: Invalid
arguments
0(15561) : <core> [cfg.y:3570]: yyerror_at(): parse error in config file
/usr/local/etc/kamailio/kamailio.cfg, line 356, column 35:
ERROR: bad config file (3 errors)
# ----- usrloc params -----
/* enable DB persistency for location entries */
#!ifdef WITH_USRLOCDB
modparam("usrloc", "db_url", DBURL)
modparam("usrloc", "db_mode", 2)
modparam("usrloc", "use_domain", MULTIDOMAIN)
#!endif
Thanks."
Hello,
In our network topology we use Kamailio at the edge of our network proxying requests from a core set of FreeSWITCH servers.
I have a new termination provider where a session timer ReINVITE fails because the ACK is sent to the contact address of the FreeSWITCH server, not the proxy. Can I Record-Route these in dialog requests? If so, where should I do it in the config?
A quick google search returned this thread:
https://lists.cs.columbia.edu/pipermail/sip-implementors/2003-June/005089.h…
which confused me a little.
Thanks,
Spencer
My in dialog config block looks like this:
# Handle requests within SIP dialogs
route[WITHINDLG] {
if (has_totag()) {
# sequential request withing a dialog should
# take the path determined by record-routing
if (loose_route()) {
if (is_method("BYE")) {
setflag(FLT_ACC); # do accounting ...
setflag(FLT_ACCFAILED); # ... even if the transaction fails
setflag(FLT_SIPTRACE);
}
if (is_method("ACK")) {
# ACK is forwarded statelessy
route(NATMANAGE);
}
route(RELAY);
} else {
if ( is_method("ACK") ) {
if (t_check_trans()) {
# no loose-route, but stateful ACK;
# must be an ACK after a 487
# or e.g. 404 from upstream server
t_relay();
exit;
} else {
# ACK without matching transaction ... ignore and discard
exit;
}
}
sl_send_reply("404","Not here");
}
exit;
}
}
On debian 7/wheezy, updated this morning, running kamailio 4.0.x (pulled
this morning, git commit cabe585ea64c03d29bcdbe5c46b0190c41bf18a5), I'm
running into an error loading carrierroute.so. After setting the
loadmodule "carrierroute.so" in the configuration, and starting
kamailio, I'm given the error:
Not starting Kamailio: invalid configuration file!
-e
0(28740) ERROR: <core> [sr_module.c:572]: load_module(): ERROR:
load_module: could not open module
</usr/lib64/kamailio/modules/carrierroute.so>:
/usr/lib64/kamailio/modules/carrierroute.so: undefined symbol:
cfg_set_error_function
0(28740) : <core> [cfg.y:3567]: yyerror_at(): parse error in config
file /etc/kamailio/kamailio.cfg, line 244, column 12-28: failed to load
module
0(28740) ERROR: <core> [modparam.c:163]: set_mod_param_regex():
set_mod_param_regex: No module matching <carrierroute> found
0(28740) : <core> [cfg.y:3570]: yyerror_at(): parse error in config
file /etc/kamailio/kamailio.cfg, line 459, column 47: Can't set module
parameter
0(28740) ERROR: <core> [modparam.c:163]: set_mod_param_regex():
set_mod_param_regex: No module matching <carrierroute> found
0(28740) : <core> [cfg.y:3570]: yyerror_at(): parse error in config
file /etc/kamailio/kamailio.cfg, line 460, column 90: Can't set module
parameter
ERROR: bad config file (3 errors)
It starts fine without the carrierroute module (though I won't
accomplish what I'd like to without it). I just subscribed to the list,
so I can't reply to previous emails, but it looks like Oliver Roth is
seeing the same thing at
http://lists.sip-router.org/pipermail/sr-users/2013-October/080096.html.
I saw a message from august that was vague regarding possibly
something similar on CentOS needing libconfuse, but having installed
that and remade/installed the debs, that doesn't appear to be it.
At this point I'm fairly stuck, and would love a tip in the right direction.
TIA,
-Aaron
Dear kamailio'ns
I am running kamailio 4.0.3 on ubuntu 12.04 and installed kamailio from its
repository. I had changed the default kamailio config file, and inserted
xmpp and presence related script. But after all when i tried to start my
kamailio server I am getting the following errors:
$ sudo /etc/init.d/kamailio start
Not starting Kamailio: invalid configuration file!
-e
0(5502) INFO: tls [tls_init.c:385]: init_tls_compression(): tls: init_tls:
disabling compression...
0(5502) : <core> [cfg.y:3570]: yyerror_at(): parse error in config file
/etc/kamailio/kamailio.cfg, line 816, column 6: syntax error
0(5502) : <core> [cfg.y:3570]: yyerror_at(): parse error in config file
/etc/kamailio/kamailio.cfg, line 816, column 6: missing '(' or ')' ?
0(5502) : <core> [cfg.y:3570]: yyerror_at(): parse error in config file
/etc/kamailio/kamailio.cfg, line 816, column 6: bad command: missing ';'?
0(5502) : <core> [cfg.y:3570]: yyerror_at(): parse error in config file
/etc/kamailio/kamailio.cfg, line 816, column 15: '('')' expected (function
call)
0(5502) : <core> [cfg.y:3570]: yyerror_at(): parse error in config file
/etc/kamailio/kamailio.cfg, line 816, column 15: bad command: missing ';'?
0(5502) : <core> [cfg.y:3570]: yyerror_at(): parse error in config file
/etc/kamailio/kamailio.cfg, line 816, column 17: bad command
ERROR: bad config file (6 errors)
All of the above errors are pointing at route[Presence] block in the script.
What could be the reason for the errors and is there any fault in my config
file (please find the attachment for the same).
Thanks in advance.
Regards.
Ravi
It appears as though you might have multiple syntax errors in the script -- such as not opening or not closing certain tags.
The best way to troubleshoot this (or at least the way I like best) is to go back to your last known good config and make the changes one at a time.
--fred
Wingsravi R <wingsravi777(a)gmail.com> wrote:
>_______________________________________________
>SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>sr-users(a)lists.sip-router.org
>http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users