Module: sip-router
Branch: master
Commit: e973bbe5e7310861f77b17ce0afaf1cca35fe48a
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=e973bbe…
Author: Juha Heinanen <jh(a)tutpro.com>
Committer: Juha Heinanen <jh(a)tutpro.com>
Date: Fri May 28 15:38:41 2010 +0300
modules/tm: new implementation of load_contacts()/next_contacts()
- Simpler implementation of load_contacts()/next_contacts() functions
based on recent changes related to Request-URI handling.
- Function next_contacts() does not anymore set any timers. Check
contact_avp and call t_set_fr() before calling t_relay() instead.
- Removed fr_timer_next module parameter, because it is not needed
anymore.
---
modules/tm/README | 255 ++++++++++++++------------------------
modules/tm/doc/functions.xml | 51 +++-----
modules/tm/doc/params.xml | 73 -----------
modules/tm/doc/tm.xml | 15 +--
modules/tm/t_serial.c | 279 ++++++++++++------------------------------
modules/tm/tm.c | 1 -
6 files changed, 190 insertions(+), 484 deletions(-)
Diff: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commitdiff;h=e97…
What you propose is a new functionality. I would prefer a new name
(engage_rtp_proxy) for this function and still drop the old
force_rtp_proxy.
ovidiu,
it may be confusing to call the new function engage_rtp_proxy, because
similar name is used in mediaproxy module for a dialog based function
that tries to handle the whole dialog, but fails to address important
issues, such as forking.
if the idea is not to have a dialog based thing, then function names
like use_rtp_proxy/end_rtp_session would be better.
-- juha
Hello,
I've heard your appeal to support testing the new pre-release 3.1 of
kamailio. So I started with compiling and installing it. My focus is / was
testing kamailio 3.1 with DB engine POSTGRESQL.
However, my testing phase was stopped very early, because "kamdbctl
create" was stopped by an error message related to creating the table
"lcr". AFAIK the tables / table names have changed, because Juha has
modified this module as discussed earlier in this list. Could this be the
reason why kamdbctl stopped? It seems that the script still knows only the
old relations within the DB.
The error message looks as follows:
voiceserver1:/usr/local/etc/kamailio# kamdbctl create
INFO: creating database openser ...
NOTICE: CREATE TABLE will create implicit sequence "acc_id_seq" for
serial column "acc.id"
[...]
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index
"dialplan_pkey" for table "dialplan"
ERROR: relation "lcr" does not exist
ERROR: relation "lcr" does not exist
ERROR: relation "lcr_id_seq" does not exist
ERROR: relation "lcr_id_seq" does not exist
ERROR: Grant privileges to standard tables failed!
I recommend CHECKING the initialisation script(s) for POSTGRESQL in
general. Because in the previous release 3.0.3 the problem / error with
wrong settings for column attributes especially for presence related
tables (as discussed in spring this year - see
http://lists.sip-router.org/pipermail/sr-dev/2010-June/007896.html) is
still present!
regards,
Klaus Feichtinger
Hi,
I have to modify kamailio to add QoS to presence module. I have to fork a
new process that is allowed to access presentity table into database but
with the classik fork() function i cannot access to it. Have I to do
something in particular?
Thanks!
--
Stefano Poli
Module: sip-router
Branch: master
Commit: 94c8e2f47db786e3ed3fccbf103562ec76233a7d
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=94c8e2f…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: Fri Sep 24 11:53:38 2010 +0200
rtpproxy: return -2 for force_rtp_proxy if rtpproxy was already used
- patch by Alex Hermann, closed SF#3035804
---
modules_k/rtpproxy/README | 103 ++++++++++++++++++++++++-----
modules_k/rtpproxy/doc/rtpproxy_admin.xml | 5 ++
modules_k/rtpproxy/rtpproxy.c | 2 +-
3 files changed, 91 insertions(+), 19 deletions(-)
diff --git a/modules_k/rtpproxy/README b/modules_k/rtpproxy/README
index 94c2ec0..df60fb7 100644
--- a/modules_k/rtpproxy/README
+++ b/modules_k/rtpproxy/README
@@ -54,6 +54,8 @@ Sas Ovidiu
4.4. rtpproxy_retr (integer)
4.5. force_socket (string)
4.6. nortpproxy_str (string)
+ 4.7. timeout_socket (string)
+ 4.8. timeout_socket_type (int)
5. Exported Functions
@@ -69,6 +71,9 @@ Sas Ovidiu
5.8. start_recording()
6. Exported Pseudo Variables
+
+ 6.1. $rtpstart
+
7. MI Commands
7.1. nh_enable_rtpp
@@ -84,15 +89,18 @@ Sas Ovidiu
1.4. Set rtpproxy_retr parameter
1.5. Set force_socket parameter
1.6. Set nortpproxy_str parameter
- 1.7. fix_nated_contact usage
- 1.8. force_rtp_proxy usage
- 1.9. rtpproxy_offer usage
- 1.10.
- 1.11. unforce_rtp_proxy usage
- 1.12. rtpproxy_stream2xxx usage
- 1.13. start_recording usage
- 1.14. nh_enable_rtpp usage
- 1.15. nh_show_rtpp usage
+ 1.7. Set timeout_socket parameter
+ 1.8. Set timeout_socket_type parameter
+ 1.9. fix_nated_contact usage
+ 1.10. force_rtp_proxy usage
+ 1.11. rtpproxy_offer usage
+ 1.12.
+ 1.13. unforce_rtp_proxy usage
+ 1.14. rtpproxy_stream2xxx usage
+ 1.15. start_recording usage
+ 1.16. $rtpstat-Usage
+ 1.17. nh_enable_rtpp usage
+ 1.18. nh_show_rtpp usage
Chapter 1. Admin Guide
@@ -113,6 +121,8 @@ Chapter 1. Admin Guide
4.4. rtpproxy_retr (integer)
4.5. force_socket (string)
4.6. nortpproxy_str (string)
+ 4.7. timeout_socket (string)
+ 4.8. timeout_socket_type (int)
5. Exported Functions
@@ -128,6 +138,9 @@ Chapter 1. Admin Guide
5.8. start_recording()
6. Exported Pseudo Variables
+
+ 6.1. $rtpstart
+
7. MI Commands
7.1. nh_enable_rtpp
@@ -193,6 +206,8 @@ Chapter 1. Admin Guide
4.4. rtpproxy_retr (integer)
4.5. force_socket (string)
4.6. nortpproxy_str (string)
+ 4.7. timeout_socket (string)
+ 4.8. timeout_socket_type (int)
4.1. rtpproxy_sock (string)
@@ -281,6 +296,40 @@ Note
modparam("rtpproxy", "nortpproxy_str", "a=sdpmangled:yes\r\n")
...
+4.7. timeout_socket (string)
+
+ The parameter sets timeout socket, which is transmitted to the
+ RTP-Proxy.
+
+ If it is an empty string, no timeout socket will be transmitted to the
+ RTP-Proxy.
+
+ Default value is “”.
+
+ Example 1.7. Set timeout_socket parameter
+...
+modparam("nathelper", "timeout_socket", "http://127.0.0.1:8000/RPC2")
+...
+
+4.8. timeout_socket_type (int)
+
+ The parameter sets type of the timeout socket, which is transmitted to
+ the RTP-Proxy.
+
+ If it is not set, type 1 (Kamailio XML-RPC-Socket) is transmitted to
+ the RTP-Proxy.
+
+ Default value is “1”.
+
+ Example 1.8. Set timeout_socket_type parameter
+...
+modparam("nathelper", "timeout_socket_type", 42)
+...
+
+ The only supported Type on the RTP-Proxy is currently “1” or “0” which
+ is the default socket-type of the RTP-Proxy which is not compatible to
+ Kamailio.
+
5. Exported Functions
5.1. set_rtp_proxy_set()
@@ -302,7 +351,7 @@ modparam("rtpproxy", "nortpproxy_str", "a=sdpmangled:yes\r\n")
This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE,
BRANCH_ROUTE.
- Example 1.7. fix_nated_contact usage
+ Example 1.9. fix_nated_contact usage
...
set_rtp_proxy_set("2");
force_rtp_proxy();
@@ -384,10 +433,14 @@ force_rtp_proxy();
100ms saves two thirds of the network bandwith.
* ip_address - new SDP IP address.
+ It returns value -2 when a rtp proxy has already mangled the packet,
+ making possible to determine in the script if an rtpproxy is in the
+ audio path.
+
This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE,
FAILURE_ROUTE, BRANCH_ROUTE.
- Example 1.8. force_rtp_proxy usage
+ Example 1.10. force_rtp_proxy usage
...
if (search("User-Agent: Cisco ATA.*") {force_rtp_proxy();};
if (src_ip=1.2.3.4) {force_rtp_proxy("i");};
@@ -407,7 +460,7 @@ if (search("User-Agent: Cisco ATA.*") {force_rtp_proxy("","1.2.3.4");};
This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE,
FAILURE_ROUTE, BRANCH_ROUTE.
- Example 1.9. rtpproxy_offer usage
+ Example 1.11. rtpproxy_offer usage
route {
...
if (is_method("INVITE")) {
@@ -452,7 +505,7 @@ onreply_route[2]
This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE,
FAILURE_ROUTE, BRANCH_ROUTE.
- Example 1.10.
+ Example 1.12.
See rtpproxy_offer() function example above for example.
@@ -463,7 +516,7 @@ onreply_route[2]
This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE,
FAILURE_ROUTE, BRANCH_ROUTE.
- Example 1.11. unforce_rtp_proxy usage
+ Example 1.13. unforce_rtp_proxy usage
...
unforce_rtp_proxy();
...
@@ -500,7 +553,7 @@ rtpproxy_stream2uas(prompt_name, count)
-1 means that it will be streaming in loop indefinitely, until
appropriate rtpproxy_stop_stream2xxx is issued.
- Example 1.12. rtpproxy_stream2xxx usage
+ Example 1.14. rtpproxy_stream2xxx usage
...
if (is_method("INVITE")) {
rtpproxy_offer();
@@ -528,13 +581,27 @@ rtpproxy_stream2uas(prompt_name, count)
This function can be used from REQUEST_ROUTE and ONREPLY_ROUTE.
- Example 1.13. start_recording usage
+ Example 1.15. start_recording usage
...
start_recording();
...
6. Exported Pseudo Variables
+ 6.1. $rtpstart
+
+6.1. $rtpstart
+
+ Returns the RTP-Statistics from the RTP-Proxy. The RTP-Statistics from
+ the RTP-Proxy are provided as a string and it does contain several
+ packet-counters. The statistics must be retrieved before the session is
+ deleted (before unforce_rtpproxy).
+
+ Example 1.16. $rtpstat-Usage
+...
+ append_hf("X-RTP-Statistics: $rtpstat\r\n");
+...
+
7. MI Commands
7.1. nh_enable_rtpp
@@ -553,7 +620,7 @@ start_recording();
NOTE: if a rtpproxy is defined multiple times (in the same or diferente
sete), all its instances will be enables/disabled.
- Example 1.14. nh_enable_rtpp usage
+ Example 1.17. nh_enable_rtpp usage
...
$ kamctl fifo nh_enable_rtpp udp:192.168.2.133:8081 0
...
@@ -565,7 +632,7 @@ $ kamctl fifo nh_enable_rtpp udp:192.168.2.133:8081 0
No parameter.
- Example 1.15. nh_show_rtpp usage
+ Example 1.18. nh_show_rtpp usage
...
$ kamctl fifo nh_show_rtpp
...
diff --git a/modules_k/rtpproxy/doc/rtpproxy_admin.xml b/modules_k/rtpproxy/doc/rtpproxy_admin.xml
index 0074b6d..2bf5cac 100644
--- a/modules_k/rtpproxy/doc/rtpproxy_admin.xml
+++ b/modules_k/rtpproxy/doc/rtpproxy_admin.xml
@@ -419,6 +419,11 @@ force_rtp_proxy();
</para></listitem>
</itemizedlist>
<para>
+ It returns value -2 when a rtp proxy has already mangled the
+ packet, making possible to determine in the script if an
+ rtpproxy is in the audio path.
+ </para>
+ <para>
This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE,
FAILURE_ROUTE, BRANCH_ROUTE.
</para>
diff --git a/modules_k/rtpproxy/rtpproxy.c b/modules_k/rtpproxy/rtpproxy.c
index 3680099..494cda0 100644
--- a/modules_k/rtpproxy/rtpproxy.c
+++ b/modules_k/rtpproxy/rtpproxy.c
@@ -2005,7 +2005,7 @@ force_rtp_proxy(struct sip_msg* msg, char* str1, char* str2, int offer)
}
}
if (proxied != 0 && force == 0) {
- FORCE_RTP_PROXY_RET (-1);
+ FORCE_RTP_PROXY_RET (-2);
}
/*
* Parsing of SDP body.
Module: sip-router
Branch: master
Commit: c44529a8078f7c58d621e5116757da10084180f1
URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=c44529a…
Author: Marius Zbihlei <marius.zbihlei(a)1and1.ro>
Committer: Marius Zbihlei <marius.zbihlei(a)1and1.ro>
Date: Thu Sep 30 17:04:00 2010 +0300
modules:carrierroute Fix documentation when using cr_route/t_relay in failure routes
Starting with 3.0 version, there is no need to call append_branch in failure routes
before t_relay if the RURI is new(it is done automatically from t_relay).
---
modules/carrierroute/README | 69 +++++++++++------------
modules/carrierroute/doc/carrierroute_admin.xml | 6 +-
2 files changed, 36 insertions(+), 39 deletions(-)
Diff: http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commitdiff;h=c44…
I was checking what are current differences between the two major
flavours: ser and kamailio.
Apart of the name and default config file, kamailio flavour enables at
compile time KMSTATS, FMSTATS and WITHAS, precisely these are:
ifeq ($(KMSTATS), 1)
C_DEFS+= -DUSE_CORE_STATS -DSTATISTICS
endif
ifeq ($(FMSTATS), 1)
C_DEFS+= -DMALLOC_STATS
endif
ifeq ($(WITHAS), 1)
C_DEFS+= -DWITH_AS_SUPPORT
endif
I am thinking that maybe we can make them (all or some) enabled by
default now that Andrei added the new statistics API.
WITH_AS_SUPPORT enables extra api in TM, iirc this would be needed at
least by seas module.
Anyone with pro/cons?
Cheers,
Daniel
--
Daniel-Constantin Mierla
http://www.asipto.com
Hi Daniel, Andrei, Jan, etc.
I have been trying to learn Git so that I can maybe help with the
documentation on the project like I said once I would. Along the way,
I have become curious how the project is managed as it relates to Git.
I have read over Jan's impromptu Git tutorial that he posted on the
Kamailio-devel list some time ago to try to help out people switching
from SVN, but still have some questions.
I am curious, what methodologies and tools do you use for hosting the
central Git repository for sip-router? For instance, what scripts and
tools are used to generate e-mails about submitted patches to the
sr-dev list -- are they standard ones that come with Git, or something
handcrafted or third-party? Also, how do you handle automated pushing
and pulling of various developers' branches? Does the system only
pull your personal branch, so that any topic branches you make are
purely your own and when you want them put into the mainline code, you
merge them into your main branch so they get pulled upstream? What
does the workflow/process like?
Thank you!
-- Alex
--
Alex Balashov - Principal
Evariste Systems LLC
1170 Peachtree Street
12th Floor, Suite 1200
Atlanta, GA 30309
Tel: +1-678-954-0670
Fax: +1-404-961-1892
Web: http://www.evaristesys.com/
Hello,
soon we have to create the branch for v3.1. This time is going to be a
single branch, therefore we need a clear naming policy, maybe:
- branch_3.1 (or branch-3.1)
- version_3.1 (or version-3.1)
- or simply: 3.1
Other opinions?
Cheers,
Daniel
--
Daniel-Constantin Mierla
http://www.asipto.com