The core, binaries and the full log are in
ftp://ftp.procergs.com.br/pub/procergs/openser
This is the backtrace:
....
#0 0x00c63b87 in strchr () from /lib/libc.so.6
#1 0x0033dc53 in krb5_kt_resolve () from /usr/lib/libkrb5.so.3
#2 0x003cf5a0 in kssl_keytab_is_available () from /lib/libssl.so.5
#3 0x003bbc4c in ssl3_choose_cipher () from /lib/libssl.so.5
#4 0x003b73c0 in ssl3_accept () from /lib/libssl.so.5
#5 0x003c4eba in SSL_accept () from /lib/libssl.so.5
#6 0x080e1dc9 in tls_accept (c=0xb616b490) at tls/tls_server.c:236
#7 0x080e35cc in tls_fix_read_conn (c=0xb616b490) at tls/tls_server.c:872
#8 0x0809c428 in tcp_read_req (con=0xb616b490, bytes_read=0xbfad8448)
at tcp_read.c:411
#9 0x0809c7a7 in handle_io (fm=0x814e1b0, idx=-1) at tcp_read.c:772
#10 0x0809dbf3 in io_wait_loop_epoll (h=0x8113020, t=Variable "t" is not
available.
) at io_wait.h:722
#11 0x0809df67 in tcp_receive_loop (unix_sock=17) at tcp_read.c:893
#12 0x08093969 in tcp_init_children (chd_rank=0x810dcd4) at
tcp_main.c:1745
#13 0x0806ce1e in main_loop () at main.c:1009
#14 0x0806e8cb in main (argc=1, argv=0xbfad86f4) at main.c:1477
My version of krb5-libs is krb5-libs-1.4.1-5
Please, any help?
Thanks
Paulo Angonese
>>>
>>> Paulo Angonese wrote:
>>>> Ok.
>>>>
>>>> The core (two files was generated) and the full log (debug=9) are in
>>>> ftp://ftp.procergs.com.br/pub/procergs/openser
>>>>
>>>>
>>>>
>>>> Bogdan-Andrei Iancu escreveu:
>>>>> Hi Paulo,
>>>>>
>>>>> some suggestion :) - could you provide full log (debug) and
>>>>> core+binaries (for download) ? Or backtrace?
>>>>>
>>>>> regards,
>>>>> bogdan
>>>>>
>>>>> Paulo Angonese wrote:
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I have the same problem.
>>>>>> When the SNOM ( 360 SIP 6.5.2 ) sends the REGISTER using TLS
>>>>>> OpenSER crashes.
>>>>>> I´m using
>>>>>> OpenSer (1.1.1-tls (i386/linux)),
>>>>>> openssl-0.9.7f-7.10
>>>>>> openssl-devel-0.9.7f-7.10
>>>>>> Fedora 2.6.11-1.1369_FC4
>>>>>>
>>>>>> Any help?
>>>>>>
>>>>>> Thanks
>>>>>>
>>>>>> Paulo Angonese
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> [Users] CVS 31.03, TLS and dead tcp child
>>>>>> Bogdan-Andrei Iancu bogdan at voice-system.ro
>>>>>> Tue Oct 31 17:13:43 CET 2006
>>>>>>
>>>>>> * Previous message: [Users] CVS 31.03, TLS and dead tcp child
>>>>>> * Next message: [Users] Q:ABOUTE:SET UP MESSAGE FLOW
>>>>>> * Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
>>>>>>
>>>>>> Hi Frank,
>>>>>>
>>>>>> can you pack the cores + binaries (lib + exe) + sources+logs(in
>>>>>> debug
>>>>>> mode) and put it somewhere for download?
>>>>>> I will try to take a look.
>>>>>>
>>>>>> regards,
>>>>>> Bogdan
>>>>>>
>>>>>> Frank DInnocenzo wrote:
>>>>>>
>>>>>> > Bogdan,
>>>>>> >
>>>>>> > I am using openser-1.1.0-tls_src. I actually get two core files
>>>>>> after
>>>>>> > the crash. Can I post them somehow?
>>>>>> >
>>>>>> >
>>>>>> > # openser -V
>>>>>> > version: openser 1.1.0-tls (i386/linux)
>>>>>> > flags: STATS: Off, USE_IPV6, USE_TCP, USE_TLS, DISABLE_NAGLE,
>>>>>> > USE_MCAST, SHM_MEM, SHM_MMAP, PKG_MALLOC, F_MALLOC,
>>>>>> > FAST_LOCK-ADAPTIVE_WAIT
>>>>>> > ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144,
>>>>>> MAX_LISTEN 16,
>>>>>> > MAX_URI_SIZE 1024, BUF_SIZE 65535
>>>>>> > poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
>>>>>> > @(#) $Id: main.c,v 1.20 2006/07/04 17:25:54 bogdan_iancu Exp $
>>>>>> > main.c compiled on 14:27:50 Oct 24 2006 with gcc 4.0.0
>>>>>> >
>>>>>> > Thanks
>>>>>> > Frank
>>>>>> >
>>>>>> >
>>>>>> > */Bogdan-Andrei Iancu <bogdan at voice-system.ro>/* wrote:
>>>>>> >
>>>>>> > Hi Frank,
>>>>>> >
>>>>>> > I'm successfully using a SNOM 320 with TLS and no problem so
>>>>>> far.....
>>>>>> > What openser version are you using?...do you get any core file
>>>>>> > after the
>>>>>> > crash??
>>>>>> >
>>>>>> > regards,
>>>>>> > bogdan
>>>>>> >
>>>>>> > Frank DInnocenzo wrote:
>>>>>> >
>>>>>> > > Hello,
>>>>>> > >
>>>>>> > > I'm new to openSer and wondered if there was any
>>>>>> resolution to this
>>>>>> > > post??? I'm hitting this same crash with openSer (with TLS
>>>>>> enabled)
>>>>>> > > using a Snom phone (300 with latest Beta firmware -
>>>>>> > > snom300-6.5-SIP-j.bin ). I've gone
>>>>>> > > through the archives looking for help getting this setup
>>>>>> > working. I've
>>>>>> > > also tried the Snom Softphone with the same result.
>>>>>> > >
>>>>>> > > Thanks
>>>>>> > > Frank
>>>>>> > >
>>>>>> > > >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>> > >
>>>>>> > > Hi,
>>>>>> > >
>>>>>> > > I have tried to register to OpenSER CVS 31.03 with my SNOM
>>>>>> 360
>>>>>> > > (5.3.6sw), disabled pretty all modules from OpenSER (radius,
>>>>>> > xlog, auth,
>>>>>> > > ...) and always the server crashes.
>>>>>> > >
>>>>>> > > Is there something I have missed in configuration ?
>>>>>> > >
>>>>>> > > Thanks a lot for help,
>>>>>> > > -Mika
>>>>>> > >
>>>>>> > > The error message and debug info seems like this:
>>>>>> > >
>>>>>> > > 11(24351) tcpconn_new: new tcp connection to: XXX.XX.XX.XXX
>>>>>> > > 11(24351) tcpconn_new: on port 2171, type 3
>>>>>> > > 11(24351) tls_tcpconn_init: Entered: Creating a whole new ssl
>>>>>> > connection
>>>>>> > > 11(24351) tls_tcpconn_init: Looking up tls domain
>>>>>> > [XXX.XX.XX.XXX:5061]
>>>>>> > > 11(24351) tls_tcpconn_init: Using default tls server settings
>>>>>> > > 11(24351) tls_tcpconn_init: Setting in ACCEPT mode (server)
>>>>>> > > 11(24351) tcpconn_add: hashes: 442, 1
>>>>>> > > 11(24351) handle_new_connect: new connection: 0xb608f6a0 24
>>>>>> > flags: 0002
>>>>>> > > 11(24351) send2child: to tcp child 0 7(24347), 0xb608f6a0
>>>>>> > > 7(24347) received n=4 con=0xb608f6a0, fd=19
>>>>>> > > 7(24347) DBG: io_watch_add(0x810e580, 19, 2, 0xb608f6a0),
>>>>>> fd_no=1
>>>>>> > > 7(24347) tls_update_fd: New fd is 19
>>>>>> > > 11(24351) DBG: handle_tcp_child: dead tcp child 0 (pid
>>>>>> 24347, no 7)
>>>>>> > > (shutting down?)
>>>>>> > > 11(24351) DBG: io_watch_del (0x810e420, 17, -1, 0x0)
>>>>>> fd_no=16 called
>>>>>> > > 11(24351) ERROR: receive_fd: EOF on 15
>>>>>> > > 11(24351) DBG: handle_ser_child: dead child 7, pid 24347
>>>>>> > (shutting down?)
>>>>>> > > 11(24351) DBG: io_watch_del (0x810e420, 15, -1, 0x0)
>>>>>> fd_no=15 called
>>>>>> > > 0(24339) child process 24347 exited by a signal 11
>>>>>> > > 0(24339) core was generated
>>>>>> > > 0(24339) INFO: terminating due to SIGCHLD
>>>>>> > > 6(24346) INFO: signal 15 received
>>>>>> > > 6(24346) Memory status (pkg):
>>>>>>
>>>>>> _______________________________________________
>>>>>> Users mailing list
>>>>>> Users(a)openser.org
>>>>>> http://openser.org/cgi-bin/mailman/listinfo/users
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>>
>>
>>
>
Hi!
I was trying to utilize the enum module of ser but whenever I try to do the check for the user part of the request uri I get the following error:
ser@sen:~/ser/ser-cvs/proxy$ ./ser -c -f ser.cfg
0(5401) parse error (721,14-15): unknown command, missing loadmodule?
I have the enum module loaded and the line for this happens is:
if (is_user_from_e164()) {
I also tried is_e164() which I found in the module header file but with the same result.
it this is not going to work how can I make the check by hand?
for instance having such uri
sip:+4822102@domain.com
will somthing like this work:
uri=~ "sip:+[0-9]{7}@.*"
??
Bests
Tomasz
Hello ,
I have 2 servers: 1st is OpenSER, second is FreeRadius with MySQL.
Till now the authentication was making through mysql, but from now I
want make authentication and accounting through radius. In mysql are 2
DB: radius and openser.
-To create a new user, in which DB it will be inserted?
-Till now I add new users with openserctl, but with radius how to add
new users?
--
Best regards,
Ion Minzu,
mailto:ion.minzu@cts.md
Hi,
I try to have exploitable accounting for multiple domains and multi hops routing.
I've previously tried for weeks on asterisk without success, even with adding c
modules and playing with cdr fork :-(
He is a case:
- sip.domainA and sip.domainB point to the same Openser server.
- 4(a)sip.domainA is dbaliased to 5(a)sip.domainB
- 5(a)sip.domainB is dbaliased to 6@asteriskServer
- 6@asteriskServer make a dial to phone2(a)sip.domainA
I dial 4 on phone1 and get this INVITE routing
phone1(a)sip.domainA === RURI:4@sip.domainA ==> openser
openser === RURI:6@asteriskServer ==> asteriskServer
asteriskServer == RURI:phone2@sip.domainA ==> openser
openser ==> phone2
this works and phone2 ring, I take the call and hangup phone1 after some time.
Now in acc table I find 15 records (7 INVITEs, 5 ACKs and 3 BYEs)
The 3 BYE records seems correct (one from phone 1 to openser, one from
openser to asteriskBox and the last from asteriskBox to phone 2 via openser).
But I can't find a way to match the 7 INVITEs to the 3 BYEs, even with adding src&dst
legs src_ip info and so on.
>From acc records, I'd like to have make the following records report:
== Call ID, src, dst, total duration, billing duration ==
- 1234, phone1@sip.domainA,4@sip.domainA,10,8
- 1234, 4@sip.domainA,5@sip.domainB,10,8
- 1234, 5@sip.domainB,6@asteriskBox,10,8
- 1234, 6@asteriskBox,phone2@domainA,10,8
Is it a complete dream or do you have an idea ?
Manuel
Hi..
Thanx for the solution
It really works well
But now I face another problem
Really need your help..
I configure SER for voicemail usage
I'm using eyebeam as the UA. To check voicemail, I set
it to call 113, and to send voicemail, it will call
114 based on the SER script.
But it failed to forward to voicemail even the icon
"send to voicemail" has appeared on the eyebeam.
Below is my ser.cfg and ser_sems.cfg
Please check it for me and tell me what's wrong.
ser.cfg:
debug=9
fork=yes
log_stderror=yes
listen=202.95.149.2 # put your server IP address
here
port=5060
children=4
dns=no
rev_dns=no
fifo="/tmp/ser_fifo"
fifo_db_url="mysql://ser:heslo@localhost/ser"
fifo_mode=0666
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/nathelper.so"
loadmodule "/usr/local/lib/ser/modules/textops.so"
loadmodule "/usr/local/lib/ser/modules/uri_db.so"
loadmodule "/usr/local/lib/ser/modules/uri.so"
loadmodule "/usr/local/lib/ser/modules/avpops.so"
loadmodule "/usr/local/lib/ser/modules/domain.so"
loadmodule "/usr/local/lib/ser/modules/permissions.so"
loadmodule "/usr/local/lib/ser/modules/msilo.so"
modparam("auth_db|permissions|uri_db|usrloc","db_url",
"mysql://ser:heslo@localhost/ser")
modparam("auth_db|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",
"/var/run/rtpproxy.sock")
modparam("usrloc", "db_mode", 2)
modparam("registrar", "nat_flag", 6)
modparam("rr", "enable_full_lr", 1)
modparam("tm", "fr_inv_timer", 27)
modparam("tm", "fr_inv_timer_avp", "inv_timeout")
modparam("permissions", "db_mode", 1)
modparam("permissions", "trusted_table", "trusted")
modparam("tm", "fr_timer", 10 )
modparam("tm", "fr_inv_timer", 15 )
modparam("tm", "wt_timer", 10 )
modparam("msilo", "db_url",
"mysql://ser:heslo@localhost/ser")
modparam("msilo", "db_table", "silo")
modparam("msilo","registrar","sip:registrar@pcr.ac.id")
modparam("msilo","expire_time",259200)
modparam("msilo","check_time",30)
modparam("msilo","clean_period",5)
alias="pcr.ac.id"
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;
};
#
-----------------------------------------------------------------
# Record Route Section
#
-----------------------------------------------------------------
if (method!="REGISTER") {
record_route();
};
if (method=="BYE" || method=="CANCEL") {
unforce_rtp_proxy();
}
#
-----------------------------------------------------------------
# Loose Route Section
#
-----------------------------------------------------------------
if (loose_route()) {
if (has_totag() && (method=="INVITE"
|| method=="ACK")) {
if (nat_uac_test("19")) {
setflag(6);
force_rport();
fix_nated_contact();
};
force_rtp_proxy("l");
};
route(1);
break;
};
#
-----------------------------------------------------------------
# Offline Message Store Section
#
-----------------------------------------------------------------
if (is_from_local()) {
if (method=="REGISTER") {
save("location");
log("REGISTER received -> dumping messages
with MSILO\n");
# MSILO - dumping user's offline messages
if (m_dump())
{
log("MSILO: offline messages dumped -
if they were\n");
}else{
log("MSILO: no offline messages
dumped\n");
};
break;
};
# domestic SIP destinations are handled using
our USRLOC DB
if(!lookup("location"))
{
if (! t_newtran())
{
sl_reply_error();
break;
};
# we do not care about anything else but
MESSAGEs
if (!method=="MESSAGE")
{
if (!t_reply("404", "Not found"))
{
sl_reply_error();
};
break;
};
log("MESSAGE received -> storing using
MSILO\n");
# MSILO - storing as offline message
if (m_store("0"))
{
log("MSILO: offline message
stored\n");
if (!t_reply("202", "Accepted"))
{
sl_reply_error();
};
}else{
log("MSILO: offline message NOT
stored\n");
if (!t_reply("503", "Service
Unavailable"))
{
sl_reply_error();
};
};
break;
};
# if the downstream UA does not support
MESSAGE requests
# go to failure_route[1]
t_on_failure("1");
t_relay();
break;
};
# forward to current uri now; use stateful
forwarding that
# works reliably even if we forward from TCP
to UDP
if (!t_relay()) {
sl_reply_error();
};
#
-----------------------------------------------------------------
# Call Type Processing Section
#
-----------------------------------------------------------------
if (uri!=myself) {
route(5);
route(1);
break;
};
if (uri==myself) {
if (method=="ACK") {
route(6);
break;
} else if (method=="CANCEL") {
route(3);
break;
} else if (method=="INVITE") {
route(3);
break;
} else if (method=="REGISTER") {
route(2);
break;
};
lookup("aliases");
if (uri!=myself) {
route(5);
route(1);
break;
};
if (!lookup("location")) {
sl_send_reply("404", "User Not
Found");
break;
};
};
route(1);
}
failure_route[1] {
# forwarding failed -- check if the request was a
MESSAGE
if (!method=="MESSAGE")
{
break;
};
log(1,"MSILO:the downstream UA doesn't support
MESSAGEs\n");
# we have changed the R-URI with the contact
address, ignore it now
if (m_store("1"))
{
log("MSILO: offline message stored\n");
t_reply("202", "Accepted");
}else{
log("MSILO: offline message NOT stored\n");
t_reply("503", "Service Unavailable");
};
}
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("pcr.ac.id","subscriber"))
{
www_challenge("pcr.ac.id","0");
break;
};
if (!check_to()) {
sl_send_reply("401", "Unauthorized");
break;
};
consume_credentials();
if (!save("location")) {
sl_reply_error();
};
}
route[3] {
#
-----------------------------------------------------------------
# CANCEL and INVITE Message Handler
#
-----------------------------------------------------------------
if (!allow_trusted() && nat_uac_test("19")) {
setflag(6);
}
lookup("aliases");
if (method=="INVITE" && !allow_trusted())
{
if
(!proxy_authorize("pcr.ac.id","subscriber")) {
proxy_challenge("pcr.ac.id","0");
break;
} else if (!check_from()) {
sl_send_reply("403", "Use
From=ID");
break;
};
consume_credentials();
};
if (uri =~ "sip:1.*@") {
log("Forwarding to 5070");
rewritehostport("localhost:5070");
t_relay_to_udp("localhost","5070");
break;
}
if (uri=~"^sip:9[0-9]*@") {
route(4);
break;
};
if (uri!=myself) {
route(5);
route(1);
break;
};
if (!lookup("location")) {
if (uri=~"^sip:[0-9]{10}@") {
route(4);
break;
};
sl_send_reply("404", "User Not
Found");
break;
};
if (isflagset(6)) {
force_rport();
fix_nated_contact();
force_rtp_proxy();
};
t_on_reply("1");
if (!t_relay()) {
if(isflagset(6)) {
unforce_rtp_proxy();
}
sl_reply_error();
};
}
route[4] {
#
-----------------------------------------------------------------
# PSTN Handler
#
-----------------------------------------------------------------
rewritehostport("202.95.149.2:5060"); # INSERT YOUR
PSTN GATEWAY IP ADDRESS
avp_write("i:45", "inv_timeout");
if (isflagset(6)) {
force_rport();
fix_nated_contact();
force_rtp_proxy();
};
route(1);
}
onreply_route[1] {
if (isflagset(6) &&
status=~"(180)|(183)|2[0-9][0-9]") {
if (!search("^Content-Length:\ +0")) {
force_rtp_proxy();
};
};
if (nat_uac_test("1")) {
fix_nated_contact();
};
}
ser_sems.cfg:
# ser.cfg,v 1.25.2.1 2005/02/18 14:30:44 andrei Exp $
#
# ser for sems configuration
# ----------- global configuration parameters
------------------------
debug=9 # debug level (cmd line: -dddddddddd)
fork=yes
log_stderror=yes # (cmd line: -E)
listen=202.95.149.2
port=5070
children=4
#check_via=no # (cmd. line: -v)
dns=no # (cmd. line: -r)
rev_dns=no # (cmd. line: -R)
fifo="/tmp/ser_fifo"
fifo_db_url="mysql://ser:heslo@localhost/ser"
fifo_mode=0666
unix_sock="/tmp/ser_sock"
# ------------------ module loading
----------------------------------
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/textops.so"
loadmodule "/usr/local/lib/ser/modules/avp.so"
loadmodule "/usr/local/lib/ser/modules/avpops.so"
# ----------------- setting module-specific parameters
---------------
alias="pcr.ac.id"
# add value to ;lr param to make some broken UAs happy
modparam("rr", "enable_full_lr", 1)
# configure avpops db connection
#modparam( "avpops", "avp_url",
"mysql://ser:heslo@localhost/ser" )
#modparam( "avpops", "avp_table", "subscriber" )
#modparam( "avpops", "uuid_column", "id" )
# configure aliases, the number doesn't matter as long
as there are no collisions)
modparam( "avpops", "avp_aliases", "email=i:67" )
# scheme to access the database
#modparam( "avpops", "db_scheme",
#
"email_scheme:table=subscriber;value_col=email_address;value_type=string")
#modparam("tm", "pass_provisional_replies", 1)
# appends for INVITE to voicemail
modparam("tm",
"tw_append","voicemail_headers:hdr[User-Agent];P-Email-Address=avp[$email]")
# appends for dtmf per INFO
modparam( "tm",
"tw_append","info_append:hdr[Content-Length];hdr[subject];msg[body]")
# main routing logic
route{
# initial sanity checks -- messages with
# max_forwards==0, or excessively long requests
if (!mf_process_maxfwd_header("10")) {
sl_send_reply("483","Too Many Hops");
break;
};
if (msg:len > max_len ) {
sl_send_reply("513", "Message too big");
break;
};
if (method != "ACK" && method != "INVITE" && method
!= "BYE"
&& method != "CANCEL" && method != "INFO" ){
log("unsupported method\n");
sl_send_reply("500","unsupported method");
break;
}
# 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
record_route();
# subsequent messages withing a dialog should take
the
# path determined by record-routing
if (loose_route()) {
# mark routing logic in request
append_hf("P-hint: rr-enforced\r\n");
if (!t_relay()) {
sl_reply_error();
}
break;
};
# make transaction
if (!t_newtran()){
log("could not create transaction\n");
sl_send_reply("500","could not create transaction");
break;
}
# actively absorb ACKs
if (method == "ACK") {
t_relay();
break;
}
# pass INFO to SEMS
if (method=="INFO") {
if(!t_write_unix("/tmp/sems_sock","sems/info_append")){
log("could not contact sems\n");
t_reply("500","could not contact media
server");
}
}
if (uri =~ "sip:101.*@") {
if (!t_write_unix("/tmp/sems_sock","myapp")){
log("could not contact media server\n");
t_reply("500","could not contact media server");
break;
}
break;
}
if (uri =~ "sip:102.*@") {
if
(!t_write_unix("/tmp/sems_sock","myconfigurableapp")){
log("could not contact media server\n");
t_reply("500","could not contact media server");
break;
}
break;
}
if (uri =~ "sip:103.*@") {
if
(!t_write_unix("/tmp/sems_sock","myannounceapp")){
log("could not contact media server\n");
t_reply("500","could not contact media server");
break;
}
break;
}
if (uri =~ "sip:104.*@") {
if (!t_write_unix("/tmp/sems_sock","myjukebox")){
log("could not contact media server\n");
t_reply("500","could not contact media server");
break;
}
break;
}
if (uri =~ "sip:105.*@") {
if (!t_write_unix("/tmp/sems_sock","mycc")){
log("could not contact media server\n");
t_reply("500","could not contact media server");
break;
}
break;
}
if (uri =~ "sip:106.*@") {
if (!t_write_unix("/tmp/sems_sock","ivr_announce")){
log("could not contact media server\n");
t_reply("500","could not contact media server");
break;
}
break;
}
############ default sems apps
if (uri =~ "sip:110.*@") {
if (!t_write_unix("/tmp/sems_sock","echo")){
log("could not contact echo\n");
t_reply("500","could not contact media server");
break;
}
break;
}
if (uri =~ "sip:111.*@") {
if (!t_write_unix("/tmp/sems_sock","announcement")){
log("could not contact announcement\n");
t_reply("500","could not contact media server");
break;
}
break;
}
if (uri =~ "sip:112.*@") {
if (!t_write_unix("/tmp/sems_sock","conference")){
log("could not contact conference\n");
t_reply("500","could not contact media server");
break;
}
break;
}
if (uri =~ "sip:113.*@") {
if (!t_write_unix("/tmp/sems_sock","mailbox")){
log("could not contact mailbox\n");
t_reply("500","could not contact media server");
break;
}
break;
}
if (uri =~ "sip:114.*@") {
if
(!t_write_unix("/tmp/sems_sock","early_announce")){
log("could not contact early_announce\n");
t_reply("500","could not contact media server");
break;
}
break;
}
if (uri =~ "sip:115.*@") {
# load email avp with some email address
avp_write("root@localhost","$email");
# use voicemail_headers append to pass it to sems
if
(!t_write_unix("/tmp/sems_sock","voicemail/voicemail_headers")){
log("could not contact voicemail\n");
t_reply("500","could not contact media server");
break;
}
break;
}
t_reply("404","Not found");
}
Please tell me if you need my voicemail.conf..I'll
send it to you.
Thanx for the help
Regards,
Meidiana
____________________________________________________________________________________
We won't tell. Get more on shows you hate to love
(and love to hate): Yahoo! TV's Guilty Pleasures list.
http://tv.yahoo.com/collections/265
Hi,
today I uploaded on SVN trunk the new logic from migrating the existing
DBs from 1.1 format to 1.2. The strategy is different than in the
previous version.
The old "reinstall" proved to be suboptimal because of the lack of
flexibility and mainly it didn't provide a smooth transition (downtime
was required in order to swap the DBs, unsafe - data could be lost if
error occurred during reinstall - and data could be lost because of DB
changes).
A new approach was chosen this time - migration. A new DB is created in
parallel with the old one and data is processed and transferred into the
new DB via sql commands (and nor dumps), using strict mapping between
old and new columns. This way the original data is kept and complex
column renaming and data processing is possible (like lcr address for
example).
for the moment this migration is done only for mysql, but is possible to
do it for postgres also but as I'm not to much into, I will need some
help from some postgres guru ;).
in the mean while testing is welcomed ;)
regards,
bogdan
---------- Forwarded message ----------
From: karim basraoui <basraouik(a)gmail.com>
Date: 28 févr. 2007 20:33
Subject: Re: [Serusers] Call from Asterisk to SER to a foreign subscriber
To: ram <talk2ram(a)gmail.com>
I have found the thing!
in Asterisk dial plan, when i'm trying to call my UA1,
i should not do this:
exten =>xxxx,Dial(SIP/UA1)
but :
exten =>xxxx,Dial(SIP/192.168.4.65/UA1) ;where 192.168.4.65 is the new host
address
thank you for your help !
2007/2/24, karim basraoui <basraouik(a)gmail.com>:
>
> UA2 tries to call UA1 not UA3, sorry for the mistake
>
> 2007/2/24, karim basraoui < basraouik(a)gmail.com>:
> >
> > i had :
> >
> > UA1 (192.168.4.66:5061)
> >
> > }------------->Asterisk----------->SER-----------> UA3 (
> > 192.168.4.65:5061)
> > UA2 ( 192.168.4.66:5062)
> >
> > then UA1 moved to SER domain :
> >
> >
> > UA3 ( 192.168.4.65:5061)
> > UA2 ( 192.168.4.66:5062)
> > ------------->Asterisk----------->SER----------->
> >
> > UA1 (192.168.4.66:5061)
> >
> > UA1 registers to SER and SER forwards the registration to ASTERISK,
> > Asterisk is aware of the new location.
> >
> > UA2 tries to call UA3. It sends the invite to Asterisk and Asterisk
> > replies with a TRYING message.
> > after a while the call fails with an error
> >
> >
> > 2007/2/24, ram < talk2ram(a)gmail.com>:
> > >
> > > then register with SER, should do the job
> > >
> > > UA----ASterisk----SER-----Phone
> > >
> > > is this correct
> > >
> > > ram
> > >
> > >
> > > On 2/24/07, karim basraoui <basraouik(a)gmail.com > wrote:
> > > >
> > > > Hi,
> > > >
> > > > the call i'm trying to establish is from ASTERISK to SER.
> > > > the UA i'm calling was initially in ASTERISK domain and moved to SER
> > > > domain , a roaming case.
> > > >
> > > > 2007/2/24, ram < talk2ram(a)gmail.com>:
> > > > >
> > > > > Hi
> > > > >
> > > > > your question is not clear
> > > > >
> > > > > how is the call path happening from ASterisk or from SER
> > > > > or both are gateway proxies ?
> > > > >
> > > > > ram
> > > > >
> > > > >
> > > > > On 2/23/07, karim basraoui < basraouik(a)gmail.com > wrote:
> > > > >
> > > > > > Hi,
> > > > > >
> > > > > > I've set up a small architecture in which an ASterisk proxy is
> > > > > > connected to a SER proxy in two different domains.
> > > > > >
> > > > > > I have sip phones connected to both of them. when an asterisk
> > > > > > subscriber "travels" to SER domain it tries to register to SER. I've
> > > > > > configured SER to accept foreign
> > > > > > subscribers and to REGISTER them to their initial domain by the
> > > > > > command "t_replicate". Till now everything works good, the UA is registered
> > > > > > and Asterisk is aware
> > > > > > of its new location, it displays in peers list the UA and its
> > > > > > new IP address and port.
> > > > > >
> > > > > > The problem is when i'm trying to call the foreign UA from an
> > > > > > Asterisk subscriber, it doesn't work. i have a TRYING response but no call
> > > > > > establishement.
> > > > > >
> > > > > > how can i overcome this problem please?
> > > > > >
> > > > > > --
> > > > > > BASRAOUI Karim
> > > > > > www.basraouik.afrikart.net
> > > > > > _______________________________________________
> > > > > > Serusers mailing list
> > > > > > Serusers(a)lists.iptel.org
> > > > > > http://lists.iptel.org/mailman/listinfo/serusers
> > > > > >
> > > > > >
> > > > >
> > > >
> > > >
> > > > --
> > > > BASRAOUI Karim
> > > > www.basraouik.afrikart.net
> > > >
> > >
> > >
> >
> >
> > --
> > BASRAOUI Karim
> > www.basraouik.afrikart.net
> >
>
>
>
> --
> BASRAOUI Karim
> www.basraouik.afrikart.net
>
--
BASRAOUI Karim
www.basraouik.afrikart.net
--
BASRAOUI Karim
www.basraouik.afrikart.net
Hi all,
Three new features for sip:wizard, the OpenSER Config Generator, have
been released this week:
- user-aliases: You can now assign aliases to local users. This is
especially useful for mapping numeric numbers to SIP accounts for PSTN
inward dialing.
- cli-pai: This feature allows the provisioning of arbitrary SIP URIs,
which are inserted into a P-Asserted-Identity Header for outgoing calls.
This for example allows the signalling of a numeric CLI to a PSTN
gateway (so it’s the opposite of user-aliases).
- ring-timeout: You can now dynamically set the ring-timeout (or, more
specifically, the fr_inv_timer) per local callee.
Visit http://www.sipwise.com/wizard to give it a try.
Regards,
Andreas
Hi Shane,
have you followed this ex:
http://www.openser.org/docs/modules/1.2.x/uac_redirect.html#AEN251
can you be more specific about the errors you see?
regards,
bogdan
Shane Burrell wrote:
> I am calling the t_relay after getting the contacts. However internally I
> see in openser it makes it back to the route and then dies in loose route.
> I assumed there was something I need to check to allow the new call to be
> processed.
>
> -----Original Message-----
> From: Bogdan-Andrei Iancu [mailto:bogdan@voice-system.ro]
> Sent: Wednesday, February 28, 2007 12:26 PM
> To: Shane Burrell
> Cc: users(a)openser.org
> Subject: Re: [Users] 3xx requests and t_relay
>
> Hi,
>
> let me see if I get it right...you get a 3xx reply and try to generate
> INVITE to the new contacts? if so, take a look at the uac_redirect module.
>
> regards,
> bogdan
>
> Shane Burrell wrote:
>
>> I have this working to the point it tries to relay the call but I see
>> that internally openser is not making the new call. I assume t_relay
>> calls a new route but how to I make sure that all relays get
>> forwarded. Some of my logic else where seems to be killing the
>> rerouted call and I need any 302 routed calls to be accepted and routed.
>>
>>
>>
>> TIA,
>>
>>
>>
>> Shane
>>
>>
>> ***************************************************************
>>
>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Users mailing list
>> Users(a)openser.org
>> http://openser.org/cgi-bin/mailman/listinfo/users
>>
>>
>
>
>
I have this working to the point it tries to relay the call but I see that
internally openser is not making the new call. I assume t_relay calls a new
route but how to I make sure that all relays get forwarded. Some of my logic
else where seems to be killing the rerouted call and I need any 302 routed
calls to be accepted and routed.
TIA,
Shane
***************************************************************