Browse Source

async: documented async_route() function

Daniel-Constantin Mierla 14 years ago
parent
commit
31b97e4443
2 changed files with 79 additions and 6 deletions
  1. 38 5
      modules/async/README
  2. 41 1
      modules/async/doc/async_admin.xml

+ 38 - 5
modules/async/README

@@ -29,12 +29,14 @@ Daniel-Constantin Mierla
 
 
         4. Exported Functions
         4. Exported Functions
 
 
-              4.1. async_sleep(seconds)
+              4.1. async_route(routename, seconds)
+              4.2. async_sleep(seconds)
 
 
    List of Examples
    List of Examples
 
 
    1.1. Set workers parameter
    1.1. Set workers parameter
    1.2. async_sleep usage
    1.2. async_sleep usage
+   1.3. async_sleep usage
 
 
 Chapter 1. Admin Guide
 Chapter 1. Admin Guide
 
 
@@ -52,7 +54,8 @@ Chapter 1. Admin Guide
 
 
    4. Exported Functions
    4. Exported Functions
 
 
-        4.1. async_sleep(seconds)
+        4.1. async_route(routename, seconds)
+        4.2. async_sleep(seconds)
 
 
 1. Overview
 1. Overview
 
 
@@ -101,9 +104,39 @@ modparam("async", "workers", 2)
 
 
 4. Exported Functions
 4. Exported Functions
 
 
-   4.1. async_sleep(seconds)
+   4.1. async_route(routename, seconds)
+   4.2. async_sleep(seconds)
 
 
-4.1. async_sleep(seconds)
+4.1. async_route(routename, seconds)
+
+   Simulate a sleep of 'seconds' and then continue the processing of SIP
+   request with the route[routename]. In case of internal errors, the
+   function returns false, otherwise the function exits the execution of
+   config at that moment (return 0 behaviour).
+
+   The routename parameter can be a static string or a dynamic string
+   value with config variables.
+
+   The sleep parameter represent the number of seconds to suppend the
+   processing of SIP request. Maximum value is 100. The parameter can be a
+   static integer or a varaible holding an integer.
+
+   Since the SIP request handling is resumed in another process,
+   practically the config file execution state is lost. Therefore beware
+   that the execution of config after resume will end once the
+   route[routename] is finished.
+
+   Example 1.2. async_sleep usage
+...
+async_route("RESUME", "4");
+...
+route[RESUME] {
+   send_reply("404", "Not found");
+   exit;
+}
+...
+
+4.2. async_sleep(seconds)
 
 
    Simulate a sleep of 'seconds' and then continue the processing of SIP
    Simulate a sleep of 'seconds' and then continue the processing of SIP
    request with the next action. In case of internal errors, the function
    request with the next action. In case of internal errors, the function
@@ -119,7 +152,7 @@ modparam("async", "workers", 2)
    that the execution of config after resume will end once the route block
    that the execution of config after resume will end once the route block
    where async_sleep() is called is finished.
    where async_sleep() is called is finished.
 
 
-   Example 1.2. async_sleep usage
+   Example 1.3. async_sleep usage
 ...
 ...
 async_sleep("4");
 async_sleep("4");
 send_reply("404", "Not found");
 send_reply("404", "Not found");

+ 41 - 1
modules/async/doc/async_admin.xml

@@ -87,7 +87,47 @@ modparam("async", "workers", 2)
 
 
 	<section>
 	<section>
 	<title>Exported Functions</title>
 	<title>Exported Functions</title>
- 	<section>
+	<section>
+	    <title>
+		<function moreinfo="none">async_route(routename, seconds)</function>
+	    </title>
+	    <para>
+		Simulate a sleep of 'seconds' and then continue the processing of SIP
+		request with the route[routename]. In case of internal errors, the
+		function returns false, otherwise the function exits the execution of
+		config at that moment (return 0 behaviour).
+		</para>
+		<para>
+		The routename parameter can be a static string or a dynamic string
+		value with config variables.
+		</para>
+		<para>
+		The sleep parameter represent the number of seconds to suppend the
+		processing of SIP request. Maximum value is 100. The parameter can be
+		a static integer or a varaible holding an integer.
+		</para>
+		<para>
+		Since the SIP request handling is resumed in another process,
+		practically the config file execution state is lost. Therefore beware
+		that the execution of config after resume will end once the
+		route[routename] is finished.
+		</para>
+		<example>
+		<title><function>async_sleep</function> usage</title>
+		<programlisting format="linespecific">
+...
+async_route("RESUME", "4");
+...
+route[RESUME] {
+   send_reply("404", "Not found");
+   exit;
+}
+...
+</programlisting>
+	    </example>
+	</section>
+
+	<section>
 	    <title>
 	    <title>
 		<function moreinfo="none">async_sleep(seconds)</function>
 		<function moreinfo="none">async_sleep(seconds)</function>
 	    </title>
 	    </title>