Hi users ,
I am using ser.cfg from onsip.org and because i am not a
programmer (means i dont understand the language)I am using the config file
as i downloaded , before i gave a lot messages regarding this getting of
multiple records in radius database as well as in SER mysql(ac) database
also ; i am attaching the ser.cfg below please let me know where to set
flag so that i can get single record per call ;-) thank you.
debug=4
fork=yes
log_stderror=yes
listen=My Ip address # INSERT YOUR IP ADDRESS HERE
port=5060
children=5
dns=no
rev_dns=no
fifo="/tmp/ser_fifo"
fifo_mode=766
fifo_db_url="mysql://ser:heslo@localhost/ser"
sip_warning=yes
server_signature=no
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"
loadmodule "/usr/local/lib/ser/modules/xlog.so"
loadmodule "/usr/local/lib/ser/modules/avpops.so"
loadmodule "/usr/local/lib/ser/modules/permissions.so"
loadmodule "/usr/local/lib/ser/modules/acc.so"
modparam("auth_db|permissions|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", "rtpproxy_disable", 1)
modparam("nathelper", "natping_interval", 0)
modparam("mediaproxy","natping_interval", 30)
modparam("mediaproxy","mediaproxy_socket", "/var/run/mediaproxy.sock")
modparam("mediaproxy","sip_asymmetrics","/usr/local/etc/ser/sip-clients")
modparam("mediaproxy","rtp_asymmetrics","/usr/local/etc/ser/rtp-clients")
modparam("usrloc", "db_mode", 2)
modparam("registrar", "nat_flag", 6)
modparam("rr", "enable_full_lr", 1)
modparam("xlog", "buf_size", 8192)
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("avpops", "avp_url", "mysql://ser:heslo@localhost/ser")
modparam("avpops", "avp_table", "usr_preferences")
# -- acc params --
# set the reporting log level
modparam("acc", "log_level", 1)
# number of flag, which will be used for accounting; if a message is
# labeled with this flag, its completion status will be reported
modparam("acc", "radius_flag", 11 )
modparam("acc", "radius_missed_flag",12)
modparam("acc", "radius_config",
"/usr/local/etc/radiusclient-ng/radiusclient.conf")
modparam("acc", "service_type", 15)
modparam("acc", "db_flag",13)
modparam("acc", "db_table_acc", "acc")
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=="INVITE" && client_nat_test("3")) {
# INSERT YOUR IP ADDRESS HERE
record_route_preset("81.21.33.35:5060;nat=yes");
} else if (method!="REGISTER") {
record_route();
};
# -----------------------------------------------------------------
# Call Tear Down Section
# -----------------------------------------------------------------
if (method=="BYE" || method=="CANCEL") {
end_media_session();
};
# -----------------------------------------------------------------
# Loose Route Section
# -----------------------------------------------------------------
setflag(11); if (loose_route() ){
------------------------------------------------------>>>>>>>>>>here i set
flag for radius accounting ;
# mark routing logic in request
#append_hf("P-hint: rr-enforced\r\n");
t_relay();
route(1);
break;
};
# -----------------------------------------------------------------
# Call Type Processing Section
# -----------------------------------------------------------------
if (!is_uri_host_local()) {
if (is_from_local() || allow_trusted()) {
route(4);
route(1);
} else {
sl_send_reply("403", "Forbidden");
};
break;
};
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) {
route(4);
route(1);
break;
};
if (!lookup("location")) {
sl_send_reply("404", "User Not Found");
break;
};
route(1);
}
route[1] {
# -----------------------------------------------------------------
# Default Message Handler
# -----------------------------------------------------------------
# send it out now; use stateful forwarding as it works reliably
# even for UDP2TCP
t_on_reply("1");
if (!t_relay()) {
if (method=="INVITE" || method=="ACK") {
end_media_session();
};
sl_reply_error();
};
}
route[2] {
# -----------------------------------------------------------------
# REGISTER Message Handler
# ----------------------------------------------------------------
sl_send_reply("100", "Trying");
if (!search("^Contact:[ ]*\*") && client_nat_test("7")) {
setflag(6);
fix_nated_register();
force_rport();
};
if (!www_authorize("","subscriber")) {
www_challenge("","0");
break;
};
if (!check_to()) {
xlog("L_WARN", "[%Tf]: possible uri spoofing attempt!; method=%rm;
IP=%is; from=%fu;
to=%tu\n");
sl_send_reply("403", "Forbidden");
break;
};
consume_credentials();
if (!save("location")) {
sl_reply_error();
};
}
route[3] {
# ----------------------------------------------------------
# INVITE Message Handler
# ----------------------------------------------------------
if (!allow_trusted()) {
if (!proxy_authorize("","subscriber")) {
proxy_challenge("","0");
break;
} else if (!check_from()) {
sl_send_reply("403", "Use From=ID");
break;
};
consume_credentials();
};
if (client_nat_test("3")) {
setflag(7);
force_rport();
fix_nated_contact();
};
if (uri=~"^sip:1[0-9]{8}@") {
strip(1);
};
lookup("aliases");
if (uri!=myself) {
route(4);
route(1);
break;
};
if (uri=~"^sip:00[0-9]*@") {
route(4);
route(5);
break;
};
if (avp_db_load("$ruri/username", "s:callfwd")) {
setflag(22);
avp_pushto("$ruri", "s:callfwd");
route(6);
break;
};
if (!lookup("location")) {
if (uri=~"^sip:[0-9]{8}@") {
route(4);
route(5);
break;
};
sl_send_reply("404", "User Not Found");
break;
};
if (avp_db_load("$ruri/username", "s:fwdbusy")) {
if (!avp_check("s:fwdbusy", "eq/$ruri/i")) {
setflag(26);
};
};
if (avp_db_load("$ruri/username", "s:fwdnoanswer")) {
if (!avp_check("s:fwdnoanswer", "eq/$ruri/i")) {
setflag(27);
};
};
t_on_failure("1");
route(4);
route(1);
}
route[4] {
# -----------------------------------------------------------------
# NAT Traversal Section
# -----------------------------------------------------------------
if (isflagset(6) || isflagset(7)) {
if (!isflagset(8)) {
setflag(8);
use_media_proxy();
};
};
}
route[5] {
# -----------------------------------------------------------------
# PSTN Handler
# -----------------------------------------------------------------
rewritehost("pstn gateway ip");
avp_write("i:30", "inv_timeout");
t_on_failure("1");
route(4);
route(1);
}
route[6] {
# ----------------------------------------------------------
# Call Forwarding Handler
#
# This must be done as a route block because sl_send_reply() cannot
be
# called from the failure_route block
# ----------------------------------------------------------
if (uri=~"^sip:1[0-9]{8}@") {
strip(1);
};
lookup("aliases");
if (uri!=myself) {
if (!isflagset(22)) {
append_branch();
};
route(4);
route(1);
break;
};
if (uri=~"^sip:00[0-9]*@") {
route(4);
route(5);
break;
}
if (uri=~"^sip:+[0-9]{3}[0-9]*@") {
route(4);
route(5);
break;
};
if (!lookup("location")) {
if (uri=~"^sip:[0-9]{8}@") { #local pstn
route(4);
route(1);
break;
};
sl_send_reply("404", "User Not Found");
};
route(4);
route(1);
}
onreply_route[1] {
if ((isflagset(6) || isflagset(7)) &&
(status=~"(180)|(183)|2[0-9][0-9]")) {
if (!search("^Content-Length:[ ]*0")) {
use_media_proxy();
};
};
if (client_nat_test("1")) {
fix_nated_contact();
};
}
.........................)
Dear all,
Thank you very much to all of you for your kind-hearted to reply my questions.
Thank you very much.
All, Now I try to build the openser admin in my openser server. I have tried to build it for many times, but never successfully. I know that my skill is too low. So I try to ask it to you. Please help me..Please.
I have tried to build the openser admin packet by using README .But, I am confused. Maybe it is because of my lack skill to understand it.
Here is the task that I have done:
1. I have download Ruby and Rails packet. The versions that I have got were rubygems-0.9.0.tar.gz and rails-1.1.6.tar.gz
a. Untar the Rubygems packet
# tar -zxvf rubygems-0.9.0.tar.gz
# cd rubygems
# ruby setup.rb
b. Untar the Rails packet
# tar -zxvf rails-1.1.6.tar.gz
# cd rails
# ruby script/server
c. Untar the openseradmin packet
# tar -xjvf openseradmin-0.3.tar.bz2
# cd openseradmin-0.3
d.Logging into the database server
#mysql -u root -p
> Connect openser;
> GRANT ALL ON openser.* TO 'openser'@'localhost' IDENTIFIED BY 'openserrw';
> USE openser;
> SOURCE /root/openseradmin-0.3/db/database_tables.sql;
> EXIT
Here is the confusing problem that I got :
1. When I try to run "gem install mysql", I got the error message. So, I can not execute it. What`s wrong?
2. When I try to access it by using web browser by typing "http://localhost:3000", I get nothing. What`s wrong?
3. Would you mind tell me if all the task that I have done correct or not? I need some suggestion or adviseable. Please....
I do hope anybody can help me. Please...
Regards,
Ferianto
---------------------------------
Yahoo! Messenger with Voice. Make PC-to-Phone Calls to the US (and 30+ countries) for 2¢/min or less.
hi,
I'm new to SER. I need to use SER as a proxy and a PA as well. I'm wondering
if I could just download the package unstable version of SER with
presence<http://ftp.iptel.org/pub/ser/presence/> from
iptel.org website.
BTW, I'm using Linux Fedora 5, not debian. I'm wondering if there is any
problem for this.
Thanks a lot!
henry
Below I m showing my DNS configuration (Bind version 9):
$ORIGIN 1.2.3.3.e164.arpa.
* NAPTR 1 1 "u" "E2U+sip" "!(^.*$)!sip:\\1@server1.com!" .
$ORIGIN 8.8.5.2.1.2.3.3.e164.arpa.
* NAPTR 1 1 "u" "E2U+sip" "!(^.*$)!sip:\\1@server2.com!" .
When I use DIG "1.8.8.5.2.1.2.3.3.e164.arpa" or "
1.8.8.5.3.1.2.3.3.e164.arpa",
I don´t have problem. But When I try "1.8.8.3.2.1.2.3.3.e164.arpa" DIG don´t
obtain
resolution.
I see that I need to add in DNS the tree between 1.2.3.3 and 8.5.2.1.2.3.3:
$ORIGIN 2.1.2.3.3.e164.arpa.
* NAPTR 1 1 "u" "E2U+sip" "!(^.*$)!sip:\\1@server1.com!" .
$ORIGIN 5.2.1.2.3.3.e164.arpa.
* NAPTR 1 1 "u" "E2U+sip" "!(^.*$)!sip:\\1@ server1.com!" .
$ORIGIN 8.5.2.1.2.3.3.e164.arpa.
* NAPTR 1 1 "u" "E2U+sip" "!(^.*$)!sip:\\1@server1.com!" .
I have a lot of servers and this is not scalable, then I can´t use the tree
between 1.2.3.3 and 8.5.2.1.2.3.3.
Is there another configuration that I don´t need to use the tree between
1.2.3.3 and 8.5.2.1.2.3.3?
Dear all,
Thanks to every body in this forum. Thank you very much
I tried to build openser admin in my openser server. But, I am confused when i try to read the installation note. I do hope anybody can help me to understand it. These are my questions about it:
1. As I read, the openser admin need ruby packet. For installation of ruby, after we untar the packet, does we just type "gem mysql install" command?Because as i read from the installation openser admin, there are only this command.
2. When I try to build the openser admin, i got the error message. Here is the message :
ERROR 1064 (42000): You have an error in your SQL syntax; check the
manual that corresponds to your MySQL server version for the right
syntax to use near 'VIEW usr_preferences_view AS SELECT id, username,
domain, attribute, type AS att' at line 1
As I read from the message in this mailinglist before, this is because of the mysql version.
I use mysql 3. Do i need use mysql 5? Where I can get the suitable varsion?
That all my question. I do hope any body can help me.
Thank you very much.
Regards,
Ferianto
---------------------------------
Stay in the know. Pulse on the new Yahoo.com. Check it out.
I have shaped the sn2400 for the ser, succeed to make telephone calls of the net inside ,the calls phone inside working, but I do not succeed to calls phone from the outside, which it must be the configuration of ser.cfg or the other? . Thaks for help.
I have ser sitting on my iptables nat box and my asterisk box on the lan .
Ser does forwarding so that any requests (register,invite,ack,...) to the
nat box at 5060 r sent to my asterisk box on the lan .I can register from
outside
to my asterisk box but there is only one way audio , reason being that
when the asterisk box send a sip packet whith session description the sdp
part of the sip packet is not natted . I have tried :
fix_nated_contact();
fix_nated_sdp("3");
Hello,
Does ser presence modules are able to work with LCS
micosoft ?
http://www.microsoft.com/office/livecomm/prodinfo/compare.mspx#ECD
anybody
is experienced with LCS to answer ?
Regards
Harry
p4.vert.ukl.yahoo.com uncompressed/chunked Fri Sep 1 12:13:36 GMT 2006
___________________________________________________________________________
Découvrez un nouveau moyen de poser toutes vos questions quelque soit le sujet !
Yahoo! Questions/Réponses pour partager vos connaissances, vos opinions et vos expériences.
http://fr.answers.yahoo.com
I'm trying to install rtpproxy. It usually works, but there are some
cases that don't work.
For example, when a Cisco PSTN gateway is called, RTP traffic is proxied
in one direction only. I think the problem is in the handling of the
reply received from the gateway: it have two "c" lines but only one is
modified.
Here it is the body of the original reply:
v=0.
o=CiscoSystemsSIP-GW-UserAgent 2199 2489 IN IP4 83.211.2.216.
s=SIP Call.
c=IN IP4 83.211.2.217.
t=0 0.
m=audio 18850 RTP/AVP 8 13 101.
c=IN IP4 83.211.2.217.
a=rtpmap:8 PCMA/8000.
a=rtpmap:13 CN/8000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-11.
a=direction:passive.
And here it is the body modified by rtpproxy:
v=0.
o=CiscoSystemsSIP-GW-UserAgent 2199 2489 IN IP4 83.211.2.216.
s=SIP Call.
c=IN IP4 83.211.2.217.
t=0 0.
m=audio 35086 RTP/AVP 8 13 101.
c=IN IP4 195.120.250.49.
a=rtpmap:8 PCMA/8000.
a=rtpmap:13 CN/8000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-11.
a=direction:passive.
a=nortpproxy:yes.
Only the secondo "c" line contain the IP of our rtpproxy. I don't know
RTP enough to understand if the problem is in rtpproxy or in the gateway.
Thanks for any info.
--
___________________________________________________
__
|- giannici(a)neomedia.it
|ederico Giannici http://www.neomedia.it
___________________________________________________