Преглед на файлове

modules/rtpproxy: some README improvements

Juha Heinanen преди 13 години
родител
ревизия
a041479bd7
променени са 2 файла, в които са добавени 69 реда и са изтрити 74 реда
  1. 64 65
      modules/rtpproxy/README
  2. 5 9
      modules/rtpproxy/doc/rtpproxy_admin.xml

+ 64 - 65
modules/rtpproxy/README

@@ -30,13 +30,13 @@ Carsten Bock
 
 
    ng-voice GmbH
    ng-voice GmbH
 
 
-   Copyright © 2003-2008 Sippy Software, Inc.
+   Copyright © 2003-2008 Sippy Software, Inc.
 
 
-   Copyright © 2005 Voice Sistem SRL
+   Copyright © 2005 Voice Sistem SRL
 
 
-   Copyright © 2009 TuTPro Inc.
+   Copyright © 2009 TuTPro Inc.
 
 
-   Copyright © 2010 VoIPEmbedded Inc.
+   Copyright © 2010 VoIPEmbedded Inc.
      __________________________________________________________________
      __________________________________________________________________
 
 
    Table of Contents
    Table of Contents
@@ -152,12 +152,10 @@ Chapter 1. Admin Guide
 1. Overview
 1. Overview
 
 
    This is a module that enables media streams to be proxied via an
    This is a module that enables media streams to be proxied via an
-   rtpproxy.
-
-   Known devices that get along over NATs with rtpproxy are ATAs (as
-   clients) and Cisco Gateways (since 12.2(T)) as servers. See
-   http://www.cisco.com/en/US/products/sw/iosswrel/ps1839/products_feature
-   _guide09186a0080110bf9.html">
+   rtpproxy. Rtpproxies know to work with this module are Sippy RTPproxy
+   http://www.rtpproxy.org and ngcp-rtpproxy-ng
+   http://deb.sipwise.com/spce/2.6/pool/main/n/ngcp-mediaproxy-ng. Some
+   features of rtpproxy module apply only one of the two rtpproxies.
 
 
 2. Multiple RTPProxy usage
 2. Multiple RTPProxy usage
 
 
@@ -168,7 +166,7 @@ Chapter 1. Admin Guide
    load-balancing will be performed over a set and the user has the
    load-balancing will be performed over a set and the user has the
    ability to choose what set should be used. The set is selected via its
    ability to choose what set should be used. The set is selected via its
    id - the id being defined along with the set. Refer to the
    id - the id being defined along with the set. Refer to the
-   "rtpproxy_sock" module parameter definition for syntax description.
+   “rtpproxy_sock� module parameter definition for syntax description.
 
 
    The balancing inside a set is done automatically by the module based on
    The balancing inside a set is done automatically by the module based on
    the weight of each rtpproxy from the set.
    the weight of each rtpproxy from the set.
@@ -216,7 +214,7 @@ Chapter 1. Admin Guide
    Definition of socket(s) used to connect to (a set) RTPProxy. It may
    Definition of socket(s) used to connect to (a set) RTPProxy. It may
    specify a UNIX socket or an IPv4/IPv6 UDP socket.
    specify a UNIX socket or an IPv4/IPv6 UDP socket.
 
 
-   Default value is "NONE" (disabled).
+   Default value is “NONE� (disabled).
 
 
    Example 1.1. Set rtpproxy_sock parameter
    Example 1.1. Set rtpproxy_sock parameter
 ...
 ...
