The documentation for outbound contains sample configs for edge proxy and
registrar configs:
http://kamailio.org/docs/modules/4.2.x/modules/outbound.html
I tried to implement these but I don't see anything happen concerning the
outbound module. What is supposed to happen to make it work?
The main problem I have is that calls for the endpoints coming in from the
registrar fail to get past the loose_routing check and fail with a 500 in the
default case of the switch. the R-URI contains username/externalip/port from
the endpoint, there is 1 route header (containing the edgeproxy ip) but no
username/flow-token. So per
http://kamailio.org/docs/modules/4.2.x/modules/rr.html#loose-route-id
loose_routing returns false:
"If a Route: header is found, the function returns 1 and behaves as described
in section 16.12 of RFC 3261. There is only one exception: If the request is
out-of-dialog (no to-tag) and there is only one Route: header indicating the
local proxy, then the Route: header is removed and the function returns
FALSE."
How should the Path header look when registering? According to
http://kamailio.org/docs/modules/4.2.x/modules/path.html#idp3043008
there should be a flowtoken inserted, this is not the case. Just a plain
Path: <sip:ip;lr> is added. So when is outbound required?
Can anybody confirm that the examples work?
Hello all,
I'm trying to build db_mongodb module but i'm facing some problems, please
take a look at logs messages below:
make
CC (gcc) [M db_mongodb.so] mongodb_connection.o
In file included from mongodb_connection.c:24:
*mongodb_connection.h:26:20: warning: mongoc.h: No such file or directory*
*mongodb_connection.h:27:18: warning: bson.h: No such file or directory*
In file included from mongodb_connection.c:24:
mongodb_connection.h:37: error: expected specifier-qualifier-list before
‘mongoc_client_t’
mongodb_connection.c: In function ‘db_mongodb_new_connection’:
mongodb_connection.c:48: warning: implicit declaration of function
‘mongoc_init’
mongodb_connection.c:49: error: ‘km_mongodb_con_t’ has no member named ‘con’
mongodb_connection.c:49: warning: implicit declaration of function
‘mongoc_client_new’
mongodb_connection.c:50: error: ‘km_mongodb_con_t’ has no member named ‘con’
mongodb_connection.c: In function ‘db_mongodb_free_connection’:
mongodb_connection.c:78: error: ‘km_mongodb_con_t’ has no member named ‘con’
mongodb_connection.c:79: warning: implicit declaration of function
‘mongoc_client_destroy’
mongodb_connection.c:79: error: ‘km_mongodb_con_t’ has no member named ‘con’
make: *** [mongodb_connection.o] Error 1
[root@ccp1 db_mongodb]# locate bson.h
/usr/local/include/libbson-1.0/bson.h
/usr/local/src/mongo-c-driver/src/libbson/src/bson/bson.h
/usr/local/src/mongo-c-driver-1.1.10/src/libbson/doc/html/streaming-bson.html
/usr/local/src/mongo-c-driver-1.1.10/src/libbson/src/bson/bson.h
[root@ccp1 db_mongodb]# locate mongoc.h
/usr/local/include/libmongoc-1.0/mongoc.h
/usr/local/src/mongo-c-driver/src/mongoc/mongoc.h
/usr/local/src/mongo-c-driver/tests/test-libmongoc.h
/usr/local/src/mongo-c-driver-1.1.10/src/mongoc/mongoc.h
/usr/local/src/mongo-c-driver-1.1.10/tests/test-libmongoc.h
I have installed mongo-c-driver successfully and the header files(bson.h,
mongoc.h) are located at /usr/local/src/mongo-c-driver/src/mongoc.
Can someone help me?
--
Cumprimentos
José Seabra
[image: ITCENTER Store] <http://store.itcenter.com.pt/>[image: ITCENTER
Helpdesk] <http://support.itcenter.com.pt/otrs/customer.pl>[image: ITCENTER
Facebook] <https://www.facebook.com/itcenterpt>[image: ITCENTER Linkedin]
<https://www.linkedin.com/company/itcenter>[image: ITCENTER Twitter]
<https://twitter.com/ITCenter_PT>
Hi,
I have a situation like this:
I have kamailio with 3 NIC's. I'm sending INVITE to first provider over
NIC1. Before sending INVITE I use rtpengine_manage to rewrite sdp body with
IP that is on NIC1:
rtpengine_manage ("replace-origin replace-session-connection
direction=intvlan direction=prov1 ICE=remove");
If first provider fails i want to send INVITE for the same call to second
provider. But if i use like this:
rtpengine_manage ("replace-origin replace-session-connection
direction=intvlan direction=prov2 ICE=remove");
or (because ip of prov1 is allready set):
rtpengine_manage ("replace-origin replace-session-connection
direction=prov1 direction=prov2 ICE=remove");
rtpengine ignores my changes as said in documentation: "The direction must
only be specified in for initial SDP offer; answers or subsequent offers
can omit this option."
and if I try to set ip like this:
rtpengine_manage ("replace-origin replace-session-connection
media-address=X.X.X.X ICE=remove");
SDP body is doubled: it leaves old values and adds the new one.
What i'm doing wrong or how can I rewrite SDP for second time? Thanks in
advance for answer!
Hello,
Can you please help me to well understand this statement : Kamailio is a
multi-process application not multi-threading
Does this mean that if we have a machine with one processor of 8 cores ,
kamailio cannot process more than 1 call at the same time ?
Any help would be appreciated.
Regards,
Ali
Hello all,
Always fun integrating with proprietary pbx's... is there a way that is
"generally accepted" as handling hold invites from devices such as Mitel
or Toshiba?
We're not proxying the media, so these devices are trying to send an
Invite to the endpoint when calls are placed on hold.
Fred Posner
The Palner Group, Inc.
http://www.palner.com (web)
+1-503-914-0999 (direct)
Hi All,
I have CNXCC setup, it is kind of working but when I run kamcmd
cnxcc.check_client the call information is still there even when the call
is disconnected. Is this right?
I basically want to make sure a customer can only have x number of
simultaneous calls.
Thanks
Keith
Hi,
we're experiencing crashes in the siptrace.so module with Kamailio
4.3.1. I looked at the core dump with gdb but it complained about
missing debugging symbols so all I could see was that it called
do_action() before branching into an unknown function in the siptrace
module.
I then installed the kamailio-dbg package to get the debugging symbols.
This had the weird effect that get the error "Cannot access memory at
..." in GDB and no longer see *any* function names (previously only the
names in the siptrace module were missing.
Any idea whats going on?
# gdb /usr/sbin/kamailio core
GNU gdb (GDB) 7.4.1-debian
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/sbin/kamailio...Reading symbols from
/usr/lib/debug/.build-id/e7/8dc57031d294f320b360d8f2f875a005db757e.debug...done.
done.
[New LWP 31426]
Cannot access memory at address 0x3840f881f9c13908
Cannot access memory at address 0x3840f881f9c13900
(gdb) list
1771 main.c: No such file or directory.
(gdb) info threads
Id Target Id Frame
* 1 LWP 31426 0x00007fbc89403f0f in ?? ()
(gdb) bt full
#0 0x00007fbc89403f0f in ?? ()
No symbol table info available.
#1 0x0800011000d46460 in ?? ()
No symbol table info available.
#2 0xffffffff00000001 in ?? ()
No symbol table info available.
#3 0x0000000000d63230 in ?? ()
No symbol table info available.
#4 0x00000000d59d000a in ?? ()
No symbol table info available.
#5 0x0000000000000000 in ?? ()
No symbol table info available.
# dpkg -l kamailio\*
Desired=Unknown/Install/Remove/Purge/Hold
|
Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture
Description
+++-==============================-====================-====================-=================================================================
ii kamailio 4.3.1+wheezy amd64
very fast and configurable SIP proxy
un kamailio-berkeley-modules <none>
(no description available)
un kamailio-carrierroute-modules <none>
(no description available)
un kamailio-cpl-modules <none>
(no description available)
ii kamailio-dbg:amd64 4.3.1+wheezy amd64
very fast and configurable SIP proxy [debug symbols]
un kamailio-ldap-modules <none>
(no description available)
un kamailio-lua-modules <none>
(no description available)
un kamailio-mysql-modules <none>
(no description available)
un kamailio-perl-modules <none>
(no description available)
ii kamailio-postgres-modules:amd6 4.3.1+wheezy amd64
PostgreSQL database connectivity module for Kamailio
un kamailio-presence-modules <none>
(no description available)
un kamailio-python-modules <none>
(no description available)
un kamailio-radius-modules <none>
(no description available)
un kamailio-snmpstats-modules <none>
(no description available)
un kamailio-tls-modules <none>
(no description available)
un kamailio-unixodbc-modules <none>
(no description available)
un kamailio-xml-modules <none>
(no description available)
un kamailio-xmpp-modules <none>
(no description available)
Regards,
-Sven
Hey guys,
I've been pulling out my hair for a few days trying to get SCTP with Kamailio working in CentOS 7... with no luck at all.
When attempting to start Kamailio via the 'kamctl start' command I get the following error:
INFO: Starting Kamailio :
ERROR: PID file /var/run/kamailio.pid does not exist -- Kamailio start failed
When attempting to start Kamailio via the 'systemctl start kamailio' command, I get the following:
Job for kamailio.service failed. See 'systemctl status kamailio.service' and 'journalctl -xn' for details.
When checking the 'systemctl status kamailio -l' command, I get the following:
kamailio.service - SYSV: Kamailio is a fast, reliable and flexible SIP Server.
Loaded: loaded (/etc/rc.d/init.d/kamailio)
Active: failed (Result: exit-code) since Thu 2015-08-13 00:42:51 AEST; 14s ago
Process: 19229 ExecStart=/etc/rc.d/init.d/kamailio start (code=exited, status=1/FAILURE)
Aug 13 00:42:51 Elastix5.workgroup /usr/sbin/kamailio[19242]: INFO: rr [rr_mod.c:174]: mod_init(): outbound module not available
Aug 13 00:42:51 Elastix5.workgroup /usr/sbin/kamailio[19242]: INFO: usrloc [hslot.c:51]: ul_init_locks(): locks array size 1024
Aug 13 00:42:51 Elastix5.workgroup /usr/sbin/kamailio[19242]: ERROR: ctl [init_socks.c:115]: init_unix_sock(): ERROR: init_unix_sock: bind: No such file or directory [2]
Aug 13 00:42:51 Elastix5.workgroup /usr/sbin/kamailio[19242]: ERROR: ctl [ctl.c:273]: mod_init(): ERROR: ctl: mod_init: init ctrl. sockets failed
Aug 13 00:42:51 Elastix5.workgroup /usr/sbin/kamailio[19242]: ERROR: <core> [sr_module.c:945]: init_mod(): Error while initializing module ctl (/usr/lib64/kamailio/modules/ctl.so)
Aug 13 00:42:51 Elastix5.workgroup /usr/sbin/kamailio[19242]: INFO: <core> [sctp_core.c:53]: sctp_core_destroy(): SCTP API not initialized
Aug 13 00:42:51 Elastix5.workgroup kamailio[19229]: Starting kamailio:
Aug 13 00:42:51 Elastix5.workgroup systemd[1]: kamailio.service: control process exited, code=exited status=1
Aug 13 00:42:51 Elastix5.workgroup systemd[1]: Failed to start SYSV: Kamailio is a fast, reliable and flexible SIP Server..
Aug 13 00:42:51 Elastix5.workgroup systemd[1]: Unit kamailio.service entered failed state.
So I started to think there was an issue with the SCTP config or whether SCTP was enabled in CentOS. However, everything looks fine:
# cat /proc/modules
sctp 217455 2 - Live 0xffffffffa03ed000
# /sbin/lsmod | grep sctp
sctp 217455 2
libcrc32c 12644 2 xfs,sctp
# more /proc/sys/net/sctp/addip_enable
1
# checksctp
SCTP supported
SCTP modules installed properly:
Package lksctp-tools-devel-1.0.13-3.el7.x86_64 already installed and latest version
Package lksctp-tools-doc-1.0.13-3.el7.x86_64 already installed and latest version
Package lksctp-tools-1.0.13-3.el7.x86_64 already installed and latest version
Running the ' sctp_test' command between two servers, SCTP is working fine... I can capture SCTP packets between the servers.
I've left the Kamailio.cfg file as is... with the only modification being made to enable the SCTP module to start:
enable_sctp = 1
Checking 'kamailio -v' USE_SCTP is enabled:
# kamailio -v
version: kamailio 4.3.1 (x86_64/linux) f38e67
flags: STATS: Off, USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC, F_MALLOC, DBG_F_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, DEFAULT PKG_SIZE 8MB
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
id: f38e67
compiled on 18:17:56 Jul 20 2015 with gcc 4.8.2
I've tried installing Kamailio with the precompiled rpms for CentOS 7, and I also followed some guides on installing in via GIT & compiling it myself... however the issue still remains.
Any help would be greatly appreciated as I've completely run out of ideas, and there isn't much info on the web about Kamailio & SCTP.
Thanks,
Rob