Dear ALL:
As your discussions before, there is one or more ser.cfg version 0.9.0
for us to practice. Does anyone get it or any kind man can release a
version for me to test?
I usually test failed at call busy forward and call no answer forward.
Help me, plz.
Best Regard
Charles
Hello list,
Recently I compiled ser 0.9.0 with mysql acc, and ser seems working ok,
except I get a warning message twice when I run SER: fix_socket_list: could
not rev. resolve 192.168.0.100 (my SER box's internal ip)
Output:
Listening on
udp: 192.168.0.100 [192.168.0.100]:5060
tdp: 192.168.0.100 [192.168.0.100]:5060
Aliases: *:(its WAN ip address):*
*:ser1.mydomain.com:*
etc
And I port forwarded tcp and udp5060 to my SER box. Why do I get this
warning?Is it simply because my SER box is behind NAT?
Back to my main question: I got an error 400; check if you use aliases in
SER message when I tried "serctl add newusername newpasswd email(a)mail.com".
I exported my SIP_DOMAIN to be ser1.mydomain.com and also updated the serctl
script with the appropriate db domain and access username and password.
Here is the global definition section of my ser.cfg:
debug=3
fork=yes
listen=192.168.0.100
alias=ser1.mydomain.com
alias=(my WAN ip)
port=5060
children=4
fifo="/tmp/ser_fifo"
fifo_db_url="mysql://username:pass@mysqldomain.com/ser"
...
Thank you in advance.
Best regards,
Matt
_________________________________________________________________
Scan and help eliminate destructive viruses from your inbound and outbound
e-mail and attachments.
http://join.msn.com/?pgmarket=en-ca&page=byoa/prem&xAPID=1994&DI=1034&SU=ht…
Start enjoying all the benefits of MSN® Premium right now and get the
first two months FREE*.
Hello List,
I'm a new user of SER. Just some questions about how I could deploy
SER+SERWEB+SEMS, possibly on separate hosts, as I plan to have more than one
SER proxy server with a centralized web server and media/voice mail server
(1) Basically what features will I be missing if I decide to omit the fifo
functions (if possible) in serweb? ( aliases, add new contact SIP address
and who are online would be three features, right?)
(2) I saw in one of the threads that there is a fifo_server.php file
available for fifo-Internet relay, but not quite sure how to use it. Could
someone give me some pointers?
(3) Somewhere in the mailing list I saw the "fifo_db_url" global
declaration, is it a feature only available in version 0.9.0? And is there a
serweb version that will work with ser 0.9.0?
(4) I have not tried SEMS yet, but since it also communicates with SER via
fifo, I would assume it has to be in the same host as SER, right? Are there
any existing modules/plugins that will allow SER and SEMS on different
hosts? If not, would it be more scalable if I build an Asterisk box to
handle voice mails?
(5) If I have multiple SER proxy servers on different hosts, how could UA
Alpha registered with SER proxy A be able to call UA beta which registered
with SER proxy B? What setup/configuration would I need?
I know I have some dumb questions - I'm new to voip and SER. Please try to
help me out, I would really appreciate it. Thank you in advance.
_________________________________________________________________
Take charge with a pop-up guard built on patented Microsoft® SmartScreen
Technology.
http://join.msn.com/?pgmarket=en-ca&page=byoa/prem&xAPID=1994&DI=1034&SU=ht…
Start enjoying all the benefits of MSN® Premium right now and get the
first two months FREE*.
Hi all,
May I know where to find some guidelines on how to implement a UA to
do registration with digest authentication? Any links you are aware of will
be useful.
cheers
Chiang
Following on from my below email, I can now definately
say the problem is not nat pings. Just to recap I am
experiencing intermittent audio. It works when the
phones have very recently registered, then sometimes
theres one way audio and then sometimes no audio. Does
anyone have any ideas what the problem could be or
where I could begin to troubleshoot this?
Hi,
I have a strange problem. I have two grandstream
budgetone clients on the same subnet behind nat
registering with ser on a public address. Obviously
their public addresses would be the same but they
listen on different ports. When they initially
register, I can the call,audio is transmitted and
everything is successful.
However sometimes theres only one way audio, other
times theres no audio and then other times it
works....I am guessing that this is because the nat
router is forgetting the nat mapping so after a while
when the nat mapping is "forgotten" and a packet
arrives destined for a client, the router drops it....
Could someone verify this for me??...Am I on the right
track?? I have the following settings in ser.cfg which
I thought would keep the nat settings alive.
modparam("registrar", "nat_flag", 6)
modparam("nathelper", "natping_interval", 30) # Ping
interval 30 s
modparam("nathelper", "ping_nated_only", 1) # Ping
only clients behind NAT
I also increased the nat keep alives "pings" sent in
the configuration settings of the grandstream
phone....Any further ideas??
Regards,
Pat.
Send instant messages to your online friends http://uk.messenger.yahoo.com
Hi there everyone, I need help here. This is my ser.cfg file. Now i can use SJphone call to SJphone.
However, when i try to call from SJphone to my PSTN no, it is connected but i'm facing problem to hear the voice from the receiver.
Receiver also cant hear my voice. Is there anyone there who can give me a help. Thanks for everything.
Regards,
Lee
#
# $Id: nathelper.cfg,v 1.1.2.1 2003/11/24 14:47:18 janakj Exp $
#
# simple quick-start config script including nathelper support
# This default script includes nathelper support. To make it work
# you will also have to install Maxim's RTP proxy. The proxy is enforced
# if one of the parties is behind a NAT.
#
# If you have an endpoing in the public internet which is known to
# support symmetric RTP (Cisco PSTN gateway or voicemail, for example),
# then you don't have to force RTP proxy. If you don't want to enforce
# RTP proxy for some destinations than simply use t_relay() instead of
# route(1)
#
# Sections marked with !! Nathelper contain modifications for nathelper
#
# NOTE !! This config is EXPERIMENTAL !
#
# ----------- global configuration parameters ------------------------
debug=7 # debug level (cmd line: -dddddddddd)
fork=yes
port=5060
log_stderror=yes # (cmd line: -E)
fifo="/tmp/ser_fifo"
#memlog=3
# Uncomment these lines to enter debugging mode
/*
debug=3
fork=yes
port=5060
log_stderror=yes
*/
#check_via=no # (cmd. line: -v)
#dns=no # (cmd. line: -r)
#rev_dns=no # (cmd. line: -R)
#children=4
#fifo="/tmp/ser_fifo"
#alias="sipproxy.com"
# ------------------ module loading ----------------------------------
# Uncomment this if you want to use SQL database
loadmodule "/usr/local/lib/ser/modules/acc.so"
#loadmodule "/usr/local/lib/ser/modules/mysql.so"
loadmodule "/usr/local/lib/ser/modules/sl.so"
loadmodule "/usr/local/lib/ser/modules/print.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/textops.so"
loadmodule "/usr/local/lib/ser/modules/exec.so"
#loadmodule "/usr/local/lib/ser/modules/group.so"
loadmodule "/usr/local/lib/ser/modules/group_radius.so"
#loadmodule "/usr/local/lib/ser/modules/uri.so"
#loadmodule "/usr/local/lib/ser/modules/uri_db.so"
loadmodule "/usr/local/lib/ser/modules/uri_radius.so"
#loadmodule "/usr/local/lib/ser/modules/domain.so"
loadmodule "/usr/local/lib/ser/modules/auth.so"
loadmodule "/usr/local/lib/ser/modules/auth_radius.so"
#loadmodule "/usr/local/lib/ser/modules/auth_db.so"
loadmodule "/usr/local/lib/ser/modules/xlog.so"
loadmodule "/usr/local/lib/ser/modules/nathelper.so"
#loadmodule "/usr/local/lib/ser/modules/option.so"
#loadmodule "/usr/local/lib/ser/modules/speeddial.so"
# ----------------- setting module-specific parameters ---------------
#modparam("acc|auth_db|group|uri_db|usrloc", "db_url", "mysql://root:mysqldb04@localhost/ser")
#modparam("usrloc", "db_url", "mysql://root:mysqldb04@localhost/ser")
#---------------------------- use_domain setting
#modparam("auth_db|group|uri_db|usrloc", "use_domain", 1)
#---------------------------- 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)
#modparam("usrloc", "timer_interval", 60)
#modparam("usrloc", "desc_time_order", 1)
#---------------------------- auth params
modparam("auth_radius", "radius_config", "/usr/local/etc/radiusclient-ng/radiusclient.conf")
modparam("auth_radius", "service_type", 15)
modparam("group_radius", "radius_config", "/usr/local/etc/radiusclient-ng/radiusclient.conf")
modparam("group_radius", "use_domain", 1)
#modparam("auth_db", "user_column", "user_id")
#modparam("auth_db", "calculate_ha1", yes)
#modparam("auth_db", "password_column", "password")
modparam("uri_radius", "radius_config", "/usr/local/etc/radiusclient-ng/radiusclient.conf")
modparam("uri_radius", "service_type", 11)
#-----------------------------accounting params
modparam("acc", "log_level", 1)
modparam("acc", "radius_flag", 1)
modparam("acc", "failed_transactions", 1)
modparam("acc", "report_ack", 1)
modparam("acc", "report_cancels", 1)
modparam("acc", "radius_config", "/usr/local/etc/radiusclient-ng/radiusclient.conf")
#modparam("acc", "db_url", "mysql://ser:elanetw123@localhost/ser")
#modparam("acc", "radius_log_flag", 1)
modparam("acc", "radius_missed_flag", 2)
#----------------------------- tm params
modparam("tm", "fr_timer", 12)
modparam("tm", "fr_inv_timer", 24)
#----------------------------- rr params
# add value to ;lr param to make some broken UAs happy
modparam("rr", "enable_double_rr", 0)
modparam("rr", "enable_full_lr", 1)
#----------------------------- registrar params
#modparam("registrar", "nat_flag", 6)
#modparam("registrar", "min_expires", 60)
#modparam("registrar", "max_expires", 86400)
#modparam("registrar", "default_expires", 3600)
#modparam("registrar", "desc_time_order", 1)
#modparam("registrar", "append_branches", 1)
#modparam("registrar", "use_domain", 1)
#----------------------------- nathelper params
modparam("nathelper", "natping_interval", 10) # Ping interval 30 s
modparam("nathelper", "ping_nated_only", 1) # Ping only clients behind NAT
#----------------------------- exec params
modparam("exec", "setvars", 1)
modparam("exec", "time_to_kill", 10)
#----------------------------- domain params
#modparam("domain", "db_mode", 1)
#----------------------------- Xlog params
modparam("xlog", "buf_size", 8192)
# ------------------------- request routing logic -------------------
# main routing logic
route{
# ------------------------------------------------------------
# Sanity checks -- messages
# ------------------------------------------------------------
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;
};
# ------------------------------------------------------------
# Option Section
# ------------------------------------------------------------
#if (search("^From: sip:sipsak@") &&
# (method=="OPTIONS") && (!uri=~:"sip:.*[@]+.*")) {
# option_reply();
# break;
#};
if (loose_route()) {t_relay(); break;};
if (method=="BYE" || method=="CANCEL" || method=="INVITE") {
setflag(1);
log(1, "Accounting Flag ON\n");
};
if (method=="INVITE") {
setflag(2);
log(1, "Missed Call Flag ON\n");
};
# !! Nathelper
# -----------------------------------------------------------
# NAT test Section
# -----------------------------------------------------------
if (nat_uac_test("3")) {
if (method == "REGISTER" ||(!search("^Record-Route:"))) {
log("LOG: Someone trying to register from private IP, rewriting\n");
fix_nated_contact(); # Rewrite contact with source IP of signalling
# if (method == "REGISTER") {
# fix_nated_register();
# } else
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
};
};
if (!method=="REGISTER") record_route();
if (loose_route()) {
# mark routing logic in request
append_hf("P-hint: rr-enforced\r\n");
route(1);
break;
};
if (uri=~"^sip:101*") {
rewritehost("202.xxx.xx.xxx:5060");
# t_relay_to_udp("202.xxx.xx.xxx", "5060");
forward(uri:host, uri:port);
# append_hf("p-hint:PSTN call\r\n");
# route(1);
break;
};
if (!uri==myself) {
# mark routing logic in request
append_hf("P-hint: outbound\r\n");
route(1);
break;
};
if (uri==myself) {
if (method=="REGISTER") {
# log(1, "REGISTER: Authenticating user\n");
if (!radius_proxy_authorize("")) {
# log(1, "REGISTER: challenging user\n");
proxy_challenge("", "1");
break;
};
save("location");
break;
};
#if (method=="INVITE") {
# log(1, "INVITE\n");
# setflag(1);
#rad_acc_request("Start");
#};
#if (method=="MESSAGE") {
# log(1, "MESSAGE\n");
#setflag(1);
#};
#if (method=="BYE" || method=="CANCEL") {
# log (1, "BYE or CANCEL\N");
# setflag(1);
#rad_acc_request("Stop");
#};
lookup("aliases");
if (!uri==myself) {
append_hf("P-hint: outbound alias\r\n");
route(1);
break;
};
if (!lookup("location")) {
sl_send_reply("404", "Not Found");
break;
};
};
append_hf("P-hint: usrloc applied\r\n");
route(1);
}
route[1]
{
if (uri=~"[@:](192\.168\.|10\.|172\.(1[6-9]|2[0-9]|3[0-1])\.)" && !search("^Route:")){
sethostport("202.xxx.xx.xxx");
sl_send_reply("479", "We don't forward to private IP addresses");
break;
};
# if client or server know to be behind a NAT, enable relay
if (isflagset(6)) {
force_rtp_proxy();
};
# NAT processing of replies; apply to all transactions (for example,
# re-INVITEs from public to private UA are hard to identify as
# NATed at the moment of request processing); look at replies
t_on_reply("1");
# send it out now; use stateful forwarding as it works reliably
# even for UDP2TCP
if (!t_relay()) {
sl_reply_error();
};
}
# !! Nathelper
onreply_route[1] {
# NATed transaction ?
if (isflagset(6) && status =~ "(183)|2[0-9][0-9]") {
fix_nated_contact();
force_rtp_proxy();
} else if (nat_uac_test("1")) {
fix_nated_contact();
};
}
Hi all,
I am new to ser. I am having the common problem where WM(4.7.2009) cannot be authenticated after the digest authentication is turn on. I have search for the solution posted in this forum and tried it but still cant solved it.
I am running ser-0.8.12 on CENTOS.
Please advice.
Regards
mo
here is my ser.cfg
# ----------- global configuration parameters ------------------------
# debug=3 # debug level (cmd line: -dddddddddd)
# fork=yes
# log_stderror=no # (cmd line: -E)
listen=192.168.10.75
alias=server.com
/* Uncomment these lines to enter debugging mode
debug=7
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/ser_fifo"
# ------------------ module loading ----------------------------------
# Uncomment this if you want to use SQL database
loadmodule "/usr/lib/ser/modules/mysql.so"
loadmodule "/usr/lib/ser/modules/sl.so"
loadmodule "/usr/lib/ser/modules/tm.so"
loadmodule "/usr/lib/ser/modules/rr.so"
loadmodule "/usr/lib/ser/modules/maxfwd.so"
loadmodule "/usr/lib/ser/modules/usrloc.so"
loadmodule "/usr/lib/ser/modules/registrar.so"
# Uncomment this if you want digest authentication
# mysql.so must be loaded !
loadmodule "/usr/lib/ser/modules/auth.so"
loadmodule "/usr/lib/ser/modules/auth_db.so"
# ----------------- setting module-specific parameters ---------------
# -- 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)
modparam("usrloc", "db_url", "sql://ser:heslo@localhost/ser")
# -- auth params --
modparam("auth_db", "db_url", "sql://ser:heslo@localhost/ser")
# 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)
# ------------------------- 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");
break;
};
if ( msg:len > max_len ) {
sl_send_reply("513", "Message too big");
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();
# loose-route processing
if (loose_route()) {
t_relay();
break;
};
# 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("server.com", "subscriber")) {
www_challenge("server.com", "0");
break;
};
save("location");
break;
};
# native SIP destinations are handled using our USRLOC DB
if (!lookup("location")) {
sl_send_reply("404", "Not Found");
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();
};
}
---------------------------------
Do you Yahoo!?
Yahoo! Mail - Find what you need with new enhanced search. Learn more.
I will try it.
Thanks!
---- Mensaje Original ----
> IN ser, pass SUBSCIRBE/NOTIFY to the destination UA. Pretty much
the same
> logic as INVITE/BYE.
>
> In WM, add other UA SIP addresses in the buddy list. Once you add,
it sends
> a SUBSCRIBE to the other UAs. When the other UAs change status, it
sends
> back NOTIFY.
>
> Richard
>
>
> > -----Original Message-----
> > From: kiko.vives(a)ua.es [mailto:kiko.vives@ua.es]
> > Sent: Wednesday, March 09, 2005 8:11 AM
> > To: richard(a)o-matrix.org; Chiang.Tan(a)thalesgroup.com;
serusers(a)lists.iptel.org
> > Subject: RE: [Serusers] SER presence support
> >
> > Hello Richard.
> >
> > How can I configure WM 5.0 to work in P2P mode as you say in your
> > post ?
> >
> > Thanks !
> >
> > ---- Mensaje Original ----
> >
> > > Presence support has two ways, peer to peer and presence agent.
> > >
> > > In the p2p mode, SIP UAs exchange SUBSCRIBE/NOTIFY directly
> > between each
> > > other. Ser only forwards the sip packet. I got WM 5.0/5.1
working
> > in this
> > > mode. This mode heavily relies on UAs to support the feature.
> > There are
> > > still compatibility issues between UA implementations.
> > >
> > > In the presence agent mode, SIP UAs register with ser which
stores
> > the state
> > > of UAs. Whenever there is a state change, ser will notify the
> > interested
> > > UAs. Ser has a PA module which is supposed to work this way.
> > However I
> > > haven't been able to make it work. As a side note, xten wrote a
> > big patch
> > > for the PA module a while ago, but unfortunately not in cvs
yet.
> > >
> > > Xten has a product called 'eyebeam' which supports both modes.
It
> > is not
> > > free. I would recommend waiting for a while before it becomes
more
> > stable.
> > > It crashed Windows twice during our demo.
> > >
> > > Richard
> > >
> > >
> > >
> > > > -----Original Message-----
> > > > From: serusers-bounces(a)lists.iptel.org [mailto:serusers-
> > bounces(a)iptel.org] On
> > > > Behalf Of Tan, Chiang Kang
> > > > Sent: Wednesday, March 09, 2005 6:30 AM
> > > > To: serusers(a)lists.iptel.org
> > > > Subject: [Serusers] SER presence support
> > > >
> > > > Hi all,
> > > > What's the current status of presence support in
SER? May I
> > know
> > > > what are the clients, similar to windows messenger, that will
> > interwork
> > > > with
> > > > SER? As I understand that windows messenger above version 5
does
> > not work
> > > > with ser anymore.
> > > >
> > > > cheers
> > > > Chiang
> > > >
> > > > _______________________________________________
> > > > Serusers mailing list
> > > > serusers(a)lists.iptel.org
> > > > http://lists.iptel.org/mailman/listinfo/serusers
> > >
> > > _______________________________________________
> > > Serusers mailing list
> > > serusers(a)lists.iptel.org
> > > http://lists.iptel.org/mailman/listinfo/serusers
> > >
>
>
I'm trying to offer a Iptel service within NZ with servers located in NZ to
save on costly intl bandwidth.
I want to install all modules with MySQL support so downloaded the source to
install from, however I get this error:
root@max:/home/icepick/ser-0.8.14# make modules
"Makefile.sources", line 17: Missing dependency operator
"Makefile.sources", line 19: Need an operator
"Makefile", line 52: Missing dependency operator
Error expanding embedded variable.
So I tried installing from the /freebsd/ folder seeing as it looked like a
port.
root@max:/home/icepick/ser-0.8.14/freebsd# make
Makefile error: there is no COMMENT variable defined
for this port. Please, rectify this.
*** Error code 1
Stop in /usr/home/icepick/ser-0.8.14/freebsd.
So I took a look at the Makefile where it said .if freebsd >5 or whatever
then use the COMMENTt tag, so I uncommented that and now get ...
root@max:/home/icepick/ser-0.8.14/freebsd# make
===> Vulnerability check disabled
=> ser-0.8.12_src.tar.gz is not in
/usr/home/icepick/ser-0.8.14/freebsd/distinfo.
=> Either /usr/home/icepick/ser-0.8.14/freebsd/distinfo is out of date, or
=> ser-0.8.12_src.tar.gz is spelled incorrectly.
*** Error code 1
Stop in /usr/home/icepick/ser-0.8.14/freebsd.
So I tried putting ser-0.8.14_src.tar.gz in every possible place, but still
get the above error:
Next up has anyone got example files to do the following:
1./ Allow users to signup using serweb (which I couldn't get working
properly)
2./ Force users to signup with 64 (NZ) prefix infront of the number (I
managed to edit this regex)
3./ Call eachother freely, so some sort of acl to say 64xxxxx calls can be
made
4./ Linking to SipPhone
5./ Linking to FWD
6./ I'll link to many more, so one example would be good.
If someone would like to help with this or possibly provide configs and
modified source, It'd be much appreciated.
Thanks
Barry