@@ -238,7 +236,7 @@ modparam("rtpproxy", "rtpproxy_sock",
    will not attempt to establish communication to RTPProxy for
    will not attempt to establish communication to RTPProxy for
    rtpproxy_disable_tout seconds.
    rtpproxy_disable_tout seconds.
 
 
-   Default value is "60".
+   Default value is “60�.
 
 
    Example 1.2. Set rtpproxy_disable_tout parameter
    Example 1.2. Set rtpproxy_disable_tout parameter
 ...
 ...
@@ -249,7 +247,7 @@ modparam("rtpproxy", "rtpproxy_disable_tout", 20)
 
 
    Timeout value in waiting for reply from RTPProxy.
    Timeout value in waiting for reply from RTPProxy.
 
 
-   Default value is "1".
+   Default value is “1�.
 
 
    Example 1.3. Set rtpproxy_tout parameter
    Example 1.3. Set rtpproxy_tout parameter
 ...
 ...
@@ -261,7 +259,7 @@ modparam("rtpproxy", "rtpproxy_tout", 2)
    How many times rtpproxy should retry to send and receive after timeout
    How many times rtpproxy should retry to send and receive after timeout
    was generated.
    was generated.
 
 
-   Default value is "5".
+   Default value is “5�.
 
 
    Example 1.4. Set rtpproxy_retr parameter
    Example 1.4. Set rtpproxy_retr parameter
 ...
 ...
@@ -273,7 +271,7 @@ modparam("rtpproxy", "rtpproxy_retr", 2)
    Socket to be forced in communicating to RTPProxy. It makes sense only
    Socket to be forced in communicating to RTPProxy. It makes sense only
    for UDP communication. If no one specified, the OS will choose.
    for UDP communication. If no one specified, the OS will choose.
 
 
-   Default value is "NULL".
+   Default value is “NULL�.
 
 
    Example 1.5. Set force_socket parameter
    Example 1.5. Set force_socket parameter
 ...
 ...
@@ -291,7 +289,7 @@ Note
 
 
    The string must be a complete SDP line, including the EOH (\r\n).
    The string must be a complete SDP line, including the EOH (\r\n).
 
 
-   Default value is "a=nortpproxy:yes\r\n".
+   Default value is “a=nortpproxy:yes\r\n�.
 
 
    Example 1.6. Set nortpproxy_str parameter
    Example 1.6. Set nortpproxy_str parameter
 ...
 ...
@@ -306,7 +304,7 @@ modparam("rtpproxy", "nortpproxy_str", "a=sdpmangled:yes\r\n")
    If it is an empty string, no timeout socket will be transmitted to the
    If it is an empty string, no timeout socket will be transmitted to the
    RTP-Proxy.
    RTP-Proxy.
 
 
-   Default value is "" (nothing).
+   Default value is “� (nothing).
 
 
    Example 1.7. Set timeout_socket parameter
    Example 1.7. Set timeout_socket parameter
 ...
 ...
@@ -327,7 +325,7 @@ modparam("nathelper", "timeout_socket", "xmlrpc:http://127.0.0.1:8000/RPC2")
    5.10. start_recording()
    5.10. start_recording()
    5.11. rtpproxy_stop_stream2uas(prompt_name, count)
    5.11. rtpproxy_stop_stream2uas(prompt_name, count)
 
 
-5.1. set_rtp_proxy_set(setid)
+5.1.  set_rtp_proxy_set(setid)
 
 
    Sets the Id of the rtpproxy set to be used for the next
    Sets the Id of the rtpproxy set to be used for the next
    unforce_rtp_proxy(), rtpproxy_offer(), rtpproxy_answer() or
    unforce_rtp_proxy(), rtpproxy_offer(), rtpproxy_answer() or
@@ -343,7 +341,7 @@ set_rtp_proxy_set("2");
 rtpproxy_offer();
 rtpproxy_offer();
 ...
 ...
 
 
-5.2. rtpproxy_offer([flags [, ip_address]])
+5.2.  rtpproxy_offer([flags [, ip_address]])
 
 
    Rewrites SDP body to ensure that media is passed through an RTP proxy.
    Rewrites SDP body to ensure that media is passed through an RTP proxy.
    To be invoked on INVITE for the cases the SDPs are in INVITE and 200 OK
    To be invoked on INVITE for the cases the SDPs are in INVITE and 200 OK
@@ -353,16 +351,16 @@ rtpproxy_offer();
      * flags - flags to turn on some features.
      * flags - flags to turn on some features.
           + 1 - append first Via branch to Call-ID when sending command to
           + 1 - append first Via branch to Call-ID when sending command to
             rtpproxy. This can be used to create one media session per
             rtpproxy. This can be used to create one media session per
-            branch on the rtpproxy. When sending a subsequent "delete"
+            branch on the rtpproxy. When sending a subsequent “delete�
             command to the rtpproxy, you can then stop just the session
             command to the rtpproxy, you can then stop just the session
             for a specific branch when passing the flag '1' or '2' in the
             for a specific branch when passing the flag '1' or '2' in the
-            "unforce_rtpproxy", or stop all sessions for a call when not
+            “unforce_rtpproxy�, or stop all sessions for a call when not
             passing one of those two flags there. This is especially
             passing one of those two flags there. This is especially
             useful if you have serially forked call scenarios where
             useful if you have serially forked call scenarios where
-            rtpproxy gets an "update" command for a new branch, and then a
-            "delete" command for the previous branch, which would
+            rtpproxy gets an “update� command for a new branch, and then a
+            “delete� command for the previous branch, which would
             otherwise delete the full call, breaking the subsequent
             otherwise delete the full call, breaking the subsequent
-            "lookup" for the new branch. This flag is only supported by
+            “lookup� for the new branch. This flag is only supported by
             the ngcp-mediaproxy-ng rtpproxy at the moment!
             the ngcp-mediaproxy-ng rtpproxy at the moment!
           + 2 - append second Via branch to Call-ID when sending command
           + 2 - append second Via branch to Call-ID when sending command
             to rtpproxy. See flag '1' for its meaning.
             to rtpproxy. See flag '1' for its meaning.
@@ -370,7 +368,7 @@ rtpproxy_offer();
             set for a reply.
             set for a reply.
           + a - flags that UA from which message is received doesn't
           + a - flags that UA from which message is received doesn't
             support symmetric RTP. (automatically sets the 'r' flag)
             support symmetric RTP. (automatically sets the 'r' flag)
-          + l - force "lookup", that is, only rewrite SDP when
+          + l - force “lookup�, that is, only rewrite SDP when
             corresponding session is already exists in the RTP proxy. By
             corresponding session is already exists in the RTP proxy. By
             default is on when the session is to be completed.
             default is on when the session is to be completed.
           + i, e - these flags specify the direction of the SIP message.
           + i, e - these flags specify the direction of the SIP message.
@@ -454,7 +452,7 @@ onreply_route[2]
 ...
 ...
 }
 }
 
 
