Hi Daniel, thank you for quick response, kamailio doesn't start when I add
the event_route for xcap_server, this are the errors:
0(5319) DEBUG: <core> [route.c:928]: fixing uac_req_send()
0(5319) DEBUG: <core> [route.c:928]: fixing xdbg()
0(5319) DEBUG: <core> [rvalue.c:2777]: RV fixing type 4
0(5319) DEBUG: <core> [route.c:928]: fixing isbflagset()
0(5319) DEBUG: <core> [route.c:928]: fixing fix_nated_contact()
0(5319) DEBUG: <core> [rvalue.c:2777]: RV fixing type 4
0(5319) DEBUG: <core> [route.c:928]: fixing fix_nated_sdp()
0(5319) DEBUG: <core> [route.c:928]: fixing append_hf()
0(5319) DEBUG: <core> [rvalue.c:2777]: RV fixing type 4
0(5319) DEBUG: <core> [route.c:928]: fixing t_is_canceled()
0(5319) DEBUG: <core> [route.c:928]: fixing xdbg()
0(5319) DEBUG: <core> [route.c:928]: fixing append_hf()
0(5319) DEBUG: <core> [rvalue.c:2777]: RV fixing type 4
0(5319) DEBUG: <core> [route.c:928]: fixing isbflagset()
0(5319) DEBUG: <core> [rvalue.c:2777]: RV fixing type 7
0(5319) DEBUG: <core> [rvalue.c:2777]: RV fixing type 4
0(5319) DEBUG: <core> [route.c:928]: fixing fix_nated_sdp()
0(5319) DEBUG: <core> [route.c:928]: fixing append_hf()
0(5319) DEBUG: <core> [route.c:928]: fixing xdbg()
0(5319) DEBUG: <core> [rvalue.c:2777]: RV fixing type 4
0(5319) DEBUG: <core> [route.c:928]: fixing www_authorize()
0(5319) DEBUG: <core> [db.c:285]: connection 0xa6d830 not found in pool
0(5319) DEBUG: db_mysql [km_my_con.c:94]: opening connection:
mysql://xxxx:xxxx@localhost/asterisk
0(5319) DEBUG: db_mysql [km_my_con.c:121]: connection type is Localhost
via UNIX socket
0(5319) DEBUG: db_mysql [km_my_con.c:122]: protocol version is 10
0(5319) DEBUG: db_mysql [km_my_con.c:123]: server version is
5.1.41-3ubuntu12.10-log
0(5319) DEBUG: <core> [db_res.c:118]: allocate 48 bytes for result set at
0xa6da40
0(5319) DEBUG: db_mysql [km_res.c:68]: 1 columns returned from the query
0(5319) DEBUG: <core> [db_res.c:155]: allocate 8 bytes for result names at
0xa04c28
0(5319) DEBUG: <core> [db_res.c:165]: allocate 4 bytes for result types at
0xa017a8
0(5319) DEBUG: db_mysql [km_res.c:85]: allocate 16 bytes for RES_NAMES[0]
at 0xa6dad0
0(5319) DEBUG: db_mysql [km_res.c:92]:
RES_NAMES(0xa6dad0)[0]=[table_version]
0(5319) DEBUG: db_mysql [km_res.c:100]: use DB1_INT result type
0(5319) DEBUG: db_mysql [km_res.c:169]: no rows returned from the query
0(5319) DEBUG: <core> [db.c:372]: no row for table subscriber found
0(5319) ERROR: <core> [db.c:408]: invalid version 0 for table subscriber
found, expected 6 (check table structure and table "version")
0(5319) ERROR: auth_db [authdb_mod.c:252]: error during table version
check.
0(5319) DEBUG: <core> [db_pool.c:102]: removing connection from the pool
0(5319) ERROR: <core> [route.c:1161]: fixing failed (code=-1) at
cfg:/usr/local/etc/kamailio/kamailio.cfg:1286
0(5319) ERROR: <core> [route.c:1161]: fixing failed (code=-1) at
cfg:/usr/local/etc/kamailio/kamailio.cfg:1292
ERROR: error -1 while trying to fix configuration
0(5319) DEBUG: presence_xml [presence_xml.c:329]: start
0(5319) DEBUG: tm [t_funcs.c:122]: DEBUG: tm_shutdown : start
0(5319) DEBUG: tm [t_funcs.c:125]: DEBUG: tm_shutdown : emptying hash table
0(5319) DEBUG: tm [t_funcs.c:127]: DEBUG: tm_shutdown : removing semaphores
0(5319) DEBUG: tm [t_funcs.c:129]: DEBUG: tm_shutdown : destroying tmcb
lists
0(5319) DEBUG: tm [t_funcs.c:132]: DEBUG: tm_shutdown : done
0(5319) DEBUG: tls [tls_init.c:657]: tls module final tls destroy
0(5319) DEBUG: <core> [mem/shm_mem.c:236]: shm_mem_destroy
0(5319) DEBUG: <core> [mem/shm_mem.c:239]: destroying the shared memory
lock
And this is the event_route cfg I have copied from the guide, I will mark
lines 1286 and 1292
#!ifdef WITH_XCAPSRV
#!define WITH_XHTTPAUTH
event_route[xhttp:request] {
xdbg("===== xhttp: request [$rv] $rm => $hu\n");
#!ifdef WITH_XHTTPAUTH
if (!www_authorize("xcap", "subscriber")) 1286
{
www_challenge("xcap", "0");
exit;
}
#!endif
if($hu=~"^/xcap-root/") 1292
{
set_reply_close();
set_reply_no_connect();
# xcap ops
$xcapuri(u=>data) = $hu;
if($xcapuri(u=>xuid)=~"^sip:.+@.+")
$var(uri) = $xcapuri(u=>xuid);
else if($xcapuri(u=>xuid)=~".+@.+")
$var(uri) = "sip:" + $xcapuri(u=>xuid);
else
$var(uri) = "sip:"+ $xcapuri(u=>xuid) + "@"
+ $Ri;
xlog("===== xhttp: $xcapuri(u=>auid) :
$xcapuri(u=>xuid)\n");
if($xcapuri(u=>auid)=="xcap-caps")
{
$var(xbody) =
"<?xml version='1.0' encoding='UTF-8'?>
<xcap-caps xmlns='urn:ietf:params:xml:ns:xcap-caps'>
<auids>
<auid>rls-services</auid>
<auid>pidf-manipulation</auid>
<auid>xcap-caps</auid>
<auid>resource-lists</auid>
<auid>pres-rules</auid>
<auid>org.openmobilealliance.pres-rules</auid>
</auids>
<extensions>
</extensions>
<namespaces>
<namespace>urn:ietf:params:xml:ns:rls-services</namespace>
<namespace>urn:ietf:params:xml:ns:pidf</namespace>
<namespace>urn:ietf:params:xml:ns:xcap-caps</namespace>
<namespace>urn:ietf:params:xml:ns:resource-lists</namespace>
<namespace>urn:ietf:params:xml:ns:pres-rules</namespace>
</namespaces>
</xcap-caps>";
xhttp_reply("200", "ok",
"application/xcap-caps+xml",
"$var(xbody)");
exit;
}
#!ifdef WITH_XHTTPAUTH
# be sure auth user access only its documents
if ($au!=$(var(uri){uri.user})) {
xhttp_reply("403", "Forbidden", "text/html",
"<html><body>$si:$sp</body></html>");
exit;
}
#!endif
switch($rm) {
case "PUT":
xcaps_put("$var(uri)", "$hu",
"$rb");
if($xcapuri(u=>auid)=~"pres-rules")
{
xlog("===== xhttp put: refreshing
watchers for $var(uri)\n");
pres_update_watchers("$var(uri)",
"presence");
pres_refresh_watchers("$var(uri)",
"presence", 1);
}
exit;
break;
case "GET":
xlog("===== xhttp: get $var(uri) => $hu\n");
xcaps_get("$var(uri)", "$hu");
exit;
break;
case "DELETE":
xcaps_del("$var(uri)", "$hu");
if($xcapuri(u=>auid)=~"pres-rules")
{
xlog("===== xhttp del: refreshing
watchers for $var(uri)\n");
pres_update_watchers("$var(uri)",
"presence");
pres_refresh_watchers("$var(uri)",
"presence", 1);
}
exit;
break;
}
}
# http ops
xhttp_reply("200", "ok", "text/html",
"<html><body>OK:
$si:$sp</body></html>");
exit;
}
#!endif
Thanks in advance,
Lucas
On Thu, Nov 3, 2011 at 12:56 PM, Daniel-Constantin Mierla <miconda(a)gmail.com
wrote:
Hello,
xcap_server has nothing to do with subscriber table. Can you make sure you
have all modules compiled at the same time, just in case you updated system
libraries.
You can run kamailio with debug=3 to see exactly where it fails and get
more log messages.
Cheers,
Daniel
On 11/3/11 4:26 PM, Lucas Alvarez wrote:
Hi, I've enabled xcap server in kamailio 3.1.3 and I'm stuck with this
error:
0(5073) ERROR: <core> [db.c:408]: invalid version 0 for table
subscriber found, expected 6 (check table structure and table "version")
I've already checked the version table and the table_name = 'subscriber'
has table_version = 6.
Any help will be appreciated.
Regards.
Lucas
_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing
listsr-users@lists.sip-router.orghttp://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
--
Daniel-Constantin Mierla --
http://www.asipto.com
Kamailio Advanced Training, Dec 5-8, Berlin:
http://asipto.com/u/kathttp://linkedin.com/in/miconda --
http://twitter.com/miconda