Take a look at the "location" table.
The save("location") writes information about the device registering to OpenSER to this table.
You should see entries for your xlite phones (both of them).
Note the lookup("location") line. This, as you can probably guess, tries to locate the device (specified by the RURI, which in telephone terms, is the called number) in the location table. That's why both xlite phones should have entries in the location table.
The "Not Found" message is telling you that the lookup("location") didn't find call callee.
Regards, Norm
Live Great wrote:
Now, I replaced the openser.cfg file with the one from the openser source. This openser.cfg does not have avp configuration.. After restarted openser and registered xlite, dialed an off-line user number eg. 5678 shown "Call failed: Not Found" on the xlite panel. Openser does not write any error/wraning message to the system's log file. Is this normal? Here is the new configuration of the openser.cfg: listen = udp:127.0.0.1:5060 listen = udp:1x.x.x.x:5060 mpath = "/usr/local/lib/openser/modules" children = 8 debug = 3 fork = yes group = "openser" user = "openser" disable_tcp = no log_facility = LOG_DAEMON #log_facility = LOG_LOCAL7 log_stderror = no tcp_children = 4 mhomed = no server_signature = yes sock_group = "openser" sock_mode = 0600 sock_user = "openser" unix_sock = "/tmp/openser.sock" unix_sock_children = 1 reply_to_via = no sip_warning = no check_via = no dns = no rev_dns = no disable_core_dump = no dns_try_ipv6 = yes dns_use_search_list = yes # ------------------ module loading ----------------------------------
#set module path mpath="/usr/local/lib/openser/modules/"
# Uncomment this if you want to use SQL database #loadmodule "mysql.so"
loadmodule "sl.so" loadmodule "tm.so" loadmodule "rr.so" loadmodule "maxfwd.so" loadmodule "usrloc.so" loadmodule "registrar.so" loadmodule "textops.so" loadmodule "mi_fifo.so" modparam("mi_fifo", "fifo_name", "/tmp/openser_fifo") modparam("usrloc", "db_mode", 0) 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(); # 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 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("openser.org", "subscriber")) { # www_challenge("openser.org", "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; }
What should be a *normal* openser.cfg config file look like?
Thanks SW
----- Original Message ---- From: Norman Brandinger norm@goes.com To: Live Great livegreat007@yahoo.com Cc: users@openser.org Sent: Monday, September 24, 2007 9:12:08 PM Subject: Re: [OpenSER-Users] how to register xlite user for testing with openser
Based on the xlog's in your config, you should be able to see which avp_db_load() is being called with no value. Once you know which variable is blank, you can then try to determine why it's not being populated.
Your config appears to be taken from one of the automatically generated ones from sipwise. You should double check the documentation and make sure that you have followed all of the instructions. If their instructions are not complete, you should let them know.
Hope this helps, Norm
Live Great wrote:
Hi, in openser.cfg file, there is a route[4] section where also involve avp_db_load():
######################################################################## # Request route 'usr-preferences-callee' ######################################################################## route[4] { xlog("L_INFO", "Load callee preferences for uuid '$avp(s:callee_uuid)' - M=$rm RURI=$ru F=$fu T=$tu IP=$si ID=$ci\n"); # load callee avps avp_db_load("$avp(s:callee_uuid)", "*"); if(is_avp_set("$avp(s:cfu)/s")) {
xlog("L_INFO", "Call-forward-unconditional to
'$avp(s:cfu)' found - M=$rm RURI=$ru F=$fu T=$tu IP=$si ID=$ci\n"); route(8); avp_delete("$avp(s:caller_uuid)/g"); avp_copy("$avp(s:callee_uuid)",
"$avp(s:caller_uuid)/d");
avp_pushto("$ru", "$avp(s:cfu)"); route(3); route(14); exit; } if(is_avp_set("$avp(s:ringtimeout)/n")) { xlog("L_INFO", "Setting ring timeout to
$avp(s:ringtimeout) secs - M=$rm RURI=$ru F=$fu T=$tu IP=$si ID=$ci\n"); avp_copy("$avp(s:ringtimeout)", "$avp(s:callee_fr_inv_timer)/d"); }
}
----- Original Message ---- From: Live Great livegreat007@yahoo.com To: Norman Brandinger norm@goes.com Cc: users@openser.org Sent: Monday, September 24, 2007 2:02:19 PM Subject: Re: [OpenSER-Users] how to register xlite user for testing with openser
Hi, here is the configuration specific to avp_db_load in the openser.cfg file:
route[3] { route(1); xlog("L_INFO", "Load caller preferences for uuid '$avp(s:caller_uuid)' - M=$rm RURI=$ru F=$fu T=$tu IP=$si ID=$ci\n"); # load caller avps avp_db_load("$avp(s:caller_uuid)", "*"); avp_copy("$avp(s:cli)", "$avp(s:caller_cli)/d"); if(is_avp_set("$avp(s:clir)/n") && avp_check("$avp(s:clir)", "eq/i:1")) { # mark for anonymization setflag(28); }
}
I never change this configuration.
Thanks SW
----- Original Message ---- From: Norman Brandinger norm@goes.com To: Live Great livegreat007@yahoo.com Sent: Monday, September 24, 2007 12:59:19 PM Subject: Re: [OpenSER-Users] how to register xlite user for testing with openser
Are you issuing an avp_db_load() call with no value ? That might explain the error message. Probably be a good idea to post the config you are using.
Regards, Norm
Live Great wrote:
Hi, thanks very much for the suggestion. I have added the required columns in the acc and missed_calls table. Now when I tried to call an off-line number, it still show one error:
ERROR:avpops:load_avps: no value for first param
The errors related to the acc and missed_calls tables are already
gone.
In xlite panel, the error message says "Call failed: Proxy Authentication Required.". I am not sure what happened if I call a on-line phone number.
Thanks SW
----- Original Message ---- From: Norman Brandinger norm@goes.com To: Live Great livegreat007@yahoo.com Cc: users@openser.org Sent: Sunday, September 23, 2007 10:50:38 PM Subject: Re: [OpenSER-Users] how to register xlite user for testing with openser
Hi,
The subscriber "username" IS the "phone number". The phone number
field
in the subscriber table is only used by SERWEB. I believe the "username" column name is better than "phone" because in SIP, the idea of a telephone number is being blurred.
Please refer to the online doc at: http://openser.org/dokuwiki/doku.php/database:1.2.x#subscriber
There is alot of material at the openser.org web site that can
help you.
The mediaproxy errors are a result of your script calling a mediaproxy function but mediaproxy isn't running. This can be downloaded
thanks to
AG Projects from http://ag-projects.com/MediaProxy.html
The src_leg / dst_leg errors are a result of you trying to save additional (accounting) fields into the "acc" and/or "missed_calls" table. This is generally used for multi-leg call accounting (for example, in a call forwarding situation where the initial callee
changes
to the caller .. of the forwarded call). You will have to
manually add
these column to the acc and missed_calls tables (varchar(64))
should be
fine for most purposes.
Regards, Norm
Live Great wrote:
Now is getting other errors. When I tried to dial a number, eg. 123 - the default Admin
account, I
got the following errors shown in /var/log/messages:
ERROR:avpops:load_avps: no value for first param error: mediaproxy/sendMediaproxyCommand(): can't connect to
MediaProxy
error: mediaproxy/sendMediaproxyCommand(): can't connect to
MediaProxy
submit_query: Unknown column 'src_leg' in 'field list' db_insert: Error while submitting query ERROR:acc:acc_db_request: Error while inserting to database
----- Original Message ---- From: Norman Brandinger norm@goes.com To: Live Great livegreat007@yahoo.com Sent: Saturday, September 22, 2007 11:53:53 PM Subject: Re: [OpenSER-Users] how to register xlite user for testing with openser
I believe the openser_mysql.sh script is being phased out. It has
been
replaced by openserdbctl (thanks to a big effort from Henning
!!!). If
your installation doesn't have /usr/local/sbin/openserdbctl I
strongly
suggest that you upgrade to a version of OpenSER that contains it.
The rest of your settings appear to to be ok.
Regards, Norm
Live Great wrote:
----- Original Message ---- From: Norman Brandinger norm@goes.com To: Live Great livegreat007@yahoo.com Cc: users@openser.org Sent: Saturday, September 22, 2007 9:43:54 PM Subject: Re: [OpenSER-Users] how to register xlite user for
testing
with openser
Is is possible that you turned on database support but forgot to
make
the database tables ? The error message you posted is pretty
explicit:
"Unknown column".... I used openser_mysql.sh create to populate openser database
and its
tables. Here is all its tables: mysql> show tables; +-----------------------+ | Tables_in_openser | +-----------------------+ | acc | | active_sessions | | active_watchers | | address | | admin_privileges | | aliases | | cpl | | dbaliases | | domain | | domainpolicy | | grp | | gw | | gw_grp | | imc_members | | imc_rooms | | lcr | | location | | missed_calls | | pdt | | pending | | phonebook | | presentity | | pua | | re_grp | | server_monitoring | | server_monitoring_agg | | silo | | sip_trace | | speed_dial | | subscriber | | trusted | | uri | | usr_preferences | | usr_preferences_types | | version | | watchers | | xcap_xml | +-----------------------+ 37 rows in set (0.00 sec)
The warnings about missing permissions files can be ignored
(unless you
really do need them), but in your case, it seems that you are
not at
that point yet..
Take a look at openserdbctl as it automates the process of
creating the
database and tables needed by the various openser
modules. openserctlrc
(usually located in /usr/local/etc/openser) contains a number of
startup
settings, some of which are database related.
The standard request you will receive from people trying to
assist you
is to post your config file (or at least the interesting
sections of
it).
The part of the content of openser..cfg is: listen = udp:127.0.0.1:5060 listen = udp:125.255.1.2:5060 mpath = "/usr/local/lib/openser/modules" children = 8 debug = 3 fork = yes group = "openser" user = "openser" disable_tcp = no log_facility = LOG_DAEMON #log_facility = LOG_LOCAL7 log_stderror = no tcp_children = 4 mhomed = no server_signature = yes sock_group = "openser" sock_mode = 0600 sock_user = "openser" unix_sock = "/tmp/openser.sock" unix_sock_children = 1 reply_to_via = no sip_warning = no check_via = no dns = no rev_dns = no disable_core_dump = no dns_try_ipv6 = yes dns_use_search_list = yes
openserctlrc: ## your SIP domain SIP_DOMAIN=ip6.com.au
## database type: MYSQL or PGSQL, by defaulte none is loaded DBENGINE=MYSQL
## database host DBHOST=localhost
## database name DBNAME=openser
## database read/write user DBRWUSER=openser # DBRWUSER=admin
## database read only user DBROUSER=openserro
## password for database read only user DBROPW=openserro
## database super user DBROOTUSER="root"
HAS_SERWEB="yes"
I am not too sure the correct way to define openserctlrc file.. Your comment is much appreciated.
Thanks SW
Norm
Live Great wrote:
Hi,
After changed the port 5077 to 5060 in openser.cfg file,
restarted
openser. When xlite initiate a registartion request, openser system log
file
shown a different message: Sep 22 16:18:55 core /usr/local/sbin/openser[49941]: Default
allow
file (/usr/local/etc/openser/permissions.allow) not found =>
empty
rule set Sep 22 16:18:55 core /usr/local/sbin/openser[49941]: WARNING:
File not
found: /usr/local/etc/openser/permissions.deny Sep 22 16:18:55 core /usr/local/sbin/openser[49941]: Default
deny file
(/usr/local/etc/openser/permissions.deny) not found => empty
rule set
Sep 22 16:19:01 core /usr/local/sbin/openser[49953]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:01 core /usr/local/sbin/openser[49953]: db_query:
Error
while submitting query Sep 22 16:19:01 core /usr/local/sbin/openser[49953]: get_ha1():
Error
while querying database Sep 22 16:19:04 core /usr/local/sbin/openser[49956]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:04 core /usr/local/sbin/openser[49956]: db_query:
Error
while submitting query Sep 22 16:19:04 core /usr/local/sbin/openser[49956]: get_ha1():
Error
while querying database Sep 22 16:19:06 core /usr/local/sbin/openser[49957]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:06 core /usr/local/sbin/openser[49957]: db_query:
Error
while submitting query Sep 22 16:19:06 core /usr/local/sbin/openser[49957]: get_ha1():
Error
while querying database Sep 22 16:19:08 core /usr/local/sbin/openser[49952]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:08 core /usr/local/sbin/openser[49952]: db_query:
Error
while submitting query Sep 22 16:19:08 core /usr/local/sbin/openser[49952]: get_ha1():
Error
while querying database Sep 22 16:19:08 core /usr/local/sbin/openser[49954]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:08 core /usr/local/sbin/openser[49954]: db_query:
Error
while submitting query Sep 22 16:19:08 core /usr/local/sbin/openser[49954]: get_ha1():
Error
while querying database Sep 22 16:19:09 core /usr/local/sbin/openser[49955]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:09 core /usr/local/sbin/openser[49955]: db_query:
Error
while submitting query Sep 22 16:19:09 core /usr/local/sbin/openser[49955]: get_ha1():
Error
while querying database Sep 22 16:19:11 core /usr/local/sbin/openser[49957]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:11 core /usr/local/sbin/openser[49957]: db_query:
Error
while submitting query Sep 22 16:19:11 core /usr/local/sbin/openser[49957]: get_ha1():
Error
while querying database Sep 22 16:19:13 core /usr/local/sbin/openser[49959]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:13 core /usr/local/sbin/openser[49959]: db_query:
Error
while submitting query Sep 22 16:19:13 core /usr/local/sbin/openser[49959]: get_ha1():
Error
while querying database Sep 22 16:19:14 core /usr/local/sbin/openser[49952]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:14 core /usr/local/sbin/openser[49952]: db_query:
Error
while submitting query Sep 22 16:19:14 core /usr/local/sbin/openser[49952]: get_ha1():
Error
while querying database Sep 22 16:19:16 core /usr/local/sbin/openser[49954]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:16 core /usr/local/sbin/openser[49954]: db_query:
Error
while submitting query Sep 22 16:19:16 core /usr/local/sbin/openser[49954]: get_ha1():
Error
while querying database Sep 22 16:19:16 core /usr/local/sbin/openser[49955]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:16 core /usr/local/sbin/openser[49955]: db_query:
Error
while submitting query Sep 22 16:19:16 core /usr/local/sbin/openser[49955]: get_ha1():
Error
while querying database Sep 22 16:19:21 core /usr/local/sbin/openser[49957]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:21 core /usr/local/sbin/openser[49957]: db_query:
Error
while submitting query Sep 22 16:19:21 core /usr/local/sbin/openser[49957]: get_ha1():
Error
while querying database Sep 22 16:19:22 core /usr/local/sbin/openser[49952]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:22 core /usr/local/sbin/openser[49952]: db_query:
Error
while submitting query Sep 22 16:19:22 core /usr/local/sbin/openser[49952]: get_ha1():
Error
while querying database Sep 22 16:19:29 core /usr/local/sbin/openser[49954]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:29 core /usr/local/sbin/openser[49954]: db_query:
Error
while submitting query Sep 22 16:19:29 core /usr/local/sbin/openser[49954]: get_ha1():
Error
while querying database Sep 22 16:19:42 core /usr/local/sbin/openser[49956]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:42 core /usr/local/sbin/openser[49956]: db_query:
Error
while submitting query Sep 22 16:19:42 core /usr/local/sbin/openser[49956]: get_ha1():
Error
while querying database Sep 22 16:19:46 core /usr/local/sbin/openser[49958]:
submit_query:
Unknown column 'uuid' in 'field list' Sep 22 16:19:46 core /usr/local/sbin/openser[49958]: db_query:
Error
while submitting query Sep 22 16:19:46 core /usr/local/sbin/openser[49958]: get_ha1():
Error
while querying database
In Xlite, it said Registration error 500, server internal error. What is possibility wrong in my openser server configuration?
Thanks SW
----- Original Message ---- From: Live Great livegreat007@yahoo.com To: users@openser.org Sent: Saturday, September 22, 2007 2:03:07 PM Subject: [OpenSER-Users] how to register xlite user for
testing with
openser
Hi,
I used the following command to add xlite user, but xlite
failed to
register the user in openser server. # openserctl add 1234 1234 sam@my.domain.com
where 1234 is user id and password.
If this is not the correct way to add user for testing from
xlite to
openser, what are the alternative way I can use?
Thanks SW
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users