-5.3. rtpproxy_answer([flags [, ip_address]])
+5.3.  rtpproxy_answer([flags [, ip_address]])
 
 
    Rewrites SDP body to ensure that media is passed through an RTP proxy.
    Rewrites SDP body to ensure that media is passed through an RTP proxy.
    To be invoked on 200 OK for the cases the SDPs are in INVITE and 200 OK
    To be invoked on 200 OK for the cases the SDPs are in INVITE and 200 OK
@@ -470,7 +468,7 @@ onreply_route[2]
 
 
    See rtpproxy_offer() function example above for example.
    See rtpproxy_offer() function example above for example.
 
 
-5.4. rtpproxy_destroy([flags])
+5.4.  rtpproxy_destroy([flags])
 
 
    Tears down the RTPProxy session for the current call.
    Tears down the RTPProxy session for the current call.
 
 
@@ -480,16 +478,16 @@ onreply_route[2]
      * flags - flags to turn on some features.
      * flags - flags to turn on some features.
           + 1 - append first Via branch to Call-ID when sending command to
           + 1 - append first Via branch to Call-ID when sending command to
             rtpproxy. This can be used to create one media session per
             rtpproxy. This can be used to create one media session per
-            branch on the rtpproxy. When sending a subsequent "delete"
+            branch on the rtpproxy. When sending a subsequent “delete�
             command to the rtpproxy, you can then stop just the session
             command to the rtpproxy, you can then stop just the session
             for a specific branch when passing the flag '1' or '2' in the
             for a specific branch when passing the flag '1' or '2' in the
-            "unforce_rtpproxy", or stop all sessions for a call when not
+            “unforce_rtpproxy�, or stop all sessions for a call when not
             passing one of those two flags there. This is especially
             passing one of those two flags there. This is especially
             useful if you have serially forked call scenarios where
             useful if you have serially forked call scenarios where
-            rtpproxy gets an "update" command for a new branch, and then a
-            "delete" command for the previous branch, which would
+            rtpproxy gets an “update� command for a new branch, and then a
+            “delete� command for the previous branch, which would
             otherwise delete the full call, breaking the subsequent
             otherwise delete the full call, breaking the subsequent
-            "lookup" for the new branch. This flag is only supported by
+            “lookup� for the new branch. This flag is only supported by
             the ngcp-mediaproxy-ng rtpproxy at the moment!
             the ngcp-mediaproxy-ng rtpproxy at the moment!
           + 2 - append second Via branch to Call-ID when sending command
           + 2 - append second Via branch to Call-ID when sending command
             to rtpproxy. See flag '1' for its meaning.
             to rtpproxy. See flag '1' for its meaning.
@@ -499,11 +497,11 @@ onreply_route[2]
 rtpproxy_destroy();
 rtpproxy_destroy();
 ...
 ...
 
 
