1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166
|
<?xml version="1.0" encoding='ISO-8859-1'?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!-- Include general documentation entities -->
<!ENTITY % docentities SYSTEM "../../../docbook/entities.xml">
%docentities;
]>
<!-- Module User's Guide -->
<chapter>
<title>&adminguide;</title>
<section>
<title>Overview</title>
<para>
The module executes route blocks on a timer base. It can create new
timer processes and execute many route blocks on same timer.
</para>
<para>
A static faked SIP message is given as parameter to called functions,
so all functions available for REQUEST_ROUTE can be used.
</para>
</section>
<section>
<title>Dependencies</title>
<section>
<title>&kamailio; Modules</title>
<para>
The following modules must be loaded before this module:
<itemizedlist>
<listitem>
<para>
<emphasis>No dependencies on other &kamailio; modules</emphasis>.
</para>
</listitem>
</itemizedlist>
</para>
</section>
<section>
<title>External Libraries or Applications</title>
<para>
The following libraries or applications must be installed before running
&kamailio; with this module loaded:
<itemizedlist>
<listitem>
<para>
<emphasis>None</emphasis>.
</para>
</listitem>
</itemizedlist>
</para>
</section>
</section>
<section>
<title>Parameters</title>
<section>
<title><varname>timer</varname> (str)</title>
<para>
The definition of a timer. The value of the parameter must have the
following format:
</para>
<itemizedlist>
<listitem>
<para>
"name=_string_;mode=_number_;interval=_number_"
</para>
</listitem>
</itemizedlist>
<para>
The parameter can be set multiple times to get more timers in
same configuration file.
</para>
<itemizedlist>
<listitem>
<para>
<emphasis>name</emphasis> - name of the timer.
</para>
</listitem>
<listitem>
<para>
<emphasis>mode</emphasis> - if set to 1, will create a new timer
process.
</para>
</listitem>
<listitem>
<para>
<emphasis>interval</emphasis> - timer interval in seconds or
micro-seconds (the value must be ended in 'u'). For micro-seconds
intervals, mode is set always to 1.
</para>
</listitem>
</itemizedlist>
<para>
<emphasis>
Default value is NULL.
</emphasis>
</para>
<example>
<title>Set <varname>timer</varname> parameter</title>
<programlisting format="linespecific">
...
# time interval set to 10 seconds
modparam("rtimer", "timer", "name=ta;interval=10;mode=1;")
# time interval set to 100 mili-seconds
modparam("rtimer", "timer", "name=ta;interval=100000u;mode=1;")
...
</programlisting>
</example>
</section>
<section>
<title><varname>exec</varname> (str)</title>
<para>
Specify route to be executed on timer. The value of the parameter
must have the following format:
</para>
<itemizedlist>
<listitem>
<para>
"timer=_string_;route=_number_"
</para>
</listitem>
</itemizedlist>
<para>
The parameter can be set multiple times to get more routes
executed on same timer.
</para>
<itemizedlist>
<listitem>
<para>
<emphasis>timer</emphasis> - name of the timer.
</para>
</listitem>
<listitem>
<para>
<emphasis>route</emphasis> - the index of the route to be executed.
</para>
</listitem>
</itemizedlist>
<para>
<emphasis>
Default value is NULL.
</emphasis>
</para>
<example>
<title>Set <varname>exec</varname> parameter</title>
<programlisting format="linespecific">
...
modparam("rtimer", "timer", "name=ta;interval=10;mode=1;")
modparam("rtimer", "exec", "timer=ta;route=8")
route[8] {
xlog("timer routine: time is %TF\n");
# delete from my sql cache table entries older than 2H
sql_query("delete from kamailio_cache where last_updated<$TS-3600");
}
...
</programlisting>
</example>
</section>
</section>
</chapter>
|