[SR-Dev] git:master: Support for auto_inv_100_reason tm parameter.
Jan Janak
jan at iptel.org
Thu Mar 19 18:18:30 CET 2009
Module: sip-router
Branch: master
Commit: 9d472adf9d2dd7241feeedd6b64699e2a6485fd0
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=9d472adf9d2dd7241feeedd6b64699e2a6485fd0
Author: Andreas Heise <Andreas.Heise at nextiraone.de>
Committer: Jan Janak <jan at iptel.org>
Date: Thu Mar 19 16:32:58 2009 +0100
Support for auto_inv_100_reason tm parameter.
This patch adds support for auto_inv_100_reason parameter in tm module.
The patch was created originally for kamailio and we merge it into the
sr version of tm module too. The parameter allows to configure the
reason phrase used in 100 replies.
Signed-off-by: Jan Janak <jan at iptel.org>
---
modules/tm/config.c | 3 +++
modules/tm/config.h | 1 +
modules/tm/doc/params.xml | 25 +++++++++++++++++++++++--
modules/tm/t_funcs.c | 2 +-
modules/tm/tm.c | 4 +++-
5 files changed, 31 insertions(+), 4 deletions(-)
diff --git a/modules/tm/config.c b/modules/tm/config.c
index ffa3892..3303560 100644
--- a/modules/tm/config.c
+++ b/modules/tm/config.c
@@ -66,6 +66,7 @@ struct cfg_group_tm default_tm_cfg = {
MAX_NONINV_LIFETIME, /* tm_max_noninv_lifetime */
1, /* noisy_ctimer */
1, /* tm_auto_inv_100 */
+ "trying -- your call is important to us", /* tm_auto_inv_100_r */
500, /* tm_unix_tx_timeout -- 500 ms by default */
1, /* restart_fr_on_each_reply */
0, /* pass_provisional_replies */
@@ -126,6 +127,8 @@ cfg_def_t tm_cfg_def[] = {
"will be always replied"},
{"auto_inv_100", CFG_VAR_INT, 0, 1, 0, 0,
"automatically send 100 to an INVITE"},
+ {"auto_inv_100_reason", CFG_VAR_STRING, 0, 0, 0, 0,
+ "reason text of the automatically send 100 to an INVITE"},
{"unix_tx_timeout", CFG_VAR_INT, 0, 0, 0, 0,
"Unix socket transmission timeout, in milliseconds"},
{"restart_fr_on_each_reply", CFG_VAR_INT, 0, 1, 0, 0,
diff --git a/modules/tm/config.h b/modules/tm/config.h
index cf2227d..c2936ea 100644
--- a/modules/tm/config.h
+++ b/modules/tm/config.h
@@ -111,6 +111,7 @@ struct cfg_group_tm {
unsigned int tm_max_noninv_lifetime;
int noisy_ctimer;
int tm_auto_inv_100;
+ char *tm_auto_inv_100_r;
int tm_unix_tx_timeout;
int restart_fr_on_each_reply;
int pass_provisional_replies;
diff --git a/modules/tm/doc/params.xml b/modules/tm/doc/params.xml
index 2fc1723..1b61a59 100644
--- a/modules/tm/doc/params.xml
+++ b/modules/tm/doc/params.xml
@@ -332,8 +332,8 @@ modparam("tm", "restart_fr_on_each_reply", 0)
Default value is 1 (on).
</para>
<para>
- See also:
- <function>t_set_auto_inv_100()</function>.
+ See also: <function>t_set_auto_inv_100()</function>
+ <varname>auto_inv_100_reason</varname>.
</para>
<example>
<title>Set <varname>auto_inv_100</varname> parameter</title>
@@ -345,6 +345,27 @@ modparam("tm", "auto_inv_100", 0)
</example>
</section>
+ <section id="auto_inv_100_reason">
+ <title><varname>auto_inv_100_reason</varname> (string)</title>
+ <para>
+ Set reason text of the automatically send 100 to an INVITE.
+ </para>
+ <para>
+ Default value is "trying -- your call is important to us".
+ </para>
+ <para>
+ See also: <varname>auto_inv_100</varname>.
+ </para>
+ <example>
+ <title>Set <varname>auto_inv_100_reason</varname> parameter</title>
+ <programlisting>
+...
+modparam("tm", "auto_inv_100_reason", "Trying")
+...
+ </programlisting>
+ </example>
+ </section>
+
<section id="unix_tx_timeout">
<title><varname>unix_tx_timeout</varname> (integer)</title>
<para>
diff --git a/modules/tm/t_funcs.c b/modules/tm/t_funcs.c
index 5f62f0e..f07b002 100644
--- a/modules/tm/t_funcs.c
+++ b/modules/tm/t_funcs.c
@@ -324,7 +324,7 @@ int t_relay_to( struct sip_msg *p_msg , struct proxy_l *proxy, int proto,
{
DBG( "SER: new INVITE\n");
if (!t_reply( t, p_msg , 100 ,
- "trying -- your call is important to us"))
+ cfg_get(tm, tm_cfg, tm_auto_inv_100_r)))
DBG("SER: ERROR: t_reply (100)\n");
}
diff --git a/modules/tm/tm.c b/modules/tm/tm.c
index ecb42ed..538e683 100644
--- a/modules/tm/tm.c
+++ b/modules/tm/tm.c
@@ -90,7 +90,8 @@
* t_relay_to_{udp,tcp,tls}(<no param>) (force protocol, but
* forward to uri) (andrei)
* 2008-08-11 sctp support: t_relay_to_sctp, t_replicate_sctp,
- * t_forward_nonack_sctp (andrei
+ * t_forward_nonack_sctp (andrei)
+ * 2009-03-18 added a new param: auto_inv_100_reason (aheise)
*/
@@ -425,6 +426,7 @@ static param_export_t params[]={
{"max_noninv_lifetime", PARAM_INT, &default_tm_cfg.tm_max_noninv_lifetime},
{"noisy_ctimer", PARAM_INT, &default_tm_cfg.noisy_ctimer },
{"auto_inv_100", PARAM_INT, &default_tm_cfg.tm_auto_inv_100 },
+ {"auto_inv_100_reason", PARAM_STRING, &default_tm_cfg.tm_auto_inv_100_r },
{"unix_tx_timeout", PARAM_INT, &default_tm_cfg.tm_unix_tx_timeout },
{"restart_fr_on_each_reply", PARAM_INT,
&default_tm_cfg.restart_fr_on_each_reply},
More information about the sr-dev
mailing list