-5.5. unforce_rtp_proxy()
+5.5.  unforce_rtp_proxy()
 
 
    Same as rtpproxy_destroy().
    Same as rtpproxy_destroy().
 
 
-5.6. rtpproxy_manage([flags [, ip_address]])
+5.6.  rtpproxy_manage([flags [, ip_address]])
 
 
    Manage the RTPProxy session - it combines the functionality of
    Manage the RTPProxy session - it combines the functionality of
    rtpproxy_offer(), rtpproxy_answer() and unfroce_rtpproxy(), detecting
    rtpproxy_offer(), rtpproxy_answer() and unfroce_rtpproxy(), detecting
@@ -531,7 +529,7 @@ rtpproxy_destroy();
 rtpproxy_manage();
 rtpproxy_manage();
 ...
 ...
 
 
-5.7. rtpproxy_stream2uac(prompt_name, count),
+5.7.  rtpproxy_stream2uac(prompt_name, count),
 
 
    Instruct the RTPproxy to stream prompt/announcement pre-encoded with
    Instruct the RTPproxy to stream prompt/announcement pre-encoded with
    the makeann command from the RTPproxy distribution. The uac/uas suffix
    the makeann command from the RTPproxy distribution. The uac/uas suffix
@@ -573,11 +571,11 @@ rtpproxy_manage();
     };
     };
 ...
 ...
 
 
-5.8. rtpproxy_stream2uas(prompt_name, count)
+5.8.  rtpproxy_stream2uas(prompt_name, count)
 
 
    See function rtpproxy_stream2uac(prompt_name, count).
    See function rtpproxy_stream2uac(prompt_name, count).
 
 
-5.9. rtpproxy_stop_stream2uac(),
+5.9.  rtpproxy_stop_stream2uac(),
 
 
    Stop streaming of announcement/prompt/MOH started previously by the
    Stop streaming of announcement/prompt/MOH started previously by the
    respective rtpproxy_stream2xxx. The uac/uas suffix selects whose
    respective rtpproxy_stream2xxx. The uac/uas suffix selects whose
@@ -586,10 +584,11 @@ rtpproxy_manage();
 
 
    These functions can be used from REQUEST_ROUTE, ONREPLY_ROUTE.
    These functions can be used from REQUEST_ROUTE, ONREPLY_ROUTE.
 
 
-5.10. start_recording()
+5.10.  start_recording()
 
 
-   This command will send a signal to the RTP-Proxy to record the RTP
-   stream on the RTP-Proxy.
+   This function will send a signal to the RTP-Proxy to record the RTP
+   stream on the RTP-Proxy. This function is only supported by Sippy
+   RTPproxy at the moment!
 
 
    This function can be used from REQUEST_ROUTE and ONREPLY_ROUTE.
    This function can be used from REQUEST_ROUTE and ONREPLY_ROUTE.
 
 
@@ -598,7 +597,7 @@ rtpproxy_manage();
 start_recording();
 start_recording();
 ...
 ...
 
 
-5.11. rtpproxy_stop_stream2uas(prompt_name, count)
+5.11.  rtpproxy_stop_stream2uas(prompt_name, count)
 
 
    See function rtpproxy_stop_stream2uac(prompt_name, count).
    See function rtpproxy_stop_stream2uac(prompt_name, count).
 
 
@@ -636,7 +635,7 @@ start_recording();
    NOTE: if a rtpproxy is defined multiple times (in the same or diferente
    NOTE: if a rtpproxy is defined multiple times (in the same or diferente
    sete), all its instances will be enables/disabled.
    sete), all its instances will be enables/disabled.
 
 
-   Example 1.16. nh_enable_rtpp usage
+   Example 1.16.  nh_enable_rtpp usage
 ...
 ...
 $ kamctl fifo nh_enable_rtpp udp:192.168.2.133:8081 0
 $ kamctl fifo nh_enable_rtpp udp:192.168.2.133:8081 0
 ...
 ...
@@ -648,52 +647,52 @@ $ kamctl fifo nh_enable_rtpp udp:192.168.2.133:8081 0
 
 
    No parameter.
    No parameter.
 
 
-   Example 1.17. nh_show_rtpp usage
+   Example 1.17.  nh_show_rtpp usage
 ...
 ...
 $ kamctl fifo nh_show_rtpp
 $ kamctl fifo nh_show_rtpp
 ...
 ...
 
 
 Chapter 2. Frequently Asked Questions
 Chapter 2. Frequently Asked Questions
 
 
