But my server destination has dynamic IP because I am using ENUM (DNS). I
could to use "rewrite" and "forward" if my servers were static.
2006/7/18, raviprakash sunkara <sunkara.raviprakash.feb14(a)gmail.com>:
>
> use rewirtehost('ip','port'); or forward('ip:port');
>
> On 7/19/06, Andrew And <andcop2006(a)gmail.com> wrote:
>
> >
> > How can I do Redirect in my Openser (server)? And if I have 2 or more
> > destination I need to do redirect + fork.
> >
> > Does someone could help my?
> >
> >
> >
> > _______________________________________________
> > Users mailing list
> > Users(a)openser.org
> > http://openser.org/cgi-bin/mailman/listinfo/users
> >
> >
> >
>
>
> --
> Thanks and Regards with cheers
> Sunkara Ravi Prakash (Voip Developer)
> Hyperion Technology
> Kondapur, Hi-tech city,
> Hyderabad.
> www.hyperion-tech.com
> +91-9985077535
>
Hi all
I have read the UAC Module
and added to my openser.cfg
modparam("uac","credential","99999:domain:99999")
rewritehostport("domain:5060");
Registered use using my X-lite and iam able to make calls out
another account i have configured in sipura, and try to call from Local
X-lite to Sipura working Fine
>From sipura iam trying to call out, call not establishing
when i check the log its follow as :
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: CALL: PSTN gateway
Jul 18 09:11:05 sert /usr/local/sbin/openser[14227]: INFO: CALL TO VOICEMAIL
Jul 18 09:11:05 sert /usr/local/sbin/openser[14227]: ACC: transaction
answered: from=22222 <sip:22222@mydomain.com>;tag=30bd
8a0d1c12d72o1, i-uri=sip:17322180369@mydomain.com, code=200, uid=22222,
method=INVITE, totag=as297d95de, userpart=1732218036
9, fromtag=30bd8a0d1c12d72o1
Jul 18 09:11:05 sert /usr/local/sbin/openser[14221]: ACC: request
acknowledged: from=22222 <sip:22222@mydomain.com>;tag=30bd
8a0d1c12d72o1, i-uri=sip:17322180369@myserver-ipaddress:5090, code=200,
uid=n/a, method=ACK, totag=as297d95de, userpart=17322180369
, fromtag=30bd8a0d1c12d72o1
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: ERROR: parse_uri: bad
uri, state 0 parsed: <:173> (4) / <:17322180369@myserver-ipaddress:5090>
(31)
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: ERROR:
parse_sip_msg_uri: bad uri <:17322180369@myserver-ipaddress:5090>
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: loose_route: Error
while parsing Request URI
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: ERROR: parse_uri: bad
uri, state 0 parsed: <:173> (4) / <:17322180369@myserver-ipaddress:5090>
(31)
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: ERROR:
parse_sip_msg_uri: bad uri <:17322180369@myserver-ipaddress:5090>
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: does_uri_exist(): Error
while parsing URI
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: CALL: PSTN gateway
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: ERROR: parse_uri: bad
uri, state 0 parsed: <:173> (4) / <:17322180369@myserver-ipaddress:5090>
(31)
From: <sip::myserver-ipaddress;ftag=30bd8a0d1c12d72o1;lr=on>a2b;rporttion:
bad uri <:17322180369@myserver-ipaddress:5090 SIP/2.0
Content-Length: 0isk PBXc6@sipura-ip:5090>8a0d1c12d72o1
>, dropping packet
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: ERROR: parse_uri: bad
uri, state 0 parsed: <:173> (4) / <:17322180369@myserver-ipaddress:5090>
(31)
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: ERROR:
parse_sip_msg_uri: bad uri <:17322180369@myserver-ipaddress:5090>
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: ERROR: new_t: uri
invalid
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: ERROR: t_newtran: new_t
failed
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: ERROR: t_relay failed
Jul 18 09:11:05 sert /usr/local/sbin/openser[14230]: ERROR: sl_reply_error
used: I'm terribly sorry, server error occurred (1/
SL)
where iam doing wrong ?
could some one Guide me
ram
Hi,
look at this scenario:
UA --> SBC --> SIPproxy
|
|
mediaproxy
(openser+mediaproxy)sbc use the mediaproxy for all calls.
(mediaproxy) some external mediaproxy controlled by the proxydispatcher
(openser)sipproxy do the accounting for the calls.
I have modified mediaproxy for sending e fake BYE message in case of
timeout of media to the SIPproxy.
call UA<->UA, if during conference i disconnect the ethernet cable of
both UA.. i need to bill anyway the call when media timeout.
this is a fake BYE generated from mediaproxy:
SBC - 82.215.130.50
SIPproxy - 82.215.130.51
U 82.215.130.50:60083 -> 82.215.130.51:5060
BYE sip:396006660097@82.215.130.51 SIP/2.0.
Record-Route: <sip:82.215.130.51;lr=on;ftag=2d8a17eda169fb3e>.
Max-Forwards: 69.
Via: SIP/2.0/UDP 82.215.130.51.
To: <sip:0104491009@sbc.plexia.com>;tag=dc6ec3b669dd8b16.
From: <sip:396006660097@sbc.plexia.com>;tag=2d8a17eda169fb3e.
Call-ID: d3ac49c2ba1793cd(a)82.215.128.140.
Content-Length: 0.
the unique info i had for generate the fake BYE are:
from_uri,to_uri,to_tag,from_tag,callid
the BYE is processed by openser without error but no radius accounting
is sent.
3(8754) receive_msg: cleaning up
what i need to know is if i missing something essential in the BYE for
the accounting.
3(8754) SIP Request:
3(8754) method: <BYE>
3(8754) uri: <sip:396006660097@82.215.130.51>
3(8754) version: <SIP/2.0>
3(8754) parse_headers: flags=2
3(8754) end of header reached, state=2
3(8754) parse_headers: Via found, flags=2
3(8754) parse_headers: this is the first via
3(8754) After parse_msg...
3(8754) preparing to run routing scripts...
3(8754) DEBUG:maxfwd:is_maxfwd_present: value = 69
3(8754) parse_headers: flags=10
3(8754) DEBUG: add_param: tag=dc6ec3b669dd8b16
3(8754) DEBUG:parse_to:end of header reached, state=29
3(8754) DBUG:parse_to: display={}, ruri={sip:0104491009@sbc.plexia.com}
3(8754) DEBUG: get_hdr_field: <To> [54];
uri=[sip:0104491009@sbc.plexia.com]
3(8754) DEBUG: to body [<sip:0104491009@sbc.plexia.com>]
3(8754) DEBUG: add_param: tag=2d8a17eda169fb3e
3(8754) DEBUG:parse_to:end of header reached, state=29
3(8754) DBUG:parse_to: display={},
ruri={sip:396006660097@sbc.plexia.com}
3(8754) parse_headers: flags=40
3(8754) DEBUG:avpops:dbstore_avps: 1 avps were stored
3(8754) DEBUG:avpops:dbstore_avps: 1 avps were stored
3(8754) avpops:ops_dbquery_avps: query [select value from
usr_preferences where
uuid='d3ac49c2ba1793cd(a)82.215.128.140' and attribute='setup_time']
3(8754) avpops:ops_dbquery_avps: query [select value from
usr_preferences where
uuid='d3ac49c2ba1793cd(a)82.215.128.140' and attribute='connect_time']
3(8754) avpops:ops_dbquery_avps: query [select value from
usr_preferences where
uuid='d3ac49c2ba1793cd(a)82.215.128.140' and attribute='disconnect_time']
3(8754) avpops:ops_dbquery_avps: query [select value from
usr_preferences where
uuid='d3ac49c2ba1793cd(a)82.215.128.140' and attribute='valid_call']
3(8754) db_flags=3, flags=4
3(8754) DEBUG:avpops:load_avps: loaded avps = 1
3(8754) DEBUG:avpops:check_avp: check <yes> against <yes> as str
3(8754) [ACCT] do the radius accounting
3(8754) parse_headers: flags=200
3(8754) DEBUG: get_hdr_body : content_length=0
3(8754) found end of header
3(8754) find_first_route: No Route headers found
3(8754) loose_route: There is no Route HF
3(8754) DEBUG:avpops:load_avps: loaded avps = 1
3(8754) [LID/CLI] Find association: 396006660097 390104491097
3(8754) subst_run: running. r=0
3(8754) subst_run: matched (0, 12): [390104491097]
3(8754) avpops:ops_subst: subst to 1 avps
3(8754) DEBUG:destroy_avp_list: destroying list 0x285287a0
3(8754) receive_msg: cleaning up
regards,
:tele
Hi users ,
i am new to use openser,i have to implement trusted ip
example(http://www.voice-system.ro/docs/avpops/ar01s08.html#ex_trusting)
i configure openser.cfg acording to this example.when i run command "openser -c -f path to openser.cfg" i got message "config file ok, exiting...".But when i
stated openser by "/usr/local/sbin/openserctl start" i am geeting error like: "Starting OpenSER : PID file /var/run/openser.pid does not exist -- OpenSER start
failed " here is my configuration file .Please help which
statement is wrong so that my SER gets started .
Thanks
Regards
Tanzeel
---------------------------------
Yahoo! Messenger with Voice. Make PC-to-Phone Calls to the US (and 30+ countries) for 2¢/min or less.
#
# $Id: openser.cfg,v 1.5 2005/10/28 19:45:33 bogdan_iancu Exp $
#
# simple quick-start config script
#
# ----------- global configuration parameters ------------------------
debug=3 # debug level (cmd line: -dddddddddd)
fork=no
log_stderror=yes # (cmd line: -E)
/* Uncomment these lines to enter debugging mode
fork=no
log_stderror=yes
*/
check_via=no # (cmd. line: -v)
dns=no # (cmd. line: -r)
rev_dns=no # (cmd. line: -R)
port=5060
children=4
fifo="/tmp/openser_fifo"
listen=192.168.1.37:5060
#
# uncomment the following lines for TLS support
#disable_tls = 0
#listen = tls:your_IP:5061
#tls_verify = 1
#tls_require_certificate = 0
#tls_method = TLSv1
#tls_certificate = "/usr/local/etc/openser/tls/user/user-cert.pem"
#tls_private_key = "/usr/local/etc/openser/tls/user/user-privkey.pem"
#tls_ca_list = "/usr/local/etc/openser/tls/user/user-calist.pem"
# ------------------ module loading ----------------------------------
# Uncomment this if you want to use SQL database
loadmodule "/usr/local/lib/openser/modules/mysql.so"
loadmodule "/usr/local/lib/openser/modules/sl.so"
loadmodule "/usr/local/lib/openser/modules/tm.so"
loadmodule "/usr/local/lib/openser/modules/rr.so"
loadmodule "/usr/local/lib/openser/modules/maxfwd.so"
loadmodule "/usr/local/lib/openser/modules/usrloc.so"
loadmodule "/usr/local/lib/openser/modules/registrar.so"
loadmodule "/usr/local/lib/openser/modules/textops.so"
# Uncomment this if you want digest authentication
# mysql.so must be loaded !
loadmodule "/usr/local/lib/openser/modules/auth.so"
loadmodule "/usr/local/lib/openser/modules/auth_db.so"
loadmodule "/usr/local/lib/openser/modules/avpops.so"
loadmodule "/usr/local/lib/openser/modules/xlog.so"
loadmodule "/usr/local/lib/openser/modules/acc.so"
loadmodule "/usr/local/lib/openser/modules/alias_db.so"
loadmodule "/usr/local/lib/openser/modules/domain.so"
#loadmodule "/usr/local/lib/openser/modules/alias_db.so"
loadmodule "/usr/local/lib/openser/modules/auth_diameter.so"
loadmodule "/usr/local/lib/openser/modules/diversion.so"
loadmodule "/usr/local/lib/openser/modules/enum.so"
loadmodule "/usr/local/lib/openser/modules/exec.so"
# ----------------- setting module-specific parameters ---------------
# Database Configuration
modparam("usrloc", "db_url",
"mysql://openser:tanzeel@localhost/openser")
# -- usrloc params --
#modparam("usrloc", "db_mode", 0)
# Uncomment this if you want to use SQL database
# for persistent storage and comment the previous line
modparam("usrloc", "db_mode", 2)
# -- auth params --
# Uncomment if you are using auth module
#
modparam("auth_db", "calculate_ha1", yes)
#
# If you set "calculate_ha1" parameter to yes (which true in this
config),
# uncomment also the following parameter)
#
modparam("auth_db", "password_column", "password")
# -- rr params --
# add value to ;lr param to make some broken UAs happy
modparam("rr", "enable_full_lr", 1)
############################## AVP parameters ###########
modparam("avpops","avp_url","mysql://root:tanzeel@tanzeel/openser")
modparam("avpops","avp_table","usr_preferences")
modparam("avpops","uuid_column","uuid")
modparam("avpops","username_column","username")
modparam("avpops","domain_column","localhost")
modparam("avpops","attribute_column","attribute")
modparam("avpops","value_column","value")
modparam("avpops","type_column","type")
#modparam("avpops","use_domain","1")
modparam("avpops","avp_aliases","uuid=I:2;email=s:raza@localhost;fwd=i:53")
modparam("avpops","avp_url","mysql://root:tanzeel@tanzeel/openser")
# ------------------------- request routing logic -------------------
# 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");
exit;
};
if (msg:len >= 2048 ) {
sl_send_reply("513", "Message too big");
exit;
};
# 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();
####################################### AVP EXAMPLE ################
# if the request pretends to belong to a local domain
if (is_from_local())
{
#authenticate only INVITE and MESSAGES
if (method=="INVITE" || method=="MESSAGE"
{
# is it a trusted IP address? - first load the trusted IPs (avp
# NAME 't_ips" from DB table "ips") for the target domain (domain part
# of RURI); then check if at least one value of 't_ips'AVPs equals
# the source IP of the request
if
(!(avp_db_load("$ruri/localhost","s:t_ips/usr_preferences")
&& avp_check("s:t_ips","eq/$src_ip/gi")))
{
sl_send_reply("404", "not allowed");
return;
}
log("**************** AVP PRINT START ******************\n");
avp_print();
log("**************** AVP PRINT END ******************\n");
}
}
# 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");
route(1);
};
if (!uri==myself) {
# mark routing logic in request
append_hf("P-hint: outbound\r\n");
# if you have some interdomain connections via TLS
#if(uri=~"@tls_domain1.net") {
# t_relay_to_tls("IP_domain1","port_domain1");
# exit;
#} else if(uri=~"@tls_domain2.net") {
# t_relay_to_tls("IP_domain2","port_domain2");
# exit;
#}
route(1);
};
# if the request is for other domain use UsrLoc
# (in case, it does not work, use the following command
# with proper names and addresses in it)
if (uri==myself) {
if (method=="REGISTER") {
# Uncomment this if you want to use digest authentication
if (!www_authorize("localhost", "subscriber")) {
www_challenge("localhost", "0");
exit;
};
save("location");
exit;
};
lookup("aliases");
if (!uri==myself) {
append_hf("P-hint: outbound alias\r\n");
route(1);
};
# native SIP destinations are handled using our USRLOC DB
if (!lookup("location")) {
sl_send_reply("404", "Not Found");
exit;
};
append_hf("P-hint: usrloc applied\r\n");
};
route(1);
}
route[1] {
# send it out now; use stateful forwarding as it works reliably
# even for UDP2TCP
if (!t_relay()) {
sl_reply_error();
};
exit;
}
Has anyone noticed that a change to REFER processing with ser
0.9.7-pre3? Blind transfer and call forward seem to have broken with
this release. I'm in the process of trying to capture from traces but I
wanted to check with this list also.
Thanks,Steve
Dear All,
I am using dbtext flatfile as location database, SER is not able to write
the contact details into the flat file until and unless I kill the SER
process.
I tried with db_mode as 1 & 2.
Does anybody face this issue ? please let me know the solution.
Ramachandran G
Hi,
I tried to call avp_write() and avp_check()
funtctions as below:
avp_write("$ruri/username", "s:UNAMEOFRURI");
avp_print();
avp_write("$to/username", "s:UNAMEOFTO");
avp_print();
if (avp_check("s:UNAMEOFRURI", "eq/s:UNAMEOFTO/gi")) {
log(1, "Usernames of RURI and TO are identical."); }
else {
log(1, "Usernames of RURI and TO are NOT
identical.");
}
------------------------------
However, when avp_check is called, always "esle" part
is executed even though "s:UNAMEOFRURI" and
"s:UNAMEOFTO" are identical. Why is it happening? I am
using SER 0.9.6 on Linux. Is it a bug in SER?
The debug output for the above is as below:
9(31343) DEBUG:avpops:print_avp: p=0xbd7340b8,
flags=3
9(31343) DEBUG:
name=<UNAMEOFRURI>
9(31343) DEBUG:
val_str=<7267261005>
9(31343) parse_headers: flags=4
9(31343) DEBUG:avpops:print_avp: p=0xbd7340f0,
flags=3
9(31343) DEBUG:
name=<UNAMEOFTO>
9(31343) DEBUG:
val_str=<7267261004>
9(31343) DEBUG:avpops:print_avp: p=0xbd7340b8,
flags=3
9(31343) DEBUG:
name=<UNAMEOFRURI>
9(31343) DEBUG:
val_str=<7267261005>^
9(31343) DEBUG:avpops:check_avp: check <7267261005>
against <UNAMEOFTO> as str
9(31343) DEBUG:avpops:check_avp: checked failed
----------------------------------------------------------
Note that while executing avp_check, it checks
7267261005 against UNAMEOFTO instead of "7267261004".
Why is that?
Thanks,
Vivek Bhat
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
All.
I m using SER 0.9.7pre1 with RTPProxy and this box sits on the boundary
of private and public networks. REGISTERs hit this box from public side
and are forwarded to private side for registration processing.
The message is forwarded to the private ip but there are two weird
things I noticed ..
a) Even though the packet leaves from the private interface the src ip
address is set to public IP
b) Newly added Via header has public side IP address and not the private
side IP address. This causes problems in routing the response to
REGISTER method.
Any suggestions welcomes
Thanks
Gaurav Kulshreshtha
Hi,
I install ser-0.9.6_2, radiusclient-0.5.2 and mysql-(server &
client)-5.0.22in my FreeBSD
5.4 Os
When I check to vi /var/log/messages, I got messages like this below :
Jul 19 20:04:27 sangbintang kernel: pid 35668 (ser), uid 0: exited on signal
11 (core dumped)
after I type ser -c
Also my Xten lite or my IPPhone cannot register to it allthough I have
create some account in subscriber table
Does anybody knows what happen to my ser server ? need your advise
~Asep