hi everyone,
can someone show me how to save cdr's into db ?
i enabled acc in the default config but still no cdr in the acc table
thank you
--
Tayeb Meftah
General director
Voice of the blind ™ broadcast freedom
http://www.vobradio.org/
Phones:
Algeria: +213-660-347746
UK, London: +442032983627
USA, NewYork: +1(347)759-5883
iNum: +883510001288000
we're blind, but not deaf!
Hi all.
Is there any easy method to find if somebody with $si:$sp is registered
(usrloc->received.ip == $si, usrloc->received.port == $sp) ?
reg_fetch_contacts uses uri as search key, but in my case I don't have it.
The only way I know is to write a module that will use
"get_all_ucontacts" function exported by usrloc module in its API.
hello
we're using Kamailio / freeswitch
freeswitch is the Voicemail server now.
please how to forward MWI bethwan kamailio and Freeswitch?
if user 1000 have a vm i want kamailio to fetch it from FS and
advertise it to the subscriber
thank you
--
Tayeb Meftah
General director
Voice of the blind ™ broadcast freedom
http://www.vobradio.org/
Phones:
Algeria: +213-660-347746
UK, London: +442032983627
USA, NewYork: +1(347)759-5883
iNum: +883510001288000
we're blind, but not deaf!
Hi All,
I'm observing a core intermittently at "qm_status (qm=0x786cd000) at
mem/q_malloc.c:763" for kamailio version 3.1.0
looking at the backtrace this is occurring while doing a tcp buffer
overrun. Please have a look and let me know if anyone observed this issue
or how can we debug it.
Please find the backtrace and kamailio version
osbprod-V2R0:~ # /usr/sbin/kamailio -V
version: kamailio 3.1.0 (i386/linux) 21a375
flags: STATS: Off, USE_IPV6, USE_TCP, USE_TLS, TLS_HOOKS, USE_RAW_SOCKS,
DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC,
DBG_QM_MALLOC, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE,
USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST, HAVE_RESOLV_RES
ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16,
MAX_URI_SIZE 1024, BUF_SIZE 65535, PKG_SIZE 15MB
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
id: 21a375
compiled on 12:38:44 Apr 26 2012 with gcc 4.5.0
#0 qm_status (qm=0x786cd000) at mem/q_malloc.c:763
#1 0x0819c0f3 in qm_debug_frag (qm=0x786cd000, f=<value optimized out>) at
mem/q_malloc.c:167
#2 0x0819c352 in qm_free (qm=0x786cd000, p=0x7a6cb6ac, file=0x821cce2
"<core>: tcp_main.c", func=0x822285f "wbufq_run", line=880) at
mem/q_malloc.c:457
#3 0x0815f686 in wbufq_run (tcpconn=0x7a1a7548, ev=4, fd_i=-1) at
tcp_main.c:880
#4 handle_tcpconn_ev (tcpconn=0x7a1a7548, ev=4, fd_i=-1) at tcp_main.c:4141
#5 0x08169bf2 in io_wait_loop_epoll () at io_wait.h:1092
#6 tcp_main_loop () at tcp_main.c:4606
#7 0x080b0404 in main_loop () at main.c:1655
#8 0x080b1f84 in main (argc=9, argv=0xbfb4c9f4) at main.c:2446
(gdb) l
758 LOG_(DEFAULT_FACILITY, memlog, "qm_status: ",
759 "dumping free list stats :\n");
760 for(h=0,i=0;h<QM_HASH_SIZE;h++){
761 unused=0;
762 for (f=qm->free_hash[h].head.u.nxt_free,j=0;
763 f!=&(qm->free_hash[h].head);
f=f->u.nxt_free, i++, j++){
764 if (!FRAG_WAS_USED(f)){
765 unused++;
766 #ifdef DBG_QM_MALLOC
767 LOG_(DEFAULT_FACILITY,
memlog, "qm_status: ",
Hello,
we are testing the new version of Kamailio, 3.3 and are getting
authentication error when trying to register a sip account. We have a db
backend in which we used kamctl to add the user to the db. We are using
the kamailio.cfg script created during the install with changes for our
environment. Is there some other changes required besides the normal. I
can see in the logs where everything looks ok except for when it
compares the calculated values. I have doubled check the subscriber
table and password but to no avail.
11(28548) DEBUG: db_postgres [km_dbase.c:393]: PQclear(1008b8560) result set
11(28548) DEBUG: auth_db [authorize.c:124]: HA1 string calculated:
e13d569284e76a33ca63e4d6203f844a
11(28548) DEBUG: auth [api.c:211]: check_response: Our result =
'18210b5da2b3d27e6ba50977072599ea'
11(28548) DEBUG: auth [api.c:221]: check_response: Authorization failed
Thanks
Nathaniel
Hello All,
I am trying to configure Kamailio v 3.3 to serve as a presence
server with resource lists and integrated XCAP.
I followed the respective module documentation and am trying to test
with the Boghe IMS client. I just can't get it to work!
I think I still don't have everything I need in the config file to
handle the xcap documents. Attached is the debug log from the server.
If someone has had luck setting up the presence server with integrated
xcap and resource lists please take a few minutes to take a look at
the log file and see if you can help me out. I am also posting the
xcap portion of the config file:
#!ifdef WITH_XCAPSRV
##!define WITH_XHTTPAUTH
event_route[xhttp:request] {
xdbg("===== xhttp: request [$rv] $rm => $hu\n");
#!ifdef WITH_XHTTPAUTH
if (!www_authorize("10.50.251.12", "subscriber"))
{
www_challenge("10.50.251.12", "0");
exit;
}
#!endif
if($hu=~"^/xcap-root/")
{
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>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: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);
#}
xcaps_put("$var(uri)", "$var(doc_uri)", "$rb");
if($xcapuri(u=>auid)=~"pres-rules") {
pres_update_watchers("$var(uri)", "presence");
pres_refresh_watchers("$var(uri)", "presence", 1);
} else if ($xcapuri(u=>auid)=~"resource-lists"
|| $xcapuri(u=>auid)=~"rls-services") {
rls_update_subs("$var(uri)",
"presence");
}
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;
}
--
Sangeeta Shah
Hi,
I have found recently that in order to detect retransmits I have to
create a transaction explicitly when the request comes in:
force_rport();
if(!t_check_trans())
t_newtran();
sl_send_reply("100", "Trying");
xlog("L_INFO", "New request - $ci\n");
it appears like there are carriers or UAs that do not honor the T1
retransmission interval retransmit the INVITE sooner than proxy creates
a transaction in t_relay(). And since we are counting concurrent calls,
we count the same call multiple times, which is not good.
But with this patch we've faced another sporadic problem - if the
transaction is created beforehand the accounting record is lost.. we use
acc_db mode and set flag to account the transaction. And there are no
errors in kamailio log but no insert into acc in mysql binlog either. I
wasn't successful reproducing it in the lab systems with identical setup.
Is anybody here perhaps aware of some limitation in acc module or
callbacks which makes a transaction created beforehand not accountable?
On a related note, it could make sense to create a transaction
implicitly if dlg_manage() is called to avoid counting same call many
times, I just don't know yet how common this issue is in real life.
Hello,
I'm observing that Via Header domain name of type SRV is resolving as DNS
A.
I looked at the code and it does support only A. It is basically setting to
default SIP port check_via_address which is causing DNS A query.
Is there any specific reason to do so?
I changed the code to support SRV as below and working fine.
static int check_via_address(struct ip_addr* ip, str *name,
unsigned short port, *short proto*, int resolver)
{
:
:
//if (port==0) port=SIP_PORT;
if (resolver&DO_DNS){
DBG("check_via_address: doing dns lookup\n");
/* try all names ips */
he=sip_resolvehost(name, &port, *(char *) &proto*); /* don't use naptr */
if (he && ip->af==he->h_addrtype){
for(i=0;he && he->h_addr_list[i];i++){
if ( memcmp(&he->h_addr_list[i], ip->u.addr, ip->len)==0)
return 0;
}
}
}
:
:
:
}
/* check if IP address in Via != source IP address of signaling */
int received_test( struct sip_msg *msg )
{
int rcvd;
rcvd=msg->via1->received
|| check_via_address(&msg->rcv.src_ip, &msg->via1->host,
msg->via1->port,* msg->via1->proto*, received_dns);
return rcvd;
}
Thanks
Jijo
Hi,
What is the sip domain in kamctlrc file? Can I change it whatever I want? Is it must be a valid sip domain? Can I give a name like "mysipdomain.com", but there is no server with this name?