Hi,
I have a basic yet weird problem with Rtimer module.
I cannot make it execute a route block for me at an interval of my choice
(which is what it is supposed to do, right?)
Here is a simplified example with relevant parts of my config script:
Assume I want to print "hello" every 100 ms:
I have a script like this (I've put all my global variables, in case they
matter and my relevant route blocks...)
Is there anything I am doing wrong here in the usage of rtimer?
*####### Global Parameters #########*
*#!ifdef WITH_DEBUG*
*debug=4*
*log_stderror=yes*
*#!else*
*debug=-2*
*log_stderror=no*
*#!endif*
*memdbg=5*
*memlog=5*
*log_facility=LOG_LOCAL0*
*fork=yes*
*children=4*
*/* comment the next line to enable TCP */*
*disable_tcp=yes*
*/* uncomment the next line to disable the auto discovery of local aliases*
* based on revers DNS on IPs (default on) */*
*auto_aliases=no*
*/* add local domain aliases */*
*#
alias="mysipserver.com <http://mysipserver.com>"*
*dns=no # (cmd. line: -r)*
*rev_dns=no # (cmd. line: -R)*
*port=5060*
*/* uncomment and configure the following line if you want Kamailio to *
* bind on a specific interface/port/proto (default bind on all
available) */*
*listen=eth0:5060*
*sip_warning=no*
*####### Modules Section ########*
*#set module path*
*#mpath="/usr/local/lib/kamailio/modules_k/:/usr/local/lib/kamailio/modules/"*
*loadpath "/usr/lib/x86_64-linux-gnu/kamailio/modules"*
*#loadmodule "db_mysql.so"*
*loadmodule "mi_fifo.so"*
*loadmodule "kex.so"*
*loadmodule "tm.so"*
*loadmodule "tmx.so"*
*loadmodule "sl.so"*
*loadmodule "rr.so"*
*loadmodule "pv.so"*
*loadmodule "maxfwd.so"*
*loadmodule "textops.so"*
*loadmodule "siputils.so"*
*loadmodule "xlog.so"*
*loadmodule "xprint.so"*
*loadmodule "sanity.so"*
*loadmodule "ctl.so"*
*loadmodule "mi_rpc.so"*
*loadmodule "acc.so"*
*loadmodule "dispatcher.so"*
*loadmodule "exec.so"*
*loadmodule "rtimer.so"*
*loadmodule "benchmark.so"*
*# ----------------- setting module-specific parameters ---------------*
*# ----- mi_fifo params -----*
*modparam("mi_fifo", "fifo_name", "/tmp/kamailio_fifo")*
*# ----- rr params -----*
*# add value to ;lr param to cope with most of the UAs*
*modparam("rr", "enable_full_lr", 1)*
*# do not append from tag to the RR (no need for this script)*
*modparam("rr", "append_fromtag", 0)*
*# ----- acc params -----*
*modparam("acc", "log_flag", 1)*
*modparam("acc", "failed_transaction_flag", 3)*
*modparam("acc", "log_extra", *
*
"src_user=$fU;src_domain=$fd;dst_ouser=$tU;dst_user=$rU;dst_domain=$rd;src_ip=$si")*
*# ----- tm params -----*
*modparam("tm", "fr_timer", 2000)*
*modparam("tm", "fr_inv_timer", 40000)*
*# ----- dispatcher params -----*
*modparam("dispatcher", "list_file",
"/home/ubuntu/Downloads/dispatcher.list")*
*modparam("dispatcher", "flags", 2)*
*modparam("dispatcher", "dst_avp", "$avp(AVP_DST)")*
*modparam("dispatcher", "grp_avp", "$avp(AVP_GRP)")*
*modparam("dispatcher", "cnt_avp", "$avp(AVP_CNT)")*
*# ----- xlog params -----*
*modparam("xlog", "buf_size", 8192)*
*modparam("xlog", "log_facility", "LOG_LOCAL0")*
*# ----- rtimer params -----*
*modparam("rtimer", "timer",
"name=ta;interval=1;mode=1;")*
*modparam("rtimer", "exec", "timer=ta;route=8")*
*####### Routing Logic ########*
*# main request routing logic*
*route {*
* ...*
* # calls various routing blocks, but no explicit call to route("8")*
*}*
*route[8] {*
* # to be executed on timer *
* xplog("L_ALERT","hello");*
*}*