-   2.1. What happend with "rtpproxy_disable" parameter?
+   2.1. What happend with “rtpproxy_disable� parameter?
    2.2. Where can I find more about Kamailio?
    2.2. Where can I find more about Kamailio?
    2.3. Where can I post a question about this module?
    2.3. Where can I post a question about this module?
    2.4. How can I report a bug?
    2.4. How can I report a bug?
 
 
    2.1.
    2.1.
 
 
-   What happend with "rtpproxy_disable" parameter?
+       What happend with “rtpproxy_disable� parameter?
 
 
-   It was removed as it became obsolete - now "rtpproxy_sock" can take
-   empty value to disable the rtpproxy functionality.
+       It was removed as it became obsolete - now “rtpproxy_sock� can take
+       empty value to disable the rtpproxy functionality.
 
 
    2.2.
    2.2.
 
 
-   Where can I find more about Kamailio?
+       Where can I find more about Kamailio?
 
 
-   Take a look at http://www.kamailio.org/.
+       Take a look at http://www.kamailio.org/.
 
 
    2.3.
    2.3.
 
 
-   Where can I post a question about this module?
+       Where can I post a question about this module?
 
 
-   First at all check if your question was already answered on one of our
-   mailing lists:
-     * User Mailing List -
-       http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-     * Developer Mailing List -
-       http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
+       First at all check if your question was already answered on one of our
+       mailing lists:
+         * User Mailing List -
+           http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
+         * Developer Mailing List -
+           http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
 
 
-   E-mails regarding any stable Kamailio release should be sent to
-   <[email protected]> and e-mails regarding development
-   versions should be sent to <[email protected]>.
+       E-mails regarding any stable Kamailio release should be sent to
+       <[email protected]> and e-mails regarding development
+       versions should be sent to <[email protected]>.
 
 
-   If you want to keep the mail private, send it to
-   <[email protected]>.
+       If you want to keep the mail private, send it to
+       <[email protected]>.
 
 
    2.4.
    2.4.
 
 
-   How can I report a bug?
+       How can I report a bug?
 
 
-   Please follow the guidelines provided at:
-   http://sip-router.org/tracker.
+       Please follow the guidelines provided at:
+       http://sip-router.org/tracker.

+ 5 - 9
modules/rtpproxy/doc/rtpproxy_admin.xml

@@ -18,13 +18,9 @@
 	<title>Overview</title>
 	<title>Overview</title>
 	<para>
 	<para>
 		This is a module that enables media streams to be proxied
 		This is a module that enables media streams to be proxied
-		via an rtpproxy.
-	</para>
-	<para>
-		Known devices that get along over &nat;s with rtpproxy are ATAs
-		(as clients) and Cisco Gateways (since 12.2(T)) as servers.  See <ulink
-		url="http://www.cisco.com/en/US/products/sw/iosswrel/ps1839/products_feature_guide09186a0080110bf9.html">
-		http://www.cisco.com/en/US/products/sw/iosswrel/ps1839/products_feature_guide09186a0080110bf9.html"></ulink>
+		via an rtpproxy.  Rtpproxies know to work with this module
+		are Sippy RTPproxy <ulink url="http://www.rtpproxy.org"></ulink>
+		and ngcp-rtpproxy-ng <ulink url="http://deb.sipwise.com/spce/2.6/pool/main/n/ngcp-mediaproxy-ng"></ulink>.  Some features of rtpproxy module apply only one of the two rtpproxies.
 	</para>
 	</para>
 	</section>
 	</section>
 
 
@@ -673,8 +669,8 @@ rtpproxy_manage();
 		<function moreinfo="none">start_recording()</function>
 		<function moreinfo="none">start_recording()</function>
 		</title>
 		</title>
 		<para>
 		<para>
-		This command will send a signal to the RTP-Proxy to record
-		the RTP stream on the RTP-Proxy.
+		This function will send a signal to the RTP-Proxy to record
+		the RTP stream on the RTP-Proxy. <emphasis>This function is only supported by Sippy RTPproxy at the moment!</emphasis>
 		</para>
 		</para>
 		<para>
 		<para>
 		This function can be used from REQUEST_ROUTE and ONREPLY_ROUTE.
 		This function can be used from REQUEST_ROUTE and ONREPLY_ROUTE.