Greetings,
Below are the parts of routing script,
listen=0.0.0.0 # This is where OpenSER installed
port=5070
children=8
reply_to_via = no
sip_warning = yes
check_via = no
dns=no
rev_dns=no
disable_dns_blacklist=true
route {
if (!pike_check_req()) {
xlog("L_NOTICE", "TRACKING [0] ALARM - TOO MANY HITS on
IP=$si !!");
exit;
};
# -----------------------------------------------------------------
# Sanity Check Section
# -----------------------------------------------------------------
if (!mf_process_maxfwd_header("10")) {
sl_send_reply("483", "Too Many Hops");
exit;
};
if (msg:len > max_len) {
sl_send_reply("513", "Message Overflow");
exit;
};
force_rport();
# -----------------------------------------------------------------
# Record Route Section and Acc section
# -----------------------------------------------------------------
if (method=="INVITE" && nat_uac_test("19")) {
record_route_preset("_DNS_NAME_HIDDEN_:5070;nat=yes");
} else if (method!="REGISTER") {
record_route();
};
......
}
I have no problems with the script with normal ip or dns name, that's why I
have not posted the whole.
It does not work with listen=0.0.0.0
If A invites B, then B send OK, proxy can't route ACK from A to B - it's
looping
the same happened with BYE , proxy can't route - it's looping
On proxy's startup I get this in the log:
06/24 19:37:42 warning <socket_info.c: 590> WARNING: fix_socket_list:
could not rev. resolve 0.0.0.0
06/24 19:37:42 debug <socket_info.h: 316> DEBUG:socket2str:
<udp:0.0.0.0:5070>
06/24 19:37:42 warning <socket_info.c: 590> WARNING: fix_socket_list:
could not rev. resolve 0.0.0.0
06/24 19:37:42 debug <socket_info.h: 316> DEBUG:socket2str:
<tcp:0.0.0.0:5070>
As I understand 0.0.0.0 will be included in the record-route and as a result
proxy will not be able to route the message.
Can anybody answer with with more formal explanation of it?
Thanks a lot,
Toly
--
View this message in context: http://www.nabble.com/openser-listen%3A0.0.0.0-tp18103385p18103385.html
Sent from the OpenSER Users Mailing List mailing list archive at Nabble.com.
Hi all,
I have setup and configured my Openser with mysql, presence, xmpp, pua
modules. The server was startup fine. I setup the xmpp module as the
xmpp gateway as component module cuase I have another jabber server
running remotely.
The configuration of servers parameters is as below:
#---------------openser.cfg------------------
listen=udp:193.210.148.243:5060
alias=xmpp.rcs.demo
modparam("xmpp", "domain_separator", "*")
modparam("xmpp", "gateway_domain", "xmpp.rcs.demo")//added to etc/hosts file
modparam("xmpp", "xmpp_domain", "rcs.allatum.wipsl.com")//added to
etc/hosts file
modparam("xmpp", "xmpp_host", "allatum.wipsl.com")
modparam("xmpp", "backend", "component")
#--------------------------------------------
Now I want to test the interoperability of XMPP gateway of openser, so
I use sip client (X-lite) and a XMPP client. I use sip and xmpp
account to successfully register in the sip and XMPP client:
sip account: sip:test@193.210.148.244
xmpp acount: gqian(a)allatum.wipsl.com
But what destination address should I use to add to both of the client
to test the interoperability? I failed at below address added
according to the xmpp module document.
At SIP client I add Contact address:
sip:gqian*allatum.wipsl.com@xmpp.rcs.demo
At XMPP client:
test*193.210.148.244(a)rcs.allatum.wipsl.com
Does anyone has this testing experience and give me some hints how
should I add the contacts in both client to let them talk to each
other? I am now really heading the wall.
Thanks a lot in advance.
BR,
Gaoqiang
--
Gaoqiang Qian
Automation System and Technology
Helsinki University Of Technology
GSM: +358415058138
Hello.
I'm facing a problem with the carrierroute module (openser version 1.3.2). i hope that someone could help me.
I have two gateways for a particular destination. GW1and GW2 :
+----+---------+-------------+--------+------+-------+---------------+----------------+----------------+--------------+
| id | carrier | scan_prefix | domain | prob | strip | rewrite_host | rewrite_prefix | rewrite_suffix | comment |
+----+---------+-------------+--------+------+-------+---------------+----------------+----------------+--------------+
| 1 | 0 | 200 | 0 | 0.3 | 0 | GW1.IP | | | op 1 |
| 2 | 0 | 200 | 0 | 0.3 | 0 | GW2.IP | | | op 2 |
| 3 | 1 | 200 | 1 | 1 | 0 | GW3.IP | | | op 3 |
+----+---------+-------------+--------+------+-------+---------------+----------------+----------------+--------------+
Let's say, for example, that GW1 is down (offline). Is possible via the carrierroute module try with the other gateway (GW2) before sending the call to the failure_route?.
My configuration file is very similar to the example in the docs.
route[2] {
# send it out now; use stateful forwarding as it works reliably
# even for UDP2TCP
if (!t_relay()) {
sl_reply_error();
};
exit;
}
route[5] {
# CARRIER ROUTE MODULE HANDLING.
# route calls based on hash over callid
# choose route domain 0 of the default carrier
if(!cr_rewrite_uri("0", "call_id")){
sl_send_reply("403", "Not allowed - CR");
} else {
# In case of failure, re-route the request
t_on_failure("2");
# Relay the request to the gateway
route(2);
}
}
failure_route[2] {
# In case of failure, send it to an alternative route:
if (t_check_status("408|5[0-9][0-9]")) {
#choose route domain 1 of the default carrier
if(!cr_rewrite_uri("1", "call_id")){
t_reply("403", "Not allowed");
} else {
route(2);
}
}
}
How can i address this issue?
Thanks,
Regards,
Ricardo Martinez.-
Hi Folks,
This is a really easy one I'm sure. Can any of you recommend any
billing systems that support pre and post paid billing, that I can use
(or can be made to work) with OpenSER?
-Cheers Max.
--
Max Lock Gingo Ltd
Hi,
I got no replay for that. I have even put that question in rtpproxy
form but no response.
I have appended the header (PCMA or PCMU) to that file using a java
program and tried to play that file . It is playing but the audio
quality is very bad.
Java code that I wrote to apped header
-------------------------------------------------------------------------
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileInputStream;
import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.AudioFileFormat.Type;
/**
*
* @author chaitanya
*/
public class AudioFileWriter {
public static void main(String args[])
{
File file1 = new File("/home/chaitanya/Desktop/a.rtp"); //RTP file
recorded by rtp proxy
File file = new File("/home/chaitanya/Desktop/a.wav");//Out put wave
file
AudioFormat af=new AudioFormat(new
AudioFormat.Encoding("ULAW"),8000,8,1,4,8000,false); // ULAW or ALAW
what ever u r using and there respective bit rates
int length;
try{
AudioInputStream ais=new AudioInputStream(new
FileInputStream(file1),af,AudioSystem.NOT_SPECIFIED);
//ByteArrayInputStream bais=new
ByteArrayInputStream(b,0,b.length);
Type afft=new Type("WAVE","WAV");
AudioSystem.write(ais,afft,file);
}
catch(Exception e){
e.printStackTrace();
}
}
}
---------------------------------------------------------------------------------------------------
You can try this.
If you find any other solution please let me know.
regards,
Chaitu
Hello,
I need help to configure the Opendiameter applications.
My problem is, I try to configure the Opendiameter as an
Authentication-Server. But I find no docu about the configure!!!
My architecture "I want to build" is an UA, who want to make an Invite to an
other UA. The Invite goes to an OpenSER, which act as an Diameterclient, and
route the Invite to the Diameter-Server. The Server authenticates the UA and
gives an auth.answer to the OpenSER, which relays the auth.answer to the
called UA.
UA Openser (Client) OpenDiameter (Server) UA
|----------------->|--------------------------------->|
|<---------------------------------|
|---------------------------------------------------------------------->|
I think the best way is to use the "Diameter SIP application", but there is
no lib in the Opendiameter. So I have to do it with NASREQ application.But
how can I configure the application??? Can someone give me a hint???
Can someone help me???
U can write me at dariuszwillim(a)yahoo.de
thx a lot
--
View this message in context: http://www.nabble.com/I-need-help-to-build-opendiameter-as-server-and-opens…
Sent from the OpenSER Users Mailing List mailing list archive at Nabble.com.
I was thinking of using script variable to hold the source leg information
for multi-leg accounting as avp variables will be lost when request is
relayed(I'm pushing uri and relaying request in case of call forwarding). Is
it safe way or will it create any issues when simultaneous calls are going
on.
hello,
how can I read the MAX_URI_SIZE value in openser.cfg?
regards,
Daniele
**********************************************************************
The information in this message is confidential and may be legally
privileged. It is intended solely for the addressee. Access to this message
by anyone else is unauthorized. If you are not the intended recipient, any
disclosure, copying, or distribution of the message, or any action or
omission taken by you in reliance on it, is prohibited and may be unlawful.
Please immediately contact the sender if you have received this message inerror.
**********************************************************************
Hi All
Does anyone have a working example of
modparam("acc", "diameter_extra",
"7846=$hdr(Content-type);7847=$avp(s:email)")
In my setup I do have
modparam("acc", "db_url",
"mysql://openser:123456@87.236.144.12/openser")
modparam("acc", "acc_from_tag_column", "from_tag")
modparam("acc", "acc_to_tag_column", "to_tag")
modparam("acc", "db_flag", 2)
#modparam("acc", "db_extra", "ct=$hdr(Content-type);
email=$avp(s:email)")
I am getting the from and to data in the MySQL acc table. However I do
need to save the URI and RURI as well. I tried with the example above
but it stopped the logging to the database.
Can anyone please direct me into the correct direction ?
Thanks.
Hi @ all,
I want to built a Diameter-Client and –Server with disc, but it is very tricky. Can someone help me?
My plan is, a UA gives an invite to a SIP Express Router, this one forwards the request to a DISC Client, which forwards the request to the DISC Server and authenticate the UA.
My first problem is to start the DISC.
What I did:
1. Download the disc with cvs and Install it
cvs -d:pserver:anonymous@...:/cvsroot/disc login
cvs -z3 -d:pserver:anonymous@...:/cvsroot/disc co disc
./rebuild
make
make install
2. Then Configure aaa_client.cfg
17 aaa_realm= 192.160.45
18 aaa_fqdn = 192.160.45:1810
21 module_path= usr/local/lib/disc/client/
22 module= usr/local/lib/disc/client/print.so
32 peer= aaa://192.168.0.45:1812;transport=tcp # Server
33 peer= aaa://192.168.0.45:5060;transport=tcp # SER
42 route= aaa://192.168.0.45:1812;transport=tcp
# For the Modules I don't know what to do, because I couldn't find any module!!! Only the print one, but I think I don'tneed it, do I?
3. After that I could't not start disc, because I had no File disc.cfg in /usr/local/etc/disc/disc.cfg. What I did is copy the aaa_client.cfg to disc.cfg
cp /usr/local/disc/src/aaa_client.cfg /usr/local/etc/disc/disc.cfg
4. Then I start in the Console:
debian:~# disc
qm_malloc(0xb7cab008, 11) called from cfg_parser.c: cfg_getstr(213)
qm_malloc(0xb7cab008, 12) returns address 0xb7cb148c frag. 0xb7cb1474 (size=12) on 1 -th hit
qm_malloc(0xb7cab008, 16) called from cfg_parser.c: cfg_getstr(213)
qm_malloc(0xb7cab008, 16) returns address 0xb7cb14c8 frag. 0xb7cb14b0 (size=16) on 1 -th hit
qm_malloc(0xb7cab008, 27) called from cfg_parser.c: cfg_getstr(213)
qm_malloc(0xb7cab008, 28) returns address 0xb7cb1508 frag. 0xb7cb14f0 (size=28) on 1 -th hit
before loading the modules
loading module usr/local/lib/disc/client/print.so...qm_malloc(0xb7cab008, 35) called from cfg_parser.c: cfg_getstr(213)
qm_malloc(0xb7cab008, 36) returns address 0xb7cb1554 frag. 0xb7cb153c (size=36) on 1 -th hit
ERROR: load_module: failed to load <usr/local/lib/disc/client/print.so> in <client/modules>: usr/local/lib/disc/client/print.so: cannot open shared object file: No such file or directory
FAILED
ERROR (-1): on line 25
ERROR: cannot init the core
ERROR:AAAClose: AAA library is not initialized
INFO:init_trans_manager: transaction manager stoped!
INFO:destroy_peer_manager: peer manager stoped
INFO:destroy_timer: timer thread stoped
qm_free(0xb7cab008, 0xb7cb148c), called from aaa_core.c: destroy_aaa_core(576)
qm_free: freeing frag. 0xb7cb1474 alloc'ed from cfg_parser.c: cfg_getstr(213)
qm_free(0xb7cab008, 0xb7cb14c8), called from aaa_core.c: destroy_aaa_core(577)
qm_free: freeing frag. 0xb7cb14b0 alloc'ed from cfg_parser.c: cfg_getstr(213)
qm_status (0xb7cab008):
heap size= 1022872
used= 68, used+overhead=26012, free=996860
max used (+overhead)= 26040
dumping all allocked. fragments:
0. N address=0xb7cb1458 frag=0xb7cb1440 size=4
alloc'd from shm_mem.c: shm_mem_init_mallocs(185)
start check=f0f0f0f0, end check= c0c0c0c0, abcdefed
3. N address=0xb7cb1508 frag=0xb7cb14f0 size=28
alloc'd from cfg_parser.c: cfg_getstr(213)
start check=f0f0f0f0, end check= c0c0c0c0, abcdefed
4. N address=0xb7cb1554 frag=0xb7cb153c size=36
alloc'd from cfg_parser.c: cfg_getstr(213)
start check=f0f0f0f0, end check= c0c0c0c0, abcdefed
dumping free list stats :
hash= 3. fragments no.: 1
hash= 4. fragments no.: 1
hash= 521. fragments no.: 1
-----------------------------
shm_mem_destroy
destroying the shared memory lock
It could not load the module right? But where I can get it? How can I use disc as Client and Server? I did only the configure for the client! I read out, that disc only can work as a client or as a server.
Can someone give me a hint?
Cheers, Flo
--
Psssst! Schon vom neuen GMX MultiMessenger gehört?
Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger