I don't see anything relevant in the docs, nor greping the src, but in
case I missed something:
Does the core, or do any of the modules support originating registration
requests to other proxies a/o endpoints?
I'd like to move registration responsibility to kama, and have it add a
header on incoming INVITEs and the like from anything with which it has
REGISTERed indicating which outbound registration is relevant to said
request.
If I'm right that there isn't support for that, do any of the app modules
expose enough sip capability easily to write such?
-JimC
--
James Cloos <cloos(a)jhcloos.com> OpenPGP: 0x997A9F17ED7DAEA6
Hello all
I'm looking for the person who configures my kamailio + siremis
I'll pay for the full configuration.
Kamailio is to work together with a asterisk
if anyone willing please contact me mail tomasz(a)sidlo.pl
Hi,
I tried to use Kamailio / RTPProxy in mhomed setup without any luck.
I had no problem to configure it with only 1 interface, without mhomed, everything worked perfectly.
The RTP streams where not established correctly even if I managed to have to proper IP in the SIP INVITE (C & O).
Versions:
version: kamailio 4.1.4 (x86_64/linux)
flags: STATS: Off, 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, DEFAULT PKG_SIZE 4MB
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
id: unknown
compiled on 04:23:19 Jun 13 2014 with gcc 4.7.2
RTPProxy -v:
Basic version: 20040107
Extension 20050322: Support for multiple RTP streams and MOH
Extension 20060704: Support for extra parameter in the V command
Extension 20071116: Support for RTP re-packetization
Extension 20071218: Support for forking (copying) RTP stream
Extension 20080403: Support for RTP statistics querying
Extension 20081102: Support for setting codecs in the update/lookup command
Extension 20081224: Support for session timeout notifications
Here is my RTPProxy config (/etc/default/rtpproxy) :
CONTROL_SOCK=udp:127.0.0.1:7722
EXTRA_OPTS=“-l PU.BL.IC.IP/PRI.VA.TE.IP -m 11000 -M 12000 -d DBUG:LOG_LOCAL3
Here are snippets of my kamailio.cfg:
port=5060
mhomed=1
# RTPProxy control
route[NATMANAGE] {
#!ifdef WITH_NAT
if (is_request()) {
if(has_totag()) {
if(check_route_param("nat=yes")) {
setbflag(FLB_NATB);
}
}
}
if (!(isflagset(FLT_NATS) || isbflagset(FLB_NATB)))
return;
xlog("NATMANAGE M=$rm OU=$ou RURI=$ru RD=$rd F=$fu T=$tu NH=$nh(d) IP=$si ID=$ci\n");
if(dst_ip == PUBLIC_IP) {
if(is_ipv4($nh(d)) && is_in_subnet($nh(d), PRIVATE_NET)) {
xlog("NATMANAGE coei\n");
rtpproxy_manage("coei", PRIVATE_IP);
} else {
xlog("NATMANAGE coee\n");
rtpproxy_manage("coee", PUBLIC_IP);
}
} else {
if(is_ipv4($nh(d)) && is_in_subnet($nh(d), PRIVATE_NET)) {
xlog("NATMANAGE coii\n");
rtpproxy_manage("coii", PRIVATE_IP);
} else {
xlog("NATMANAGE coie\n");
rtpproxy_manage("coie", PUBLIC_IP);
}
}
if (is_request()) {
if (!has_totag()) {
if(t_is_branch_route()) {
add_rr_param(";nat=yes");
}
}
}
if (is_reply()) {
if(isbflagset(FLB_NATB)) {
if(is_first_hop())
set_contact_alias();
}
}
#!endif
return;
}
Calls were correctly going to the desired rtpproxy_manage options.
Now I’m not quite sure I’m using the correct ones.
I had to specify the PUBLIC_IP or PRIVATE_IP in the rtpproxy_manage calls in order to have the correct IP address in the C and O headers of the SIP INVITE. Without that, the public IP would be sent as C and O params to phones on the private subnet.
In fact not a single call direction would give correct RTP streams.
Any idea where I missed the turn?
Cheers
Hi,
I was wondering what precisely these stats mean:
core:drop_replies = 0
core:drop_requests = 3
Assuming one does not explicitly drop() requests anywhere in script,
would a continuous monotonic increase in drop_requests be considered a
problem? Or are there some normal circumstances and ordinary behaviours
(i.e. auth challenges) that would register a request drop?
Thanks,
-- Alex
--
Alex Balashov - Principal
Evariste Systems LLC
Tel: +1-678-954-0670
Web: http://www.evaristesys.com/, http://www.alexbalashov.com/
Please be kind to the English language:
http://www.entrepreneur.com/article/232906
hello all,
I would install kamailio with ASTERISK in realtime on CENTOS 6.5 x64.
I followed the tutorial aspito: http://kb.asipto.com/asterisk:realtime:kamailio-4.0.x-asterisk-11.3.0-astdb
but its not work.
I have a problem with kamailio.cfg
Its not possible to start kamailio When I loadmodule "uac.so"
I want to make this configuration:
SIP phone1 -> Register Kamailio -> ASTERISK Register
SIP phone 2 -> Register Kamailio -> ASTERISK Register
kamailio: 192.168.0.100 Port: 5060
ASTERISK: 192.168.0.100 Port 5080
Hello,
I'm using Kamailio version 4.1.4+precise (amd64).
I have followed "Kamailio 4.0.x and Asterisk 11.3.0 Realtime Integration
using Asterisk Database"
(http://kb.asipto.com/asterisk:realtime:kamailio-4.0.x-asterisk-11.3.0-astdb).
One main difference in my setup compared to that one is that I continued
use of Kamailio's database.
The problem is as follows:
I decided to put Kamailio and through it Asterisk reachable from
internet. I have tried to configure Asterisk so that only calls of
registered users would be possible, and they could only call to other
registered users or conference rooms and echo test number.
Then I took the following steps:
I ensured that there was no online users with kamctl online. Then I
launched MicroSIP (www.microsip.org), but I did not defined account, I
simply set the protocol to tls and media encryption to mandatory,
because I'm using these.
I called to extension with xxx(a)my.public.ip.address (where xxx is
extension) getting "unauthorized". And that was what I wanted.
But if there is online users, calls go through, and incoming call is
coming from Asterisk (in syslog I can find out that src_user=asterisk).
Kamailio and Asterisk are listening the same IP address, but different
port. I have refused connections to the Asterisk's port with iptables.
I have defined my public IP address as domain in sip.conf. There is also
other domain defined which corresponds to users' domain I am using in
Kamailio's database.
In kamailio.cfg there is if statement which prevents Kamailio not to be
open relay:
if (from_uri!=myself && uri!=myself)
...
If I change this for example:
if (from_uri!=myself || uri!=myself)
I get what I want this time: no calls from outside, but I somewhat think
that this is not a final solution.
I have not found from log files such information which would have helped
me. I have not yet investigated this problem so much that I could tell
the logic behind the selection of online user's identity which is used.
However, if I make a call to conference room I notice that Asterisk is
thinking that one of online users has joined the conference.
If I can recall correctly, I started with Kamailio version 3.2, and
integrated it with Asterisk 11 (currently 11.10.2). Is there something
which has changed in Kamailio, but what I have not changed in my setup
which could explain this.
Best,
Teijo
Hi There,
i implemented a mapping via htable. For debugging purpose I use kamcmd
to see if the values are correctly filled. Doing so I discovered that
there is a problem getting the values of the keys, where the name is a
integer value. So it's the following behaviour:
#####################################################################
root@kamailio-stage:~# kamcmd htable.dump maptodest
{
entry: 55
size: 1
slot: {
item: {
name: 1
value: 0000000000000000001
}
}
}
{
entry: 504
size: 1
slot: {
item: {
name: blub
value: 0000000000000000001
}
}
}
{
entry: 686
size: 1
slot: {
item: {
name: 001
value: 0000000000000000001
}
}
}
root@kamailio-stage:~# kamcmd htable.get maptodest blub
{
item: {
name: blub
value: 0000000000000000001
}
}
root@kamailio-stage:~# kamcmd htable.get maptodest 001
error: 500 - Not enough parameters (htable name and key name)
#####################################################################
Is there a reasonable explanation why it works with blub, but not with 001?
Why is he complaining about the number of parameters?
Does anyone know a workarround?
Thanks for any advise!!
greeetz Moritz
--
Moritz Graf, M.Sc.
Betrieb NGN-Plattform
G-FIT GmbH & Co. KG
Greflingerstr. 26, 93055 Regensburg
Hi list,
I have a problem with pkg.stats for tcp.main process on kamailio "4.1.2
73ea61-dirty".
kamailio has 64M of private memory for each process (-M 64).
pkg.stats for tcp.main process shows that is uses 75M and still has 62M
free:
{
entry: 36
pid: 10032
rank: -4
used: 73109720
free: 65891192
real_used: 79146048
}
root@webRTC:~# ps -p 10032 -o pid,tid,state,pcpu,pmem,rss,size,sz,vsz,args
PID TID S %CPU RSS SIZE SZ VSZ COMMAND
10032 10032 S 0 26420 67508 76821 307284
/.../kamailio -f /.../kamailio.cfg -P /.../kamailio.pid -m 128 -M 64 -u
kamailio -g kamailio
This server handles 1000+ tcp/tls connections and works just fine for
the last two months. That's why i think this is not a memory leak and
just a pkg.stats problem.
Does anybody else saw this or maybe somebody is already working to fix it ?
Hi,
This is most likely a stupid mistake on my route config, but msilo
correctly stores messages for offline users, but when they come back
online, the message never arrives.
Looking through the debug logs indeed there is an error, with status 408,
which suggests kamaiio can't find a route to the user that just logged.
Before I spend hours looking through all the routing blocks, perhaps
someone more exprienced in kamailio can see the problem right away and
offer a solution?
Thanks
DEBUG: msilo [msilo.c:1148]: m_dump(): msg [1-12] for:
sip:1010@my.domain.com
DEBUG: <core> [io_wait.h:617]: io_watch_del(): DBG: io_watch_del (0x8e3040,
9, -1, 0x10) fd_no=2 called
DEBUG: <core> [tcp_read.c:1437]: release_tcpconn(): releasing con
0x7f61ced1b1b0, state 1, fd=9, id=1
DEBUG: <core> [tcp_read.c:1438]: release_tcpconn(): extra_data
0x7f61ced1c4f8
DEBUG: <core> [tcp_main.c:3385]: handle_tcp_child(): handle_tcp_child:
reader response= 7f61ced1b1b0, 1 from 0
DEBUG: <core> [io_wait.h:390]: io_watch_add(): DBG: io_watch_add(0x89ec40,
26, 2, 0x7f61ced1b1b0), fd_no=21
DEBUG: <core> [tcp_main.c:3515]: handle_tcp_child(): handle_tcp_child:
CONN_RELEASE 0x7f61ced1b1b0 refcnt= 1
DEBUG: tm [t_reply.c:1304]: t_should_relay_response(): ->>>>>>>>> T_code=0,
new_code=408
DEBUG: tm [t_reply.c:2086]: local_reply(): DEBUG: local_reply: branch=0,
save=0, winner=0
DEBUG: tm [t_reply.c:2123]: local_reply(): DEBUG: local transaction
completed
DEBUG: tm [t_hooks.c:288]: run_trans_callbacks_internal(): DBG:
trans=0x7f61ced1d868, callback type 1024, id 0 entered
DEBUG: msilo [msilo.c:1317]: m_tm_callback(): *completed with status 408*
[mid: 140058058335472/13]
DEBUG: msilo [msilo.c:1325]: m_tm_callback(): message <13> was not sent
successfully
DEBUG: msilo [ms_msg_list.c:236]: msg_list_set_flag(): mid:13 fl:8
DEBUG: tm [t_reply.c:1304]: t_should_relay_response(): ->>>>>>>>> T_code=0,
new_code=408
DEBUG: tm [t_reply.c:2086]: local_reply(): DEBUG: local_reply: branch=0,
save=0, winner=0
DEBUG: tm [t_reply.c:2123]: local_reply(): DEBUG: local transaction
completed
DEBUG: tm [t_hooks.c:288]: run_trans_callbacks_internal(): DBG:
trans=0x7f61ced5f098, callback type 1024, id 0 entered
DEBUG: msilo [msilo.c:1317]: m_tm_callback(): completed with status 408
[mid: 140058058329184/12]
DEBUG: msilo [msilo.c:1325]: m_tm_callback(): message <12> was not sent
successfully
DEBUG: msilo [ms_msg_list.c:236]: msg_list_set_flag(): mid:12 fl:8