THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
The following task has a new comment added:
FS#371 - Handling t_on_reply when use in event_route
User who did this - Pawel Sternal (Sternik)
----------
This patch solves my problem. Thank you.
----------
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=371#comment1178
You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above.
Module: sip-router
Branch: 4.1
Commit: b6c109a38f8fca82005166ed73d370a2f974a3db
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=b6c109a…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: Thu Nov 21 20:24:20 2013 +0100
sl: README updated
---
modules/sl/README | 102 ++++++++++++++++++++++++++---------------------------
1 files changed, 50 insertions(+), 52 deletions(-)
diff --git a/modules/sl/README b/modules/sl/README
index 447f700..5d7723d 100644
--- a/modules/sl/README
+++ b/modules/sl/README
@@ -1,4 +1,3 @@
-
The SL Module - Statless request handling
Bogdan Iancu
@@ -10,7 +9,7 @@ Daniel-Constantin Mierla
asipto.com
Copyright � 2003 FhG FOKUS
- _________________________________________________________________
+ __________________________________________________________________
Table of Contents
@@ -25,10 +24,10 @@ Daniel-Constantin Mierla
3. Functions
- 3.1. sl_send_reply(code, reason)
- 3.2. send_reply(code, reason)
- 3.3. sl_reply_error()
- 3.4. sl_forward _reply([ code, [ reason ] ])
+ 3.1. sl_send_reply(code, reason)
+ 3.2. send_reply(code, reason)
+ 3.3. sl_reply_error()
+ 3.4. sl_forward _reply([ code, [ reason ] ])
4. Statistics
@@ -80,10 +79,10 @@ Chapter 1. Admin Guide
3. Functions
- 3.1. sl_send_reply(code, reason)
- 3.2. send_reply(code, reason)
- 3.3. sl_reply_error()
- 3.4. sl_forward _reply([ code, [ reason ] ])
+ 3.1. sl_send_reply(code, reason)
+ 3.2. send_reply(code, reason)
+ 3.3. sl_reply_error()
+ 3.4. sl_forward _reply([ code, [ reason ] ])
4. Statistics
@@ -114,31 +113,30 @@ Chapter 1. Admin Guide
1. Overview
- The SL module allows the SIP server to act as a stateless UA server
- and generate replies to SIP requests without keeping state. That is
+ The SL module allows the SIP server to act as a stateless UA server and
+ generate replies to SIP requests without keeping state. That is
beneficial in many scenarios, in which you wish not to burden server's
memory and scale well.
- The SL module needs to filter ACKs sent after a local stateless reply
+ The SL module needs to filter ACKs sent after a local stateless reply
to an INVITE was generated. To recognize such ACKs, ser adds a special
"signature" in to-tags. This signature is sought for in incoming ACKs,
and if included, the ACKs are absorbed.
- To speed up the filtering process, the module uses a timeout
- mechanism. When a reply is sent, a timer us set. As long as the timer
- is valid, the incoming ACK requests will be checked using TO tag
- value. Once the timer expires, all the ACK messages are let through -
- a long time passed till it sent a reply, so it does not expect any ACK
- that have to be blocked.
-
- The ACK filtering may fail in some rare cases. If you think these
- matter to you, better use stateful processing (TM module) for INVITE
- processing. Particularly, the problem happens when a UA sends an
- INVITE which already has a to-tag in it (e.g., a re-INVITE) and the
- server want to reply to it. Then, it will keep the current to-tag,
- which will be mirrored in ACK. SER will not see its signature and
- forward the ACK downstream. Caused harm is not bad--just a useless ACK
- is forwarded.
+ To speed up the filtering process, the module uses a timeout mechanism.
+ When a reply is sent, a timer us set. As long as the timer is valid,
+ the incoming ACK requests will be checked using TO tag value. Once the
+ timer expires, all the ACK messages are let through - a long time
+ passed till it sent a reply, so it does not expect any ACK that have to
+ be blocked.
+
+ The ACK filtering may fail in some rare cases. If you think these
+ matter to you, better use stateful processing (TM module) for INVITE
+ processing. Particularly, the problem happens when a UA sends an INVITE
+ which already has a to-tag in it (e.g., a re-INVITE) and the server
+ want to reply to it. Then, it will keep the current to-tag, which will
+ be mirrored in ACK. SER will not see its signature and forward the ACK
+ downstream. Caused harm is not bad--just a useless ACK is forwarded.
2. Parameters
@@ -170,7 +168,7 @@ modparam("sl", "default_reason", "Server Error")
2.3. bind_tm (int)
- Controls if SL module should attempt to bind to TM module in order to
+ Controls if SL module should attempt to bind to TM module in order to
send stateful reply when the transaction is created.
Default value is 1 (enabled).
@@ -182,17 +180,16 @@ modparam("sl", "bind_tm", 0) # feature disabled
3. Functions
- 3.1. sl_send_reply(code, reason)
- 3.2. send_reply(code, reason)
- 3.3. sl_reply_error()
- 3.4. sl_forward _reply([ code, [ reason ] ])
+ 3.1. sl_send_reply(code, reason)
+ 3.2. send_reply(code, reason)
+ 3.3. sl_reply_error()
+ 3.4. sl_forward _reply([ code, [ reason ] ])
-3.1. sl_send_reply(code, reason)
+3.1. sl_send_reply(code, reason)
- For the current request, a reply is sent back having the given code
- and text reason. The reply is sent stateless, totally independent of
- the Transaction module and with no retransmission for the INVITE's
- replies.
+ For the current request, a reply is sent back having the given code and
+ text reason. The reply is sent stateless, totally independent of the
+ Transaction module and with no retransmission for the INVITE's replies.
Meaning of the parameters is as follows:
* code - Return code.
@@ -203,19 +200,20 @@ modparam("sl", "bind_tm", 0) # feature disabled
sl_send_reply("404", "Not found");
...
-3.2. send_reply(code, reason)
+3.2. send_reply(code, reason)
- For the current request, a reply is sent back having the given code
- and text reason. The reply is sent stateful or stateless, depending of
- the TM module: if a transaction exists for the current request, then
- the reply is sent statefully, otherwise stateless.
+ For the current request, a reply is sent back having the given code and
+ text reason. The reply is sent stateful or stateless, depending of the
+ TM module: if a transaction exists for the current request, then the
+ reply is sent statefully, otherwise stateless.
Meaning of the parameters is as follows:
* code - Return code.
* reason - Reason phrase.
- This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
- BRANCH_ROUTE.
+ This function can be used from REQUEST_ROUTE and FAILURE_ROUTE. It can
+ be used on ONREPLY_ROUTE executed by tm module (upon a t_on_reply()
+ callback).
Example 1.5. send_reply usage
...
@@ -224,10 +222,10 @@ send_reply("404", "Not found");
send_reply("403", "Invalid user - $fU");
...
-3.3. sl_reply_error()
+3.3. sl_reply_error()
- Sends back an error reply describing the nature of the last internal
- error. Usually this function should be used after a script function
+ Sends back an error reply describing the nature of the last internal
+ error. Usually this function should be used after a script function
that returned an error code.
Example 1.6. sl_reply_error usage
@@ -235,11 +233,11 @@ send_reply("403", "Invalid user - $fU");
sl_reply_error();
...
-3.4. sl_forward _reply([ code, [ reason ] ])
+3.4. sl_forward _reply([ code, [ reason ] ])
- Forward statelessy the current received SIP reply, with the option to
- change the status code and reason text. The new code has to be in the
- same class. The received reply is forwarded as well by core when the
+ Forward statelessy the current received SIP reply, with the option to
+ change the status code and reason text. The new code has to be in the
+ same class. The received reply is forwarded as well by core when the
config execution ended, unless it is dropped from config.
Meaning of the parameters is as follows:
Module: sip-router
Branch: 4.1
Commit: 93428405a7d9bba3aee3bf317ea76f232739c9af
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=9342840…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: Thu Nov 21 19:14:17 2013 +0100
sl: docs updated to reflect usage of send_reply()
(cherry picked from commit e7b73f7e0160eac1ca445201fbf796df0dd13ce0)
---
modules/sl/doc/sl_functions.xml | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/modules/sl/doc/sl_functions.xml b/modules/sl/doc/sl_functions.xml
index bf58ce0..1420e86 100644
--- a/modules/sl/doc/sl_functions.xml
+++ b/modules/sl/doc/sl_functions.xml
@@ -59,8 +59,9 @@ sl_send_reply("404", "Not found");
</listitem>
</itemizedlist>
<para>
- This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
- BRANCH_ROUTE.
+ This function can be used from REQUEST_ROUTE and FAILURE_ROUTE.
+ It can be used on ONREPLY_ROUTE executed by tm module (upon a
+ t_on_reply() callback).
</para>
<example>
<title><function>send_reply</function> usage</title>
Module: sip-router
Branch: master
Commit: e7b73f7e0160eac1ca445201fbf796df0dd13ce0
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=e7b73f7…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: Thu Nov 21 19:14:17 2013 +0100
sl: docs updated to reflect usage of send_reply()
---
modules/sl/doc/sl_functions.xml | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/modules/sl/doc/sl_functions.xml b/modules/sl/doc/sl_functions.xml
index bf58ce0..1420e86 100644
--- a/modules/sl/doc/sl_functions.xml
+++ b/modules/sl/doc/sl_functions.xml
@@ -59,8 +59,9 @@ sl_send_reply("404", "Not found");
</listitem>
</itemizedlist>
<para>
- This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
- BRANCH_ROUTE.
+ This function can be used from REQUEST_ROUTE and FAILURE_ROUTE.
+ It can be used on ONREPLY_ROUTE executed by tm module (upon a
+ t_on_reply() callback).
</para>
<example>
<title><function>send_reply</function> usage</title>
Module: sip-router
Branch: master
Commit: 321fb280f81d2e00531feff1562f064a7222ffe9
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=321fb28…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: Thu Nov 21 19:14:36 2013 +0100
sl: README updated
---
modules/sl/README | 102 ++++++++++++++++++++++++++---------------------------
1 files changed, 50 insertions(+), 52 deletions(-)
diff --git a/modules/sl/README b/modules/sl/README
index 447f700..5d7723d 100644
--- a/modules/sl/README
+++ b/modules/sl/README
@@ -1,4 +1,3 @@
-
The SL Module - Statless request handling
Bogdan Iancu
@@ -10,7 +9,7 @@ Daniel-Constantin Mierla
asipto.com
Copyright � 2003 FhG FOKUS
- _________________________________________________________________
+ __________________________________________________________________
Table of Contents
@@ -25,10 +24,10 @@ Daniel-Constantin Mierla
3. Functions
- 3.1. sl_send_reply(code, reason)
- 3.2. send_reply(code, reason)
- 3.3. sl_reply_error()
- 3.4. sl_forward _reply([ code, [ reason ] ])
+ 3.1. sl_send_reply(code, reason)
+ 3.2. send_reply(code, reason)
+ 3.3. sl_reply_error()
+ 3.4. sl_forward _reply([ code, [ reason ] ])
4. Statistics
@@ -80,10 +79,10 @@ Chapter 1. Admin Guide
3. Functions
- 3.1. sl_send_reply(code, reason)
- 3.2. send_reply(code, reason)
- 3.3. sl_reply_error()
- 3.4. sl_forward _reply([ code, [ reason ] ])
+ 3.1. sl_send_reply(code, reason)
+ 3.2. send_reply(code, reason)
+ 3.3. sl_reply_error()
+ 3.4. sl_forward _reply([ code, [ reason ] ])
4. Statistics
@@ -114,31 +113,30 @@ Chapter 1. Admin Guide
1. Overview
- The SL module allows the SIP server to act as a stateless UA server
- and generate replies to SIP requests without keeping state. That is
+ The SL module allows the SIP server to act as a stateless UA server and
+ generate replies to SIP requests without keeping state. That is
beneficial in many scenarios, in which you wish not to burden server's
memory and scale well.
- The SL module needs to filter ACKs sent after a local stateless reply
+ The SL module needs to filter ACKs sent after a local stateless reply
to an INVITE was generated. To recognize such ACKs, ser adds a special
"signature" in to-tags. This signature is sought for in incoming ACKs,
and if included, the ACKs are absorbed.
- To speed up the filtering process, the module uses a timeout
- mechanism. When a reply is sent, a timer us set. As long as the timer
- is valid, the incoming ACK requests will be checked using TO tag
- value. Once the timer expires, all the ACK messages are let through -
- a long time passed till it sent a reply, so it does not expect any ACK
- that have to be blocked.
-
- The ACK filtering may fail in some rare cases. If you think these
- matter to you, better use stateful processing (TM module) for INVITE
- processing. Particularly, the problem happens when a UA sends an
- INVITE which already has a to-tag in it (e.g., a re-INVITE) and the
- server want to reply to it. Then, it will keep the current to-tag,
- which will be mirrored in ACK. SER will not see its signature and
- forward the ACK downstream. Caused harm is not bad--just a useless ACK
- is forwarded.
+ To speed up the filtering process, the module uses a timeout mechanism.
+ When a reply is sent, a timer us set. As long as the timer is valid,
+ the incoming ACK requests will be checked using TO tag value. Once the
+ timer expires, all the ACK messages are let through - a long time
+ passed till it sent a reply, so it does not expect any ACK that have to
+ be blocked.
+
+ The ACK filtering may fail in some rare cases. If you think these
+ matter to you, better use stateful processing (TM module) for INVITE
+ processing. Particularly, the problem happens when a UA sends an INVITE
+ which already has a to-tag in it (e.g., a re-INVITE) and the server
+ want to reply to it. Then, it will keep the current to-tag, which will
+ be mirrored in ACK. SER will not see its signature and forward the ACK
+ downstream. Caused harm is not bad--just a useless ACK is forwarded.
2. Parameters
@@ -170,7 +168,7 @@ modparam("sl", "default_reason", "Server Error")
2.3. bind_tm (int)
- Controls if SL module should attempt to bind to TM module in order to
+ Controls if SL module should attempt to bind to TM module in order to
send stateful reply when the transaction is created.
Default value is 1 (enabled).
@@ -182,17 +180,16 @@ modparam("sl", "bind_tm", 0) # feature disabled
3. Functions
- 3.1. sl_send_reply(code, reason)
- 3.2. send_reply(code, reason)
- 3.3. sl_reply_error()
- 3.4. sl_forward _reply([ code, [ reason ] ])
+ 3.1. sl_send_reply(code, reason)
+ 3.2. send_reply(code, reason)
+ 3.3. sl_reply_error()
+ 3.4. sl_forward _reply([ code, [ reason ] ])
-3.1. sl_send_reply(code, reason)
+3.1. sl_send_reply(code, reason)
- For the current request, a reply is sent back having the given code
- and text reason. The reply is sent stateless, totally independent of
- the Transaction module and with no retransmission for the INVITE's
- replies.
+ For the current request, a reply is sent back having the given code and
+ text reason. The reply is sent stateless, totally independent of the
+ Transaction module and with no retransmission for the INVITE's replies.
Meaning of the parameters is as follows:
* code - Return code.
@@ -203,19 +200,20 @@ modparam("sl", "bind_tm", 0) # feature disabled
sl_send_reply("404", "Not found");
...
-3.2. send_reply(code, reason)
+3.2. send_reply(code, reason)
- For the current request, a reply is sent back having the given code
- and text reason. The reply is sent stateful or stateless, depending of
- the TM module: if a transaction exists for the current request, then
- the reply is sent statefully, otherwise stateless.
+ For the current request, a reply is sent back having the given code and
+ text reason. The reply is sent stateful or stateless, depending of the
+ TM module: if a transaction exists for the current request, then the
+ reply is sent statefully, otherwise stateless.
Meaning of the parameters is as follows:
* code - Return code.
* reason - Reason phrase.
- This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
- BRANCH_ROUTE.
+ This function can be used from REQUEST_ROUTE and FAILURE_ROUTE. It can
+ be used on ONREPLY_ROUTE executed by tm module (upon a t_on_reply()
+ callback).
Example 1.5. send_reply usage
...
@@ -224,10 +222,10 @@ send_reply("404", "Not found");
send_reply("403", "Invalid user - $fU");
...
-3.3. sl_reply_error()
+3.3. sl_reply_error()
- Sends back an error reply describing the nature of the last internal
- error. Usually this function should be used after a script function
+ Sends back an error reply describing the nature of the last internal
+ error. Usually this function should be used after a script function
that returned an error code.
Example 1.6. sl_reply_error usage
@@ -235,11 +233,11 @@ send_reply("403", "Invalid user - $fU");
sl_reply_error();
...
-3.4. sl_forward _reply([ code, [ reason ] ])
+3.4. sl_forward _reply([ code, [ reason ] ])
- Forward statelessy the current received SIP reply, with the option to
- change the status code and reason text. The new code has to be in the
- same class. The received reply is forwarded as well by core when the
+ Forward statelessy the current received SIP reply, with the option to
+ change the status code and reason text. The new code has to be in the
+ same class. The received reply is forwarded as well by core when the
config execution ended, unless it is dropped from config.
Meaning of the parameters is as follows: