Hi, Folks...
When I try to compile OpenSER 1.2.0 with MI_XMLRPC support, I get this
error:
mi_xmlrpc.c:44:26: error: xmlrpc_abyss.h: No such file or directory
mi_xmlrpc.c: In function âmod_child_initâ:
mi_xmlrpc.c:162: warning: implicit declaration of function
âxmlrpc_server_abyss_init_registryâ
mi_xmlrpc.c:172: error: âxmlrpc_server_abyss_rpc2_handlerâ undeclared (first
use in this function)
mi_xmlrpc.c:172: error: (Each undeclared identifier is reported only once
mi_xmlrpc.c:172: error: for each function it appears in.)
mi_xmlrpc.c:178: error: âxmlrpc_server_abyss_default_handlerâ undeclared
(first use in this function)
make[1]: *** [mi_xmlrpc.o] Error 1
I know that its because of the lack of the xmlrpc_abyss.h file, but my
problem is where to find this file? In which package did it reside?
As sad on the subject Im using OpenSUSE 10.2 - 64 bits on a Xeon machine
Edson Gellert Schubert
Phone :(0xx47) 3422-6556
Celular:(0xx47) 9107-6556
MSN :egschubert@hotmail.com
Brasil - (GMT-3)
Hello!
I'm using rtpproxy to handle NAT, but right now I have problems of
unreacheable host... I believe client's firewalls are blocking UDP traffic
coming from the proxy ... I tried to change port range and nothing seem to
make it work...
I was wondering if any of you kows something that may fix it....
Thanks
--
-------------------------------------------------------------------
Amanda Remes Mattiuz
amattiuz(a)gmail.com
Hello,
I would like to know how frequently OpenSER are cleaning up stale
records with the mysql backend of various modules? For instance,
active_watchers, location, presentity, watchers etc. mysql tables, or
are stale records automatically removed at all? As I found a row in the
location table with an "expires" date more than a month ago, but was
still not cleaned up today. Or OpenSER takes a different strategy?
This is because we expect to deploy OpenSER on a fairly large network
and we are estimating database size and related overhead, and we are a
bit worry that accumulation of these stale records may increase our
processing costs.
Thank you in advance for any insights.
Regards,
Bernard Chan.
I am very sorry Bogdan due to comany policy I can not attach any file.
Regards,
Shankar
----- Original Message ----
From: Bogdan-Andrei Iancu <bogdan(a)voice-system.ro>
To: shankar <shankar_bandal(a)yahoo.com>
Cc: users(a)openser.org
Sent: Monday, 16 April, 2007 1:29:56 PM
Subject: Re: [Users] caller and callee behind diff NAT - ACK of 200OK is not reaching to callee
Hi there,
unfortunately your msg flow is not comprehensive due text misalignment.
Make it a simple text file and attach it to the email .
regards,
bogdan
shankar wrote:
> Hi ALL,
>
> Currently I am useing ser 0.9.6 version, I am switching to openser but before that I want to find out whether my scenario is valid. If it is valid then how can I solve this problem using openser.
>
> Belo is message sequence for my scenario.
>
> user1 NAT router 1 SER Proxy SIP Server NAT router 2 User2
> (192.x.x.3) (107.x.x.78) (107.x.x.201) (107.x.x.150) (107.x.y.249) (192.x.x3)
> | REGISTER(user1) |REGISTER(user1) |REGISTER(user1)| | |
> |-------------------> |---------------> |--------------> | | |
> | | |REGISTER(user2)| | |
> | | | ------------> | | |
> | | | REGISTER(user2) | REGISTER(user2)|
> | | | <--------------------------------------------------------|<------------------------ |
> | INVITE | INVITE | INVITE | INVITE | INVITE |
> |----------------------------->|-------------------------->| ----------------------->|------------------------------>|------------------------->|
> | | | | | |
> | 100 trying | 100 trying | | | |
> | <-------------------------- |<------------------------- | | | |
> | 180 Ringing | 180 Ringing | 180 Ringing | 180 Ringing | 180 Ringing |
> | <--------------------------- | <----------------------- |<---------------------- | <---------------------------- | <---------------------- |
> | | | | | |
> | 200 OK | 200 OK | 200 OK | 200 OK | 200 OK |
> | <--------------------------- | <---------------------- | <---------------------- | <---------------------------- | <---------------------- |
> | | | | | |
> | ACK | ACK | ACK | | |
> | -----------------> | -----------------------> | ----------------------> | ?????? | |
> Set up:
> user 1:
> Internal IP: 192.x.x.3
> external ip: 107.x.x.78
> user 2:
> Internal IP: 192.x.x.3
> external ip: 107.x.y.249
>
> Nat routers are FC5 linux PCs on which I have enabled SNAT and posrt forwarding.
>
> In above case user2 is not getting ACK. fix_nated_contact() API of SER is modifying contact
> header to the destination ip of receiving message. e.g. SER proxy receives REGISTER meassage
> from user 1 from NAT router 1 then it changing contact ip to the dst ip of REGISTER message i.e.
> Nated ip of user1. Because of this RFEGISTER and INVITE goes fine.
> But in case of 200 OK of INVITE comming from user 2 dst ip is IP of SIP server, so SER adds server ip in the contact header of 200Ok because of this user1 is sending ACK to SERVER but not to user2.
> If I ignore the ACK (just for testing) and start media using RTPPROXY then media packets are
> going to SERVER but not to user2 because force_rtp_proxy follows the same principle like
> fix_nated_contact().
>
> Please provide me some pointers. I am not able to unserstand how use1 will know that 200OK is came from user 2. In 200OK message there no reference of the nated IP of user2
>
> below is my SER config file.
> # $Id: nat-mediaproxy.cfg 51 2006-01-31 13:28:04Z /CN=Paul Hazlett/emailAddress=paul(a)onsip.org $
> debug=6
> fork=no
> log_stderror=yes
> listen=107.108.70.201 # INSERT YOUR IP ADDRESS HERE
> port=5060
> children=4
> dns=no
> rev_dns=no
> fifo="/tmp/ser_fifo"
> fifo_db_url="mysql://ser:heslo@localhost/ser"
> #unix_sock="/tmp/ser_sock"
> loadmodule "/usr/local/lib/ser/modules/mysql.so"
> loadmodule "/usr/local/lib/ser/modules/sl.so"
> loadmodule "/usr/local/lib/ser/modules/tm.so"
> loadmodule "/usr/local/lib/ser/modules/rr.so"
> loadmodule "/usr/local/lib/ser/modules/maxfwd.so"
> loadmodule "/usr/local/lib/ser/modules/usrloc.so"
> loadmodule "/usr/local/lib/ser/modules/registrar.so"
> #loadmodule "/usr/local/lib/ser/modules/auth.so"
> #loadmodule "/usr/local/lib/ser/modules/auth_db.so"
> loadmodule "/usr/local/lib/ser/modules/uri.so"
> loadmodule "/usr/local/lib/ser/modules/uri_db.so"
> #loadmodule "/usr/local/lib/ser/modules/domain.so"
> #loadmodule "/usr/local/lib/ser/modules/mediaproxy.so"
> loadmodule "/usr/local/lib/ser/modules/nathelper.so"
> loadmodule "/usr/local/lib/ser/modules/textops.so"
> modparam("auth_db|domain|uri_db|usrloc", "db_url", "mysql://ser:heslo@localhost/ser")
> #modparam("auth_db", "calculate_ha1", 1)
> #modparam("auth_db", "password_column", "password")
> modparam("nathelper", "natping_interval", 30)
> modparam("nathelper", "ping_nated_only", 1)
> modparam("nathelper", "rtpproxy_sock", "unix:/var/run/rtpproxy.sock")
> modparam("usrloc", "db_mode", 2)
> modparam("registrar", "nat_flag", 6)
> modparam("rr", "enable_full_lr", 1)
> route {
> # -----------------------------------------------------------------
> # Sanity Check Section
> # -----------------------------------------------------------------
> if (!mf_process_maxfwd_header("10")) {
> sl_send_reply("483", "Too Many Hops");
> break;
> };
> if (msg:len > max_len) {
> sl_send_reply("513", "Message Overflow");
> break;
> };
> # !! Nathelper
> # Special handling for NATed clients; first, NAT test is
> # executed: it looks for via!=received and RFC1918 addresses
> # in Contact (may fail if line-folding is used); also,
> # the received test should, if completed, should check all
> # vias for rpesence of received
> if (nat_uac_test("3")) {
> # Allow RR-ed requests, as these may indicate that
> # a NAT-enabled proxy takes care of it; unless it is
> # a REGISTER
> if (method == "REGISTER" || ! search("^Record-Route:")) {
> log("LOG: Someone trying to register from private IP, rewriting\n");
> # This will work only for user agents that support symmetric
> # communication. We tested quite many of them and majority is
> # smart enough to be symmetric. In some phones it takes a configuration
> # option. With Cisco 7960, it is called NAT_Enable=Yes, with kphone it is
> # called "symmetric media" and "symmetric signalling".
> fix_nated_contact(); # Rewrite contact with source IP of signalling
> # if (method == "INVITE") {
> # fix_nated_sdp("1"); # Add direction=active to SDP
> # };
> force_rport(); # Add rport parameter to topmost Via
> setflag(6); # Mark as NATed
> };
> };
>
> # we record-route all messages -- to make sure that
> # subsequent messages will go through our proxy; that's
> # particularly good if upstream and downstream entities
> # use different transport protocol
> if (!method=="REGISTER") record_route();
> # -----------------------------------------------------------------
> # Call Tear Down Section
> # -----------------------------------------------------------------
> if (method=="BYE" || method=="CANCEL") {
> unforce_rtp_proxy();
> };
> # -----------------------------------------------------------------
> # Loose Route Section
> # -----------------------------------------------------------------
> if (loose_route()) {
> if ((method=="INVITE" || method=="REFER") && !has_totag()) {
> sl_send_reply("403", "Forbidden");
> break;
> };
> if (method=="INVITE") {
> # if (!proxy_authorize("","subscriber")) {
> # proxy_challenge("","0");
> # break;
> # } else if (!check_from()) {
> # sl_send_reply("403", "Use From=ID");
> # break;
> # };
> # consume_credentials();
>
> if (nat_uac_test("19")) {
> setflag(6);
> force_rport();
> fix_nated_contact();
> };
> force_rtp_proxy("l");
> };
> route(1);
> break;
> };
> # -----------------------------------------------------------------
> # Call Type Processing Section
> # -----------------------------------------------------------------
> if (uri!=myself) {
> route(4);
> route(1);
> break;
> };
> if (method=="ACK") {
> route(1);
> break;
> } else if (method=="CANCEL") {
> route(1);
> break;
> } else if (method=="INVITE") {
> route(3);
> break;
> } else if (method=="REGISTER") {
> route(2);
> break;
> };
> lookup("aliases");
> if (uri!=myself) {
> append_hf("P-hint: outbound alias\r\n");
> route(4);
> route(1);
> break;
> };
> if (!lookup("location")) {
> sl_send_reply("404", "User Not Found");
> break;
> };
> route(1);
> }
> route[1] {
> # -----------------------------------------------------------------
> # Default Message Handler
> # -----------------------------------------------------------------
> t_on_reply("1");
> if (!t_relay()) {
> if (method=="INVITE" && isflagset(6)) {
> unforce_rtp_proxy();
> };
> sl_reply_error();
> };
> }
> route[2] {
> # -----------------------------------------------------------------
> # REGISTER Message Handler
> # ----------------------------------------------------------------
> if (!search("^Contact:[ ]*\*") && nat_uac_test("19")) {
> setflag(6);
> fix_nated_register();
> force_rport();
> };
> sl_send_reply("100", "Trying");
> # if (!www_authorize("","subscriber")) {
> # www_challenge("","0");
> # break;
> # };
> # if (!check_to()) {
> # sl_send_reply("401", "Unauthorized");
> # break;
> # };
> # consume_credentials();
> if (!save("location")) {
> sl_reply_error();
> };
> }
>
>
> Send a FREE SMS to your friend's mobile from Yahoo! Messenger. Get it now at http://in.messenger.yahoo.com/
>
> _______________________________________________
> Users mailing list
> Users(a)openser.org
> http://openser.org/cgi-bin/mailman/listinfo/users
>
>
Send a FREE SMS to your friend's mobile from Yahoo! Messenger. Get it now at http://in.messenger.yahoo.com/
Hi ALL,
Currently I am useing ser 0.9.6 version, I am switching to openser but before that I want to find out whether my scenario is valid. If it is valid then how can I solve this problem using openser.
Belo is message sequence for my scenario.
user1 NAT router 1 SER Proxy SIP Server NAT router 2 User2
(192.x.x.3) (107.x.x.78) (107.x.x.201) (107.x.x.150) (107.x.y.249) (192.x.x3)
| REGISTER(user1) |REGISTER(user1) |REGISTER(user1)| | |
|-------------------> |---------------> |--------------> | | |
| | |REGISTER(user2)| | |
| | | ------------> | | |
| | | REGISTER(user2) | REGISTER(user2)|
| | | <--------------------------------------------------------|<------------------------ |
| INVITE | INVITE | INVITE | INVITE | INVITE |
|----------------------------->|-------------------------->| ----------------------->|------------------------------>|------------------------->|
| | | | | |
| 100 trying | 100 trying | | | |
| <-------------------------- |<------------------------- | | | |
| 180 Ringing | 180 Ringing | 180 Ringing | 180 Ringing | 180 Ringing |
| <--------------------------- | <----------------------- |<---------------------- | <---------------------------- | <---------------------- |
| | | | | |
| 200 OK | 200 OK | 200 OK | 200 OK | 200 OK |
| <--------------------------- | <---------------------- | <---------------------- | <---------------------------- | <---------------------- |
| | | | | |
| ACK | ACK | ACK | | |
| -----------------> | -----------------------> | ----------------------> | ?????? | |
Set up:
user 1:
Internal IP: 192.x.x.3
external ip: 107.x.x.78
user 2:
Internal IP: 192.x.x.3
external ip: 107.x.y.249
Nat routers are FC5 linux PCs on which I have enabled SNAT and posrt forwarding.
In above case user2 is not getting ACK. fix_nated_contact() API of SER is modifying contact
header to the destination ip of receiving message. e.g. SER proxy receives REGISTER meassage
from user 1 from NAT router 1 then it changing contact ip to the dst ip of REGISTER message i.e.
Nated ip of user1. Because of this RFEGISTER and INVITE goes fine.
But in case of 200 OK of INVITE comming from user 2 dst ip is IP of SIP server, so SER adds server ip in the contact header of 200Ok because of this user1 is sending ACK to SERVER but not to user2.
If I ignore the ACK (just for testing) and start media using RTPPROXY then media packets are
going to SERVER but not to user2 because force_rtp_proxy follows the same principle like
fix_nated_contact().
Please provide me some pointers. I am not able to unserstand how use1 will know that 200OK is came from user 2. In 200OK message there no reference of the nated IP of user2
below is my SER config file.
# $Id: nat-mediaproxy.cfg 51 2006-01-31 13:28:04Z /CN=Paul Hazlett/emailAddress=paul(a)onsip.org $
debug=6
fork=no
log_stderror=yes
listen=107.108.70.201 # INSERT YOUR IP ADDRESS HERE
port=5060
children=4
dns=no
rev_dns=no
fifo="/tmp/ser_fifo"
fifo_db_url="mysql://ser:heslo@localhost/ser"
#unix_sock="/tmp/ser_sock"
loadmodule "/usr/local/lib/ser/modules/mysql.so"
loadmodule "/usr/local/lib/ser/modules/sl.so"
loadmodule "/usr/local/lib/ser/modules/tm.so"
loadmodule "/usr/local/lib/ser/modules/rr.so"
loadmodule "/usr/local/lib/ser/modules/maxfwd.so"
loadmodule "/usr/local/lib/ser/modules/usrloc.so"
loadmodule "/usr/local/lib/ser/modules/registrar.so"
#loadmodule "/usr/local/lib/ser/modules/auth.so"
#loadmodule "/usr/local/lib/ser/modules/auth_db.so"
loadmodule "/usr/local/lib/ser/modules/uri.so"
loadmodule "/usr/local/lib/ser/modules/uri_db.so"
#loadmodule "/usr/local/lib/ser/modules/domain.so"
#loadmodule "/usr/local/lib/ser/modules/mediaproxy.so"
loadmodule "/usr/local/lib/ser/modules/nathelper.so"
loadmodule "/usr/local/lib/ser/modules/textops.so"
modparam("auth_db|domain|uri_db|usrloc", "db_url", "mysql://ser:heslo@localhost/ser")
#modparam("auth_db", "calculate_ha1", 1)
#modparam("auth_db", "password_column", "password")
modparam("nathelper", "natping_interval", 30)
modparam("nathelper", "ping_nated_only", 1)
modparam("nathelper", "rtpproxy_sock", "unix:/var/run/rtpproxy.sock")
modparam("usrloc", "db_mode", 2)
modparam("registrar", "nat_flag", 6)
modparam("rr", "enable_full_lr", 1)
route {
# -----------------------------------------------------------------
# Sanity Check Section
# -----------------------------------------------------------------
if (!mf_process_maxfwd_header("10")) {
sl_send_reply("483", "Too Many Hops");
break;
};
if (msg:len > max_len) {
sl_send_reply("513", "Message Overflow");
break;
};
# !! Nathelper
# Special handling for NATed clients; first, NAT test is
# executed: it looks for via!=received and RFC1918 addresses
# in Contact (may fail if line-folding is used); also,
# the received test should, if completed, should check all
# vias for rpesence of received
if (nat_uac_test("3")) {
# Allow RR-ed requests, as these may indicate that
# a NAT-enabled proxy takes care of it; unless it is
# a REGISTER
if (method == "REGISTER" || ! search("^Record-Route:")) {
log("LOG: Someone trying to register from private IP, rewriting\n");
# This will work only for user agents that support symmetric
# communication. We tested quite many of them and majority is
# smart enough to be symmetric. In some phones it takes a configuration
# option. With Cisco 7960, it is called NAT_Enable=Yes, with kphone it is
# called "symmetric media" and "symmetric signalling".
fix_nated_contact(); # Rewrite contact with source IP of signalling
# if (method == "INVITE") {
# fix_nated_sdp("1"); # Add direction=active to SDP
# };
force_rport(); # Add rport parameter to topmost Via
setflag(6); # Mark as NATed
};
};
# we record-route all messages -- to make sure that
# subsequent messages will go through our proxy; that's
# particularly good if upstream and downstream entities
# use different transport protocol
if (!method=="REGISTER") record_route();
# -----------------------------------------------------------------
# Call Tear Down Section
# -----------------------------------------------------------------
if (method=="BYE" || method=="CANCEL") {
unforce_rtp_proxy();
};
# -----------------------------------------------------------------
# Loose Route Section
# -----------------------------------------------------------------
if (loose_route()) {
if ((method=="INVITE" || method=="REFER") && !has_totag()) {
sl_send_reply("403", "Forbidden");
break;
};
if (method=="INVITE") {
# if (!proxy_authorize("","subscriber")) {
# proxy_challenge("","0");
# break;
# } else if (!check_from()) {
# sl_send_reply("403", "Use From=ID");
# break;
# };
# consume_credentials();
if (nat_uac_test("19")) {
setflag(6);
force_rport();
fix_nated_contact();
};
force_rtp_proxy("l");
};
route(1);
break;
};
# -----------------------------------------------------------------
# Call Type Processing Section
# -----------------------------------------------------------------
if (uri!=myself) {
route(4);
route(1);
break;
};
if (method=="ACK") {
route(1);
break;
} else if (method=="CANCEL") {
route(1);
break;
} else if (method=="INVITE") {
route(3);
break;
} else if (method=="REGISTER") {
route(2);
break;
};
lookup("aliases");
if (uri!=myself) {
append_hf("P-hint: outbound alias\r\n");
route(4);
route(1);
break;
};
if (!lookup("location")) {
sl_send_reply("404", "User Not Found");
break;
};
route(1);
}
route[1] {
# -----------------------------------------------------------------
# Default Message Handler
# -----------------------------------------------------------------
t_on_reply("1");
if (!t_relay()) {
if (method=="INVITE" && isflagset(6)) {
unforce_rtp_proxy();
};
sl_reply_error();
};
}
route[2] {
# -----------------------------------------------------------------
# REGISTER Message Handler
# ----------------------------------------------------------------
if (!search("^Contact:[ ]*\*") && nat_uac_test("19")) {
setflag(6);
fix_nated_register();
force_rport();
};
sl_send_reply("100", "Trying");
# if (!www_authorize("","subscriber")) {
# www_challenge("","0");
# break;
# };
# if (!check_to()) {
# sl_send_reply("401", "Unauthorized");
# break;
# };
# consume_credentials();
if (!save("location")) {
sl_reply_error();
};
}
Send a FREE SMS to your friend's mobile from Yahoo! Messenger. Get it now at http://in.messenger.yahoo.com/
Hi everyone,
I am using the LCR module with almost 45000 rows in the LCR table. My server processes a huge call volumes. I thought everything was working fine but I started getting complains of very low connects.
Then I observed that Openser was taking time to process calls and when I just unloaded the LCR module from the script, everything worked fine and openser could process all calls properly.
I had made the following changes in the config.h and lcr_mod.c file:
Shared memory = 256
PKG_Memory = 4*1024*1024
MAX_NO_LCRS=50000
I really need the functionality of LCR in my script for cost efficiency purposes. The server also has 4GB of memory but something in Openser seems to be wrong !!!
I also upgraded from OSer 1.1.1 to 1.2 but still same problem :(
Can someone please help me out with this?
Thanks,
w/regards,
Jayesh
Send a FREE SMS to your friend's mobile from Yahoo! Messenger. Get it now at http://in.messenger.yahoo.com/
Dear all,
May i seek your advice.
My INVITE message sending to the SER is not successful with error "Status: 500". The SER does not respond back a 200 OK back to the client.
Please kindly advice if anyone of you have the solution or encounter such problem before?
Thanks.
Regards,
Howard
This email (including any attachment) is subject to the following disclaimer:
http://m1.com.sg/M1/misc/disclaimer
Hi Karim,
Yes you are right.
Please advice.
Thank you.
Regards,
Howard
-----Original Message-----
From: karim basraoui [mailto:basraouik@gmail.com]
Sent: Saturday, March 03, 2007 8:01 PM
To: Goh, Tee-Yong
Cc: serusers(a)lists.iptel.org
Subject: Re: [Serusers] SIP SER
So if i understand, when a clint registers, SER will automatically send invites to the other clients and make connections with them?
2007/3/3, Goh, Tee-Yong < <mailto:gohty@m1.com.sg> gohty(a)m1.com.sg>:
Dear Karim,
Thank you for your reply.
Yes you are right. I have having difficulty searching for this for past 2 months.
Yes. Here is what i want. Once i receive the REGISTER messages, my SER will send out "INVITE" message to my other clients. This is what i am intended to do. However, i could not search for the right coding inside the ser-0.9.6.
Please advice and apologies if any inconvenience caused for you.
Thanks.
Regards,
Howard
-----Original Message-----
From: karim basraoui [mailto: basraouik(a)gmail.com]
Sent: Saturday, March 03, 2007 7:18 PM
To: Goh, Tee-Yong
Subject: Re: [Serusers] SIP SER
Hi,
Do you want to make changes on SER behaviour when it receives REGISTER messages. If it's the case you can make a condition in the "ser.cfg" file, in the bloc "route{ ... }". for example:
route {
if (method == "REGISTER")
{ #what you want to do};
}
2007/3/3, Goh, Tee-Yong < gohty(a)m1.com.sg <mailto:gohty@m1.com.sg> >:
Hi,
May i know from the SER-0.9.6, where can i look for and make changes for the SER when receiving "REGISTER" message and responsing " 200 OK" back to the corresponding node or clients?
Would appreciate your assistance and advice as soon as possible as i have difficultly locating the coding. Please advice where i can find the script to edit the above mentioned messages.
Apologies for the inconvenience caused.
Thank you.
Regards,
Howard
_____
This email (including any attachment) is subject to the following disclaimer: http://m1.com.sg/M1/misc/disclaimer <http://m1.com.sg/M1/misc/disclaimer>
_____
_______________________________________________
Serusers mailing list
Serusers(a)lists.iptel.org
http://lists.iptel.org/mailman/listinfo/serusers
--
BASRAOUI Karim
www.basraouik.afrikart.net
_____
This email (including any attachment) is subject to the following disclaimer: http://m1.com.sg/M1/misc/disclaimer <http://m1.com.sg/M1/misc/disclaimer>
_____
--
BASRAOUI Karim
www.basraouik.afrikart.net
This email (including any attachment) is subject to the following disclaimer:
http://m1.com.sg/M1/misc/disclaimer
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi,
I have some trouble to get redirect.py running as an ivr module, cause
ivr module's api has changed. Unfortunately I wasn#t able to find any
new documentaion about sems' ivr except some hints that documentation
isn't actual.
Does anybody has the documented ivr API of sems 0.10?
Thanks in advance
Helmut
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFGH4QM4tZeNddg3dwRAhycAJ97h/WkjOGAmzr/KbmSnB0QNs8DngCfboEN
+qKBWEbg95HlLMq55hPhbEE=
=jMhC
-----END PGP SIGNATURE-----