Hi,
Is it safe to use sdpops and the rtpproxy* modules together, given that
the latter modify SDP? In other words, can I prune some codecs first,
and then call rtpproxy_offer()? Is it safe?
Thanks,
--
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,
I have an issue with the module SDPOPS while using
"sdp_keep_codecs_by_name".
If the calling party sends only one codec description like:
Content-Type: application/sdp
Content-Length: 202
v=0
o=UserA 2966746938 1790378070 IN IP4 10.141.0.21
s=Session SDP
c=IN IP4 10.141.0.21
t=0 0
m=audio 49152 RTP/AVP 8 101
a=rtpmap:8 PCMA/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
The result of the function "sdp_keep_codecs_by_name("PCMA,PCMU,G729a");" is:
Content-Type: application/sdp
Content-Length: 170
P-Asserted-Identity: "+0123456789" <sip:+0123456789@sip.tld>
v=0
o=UserA 2485672881 3000549892 IN IP4 a.b.c.d
s=Session SDP
c=IN IP4 a.b.c.d
t=0 0
m=audio 40330 RTP/AVP 8
a=rtpmap:8 PCMA/8000
a=nortpproxy:yes
If I open the capture in Wireshark, the PAI is not in the SDP part, and the
end of the capture after "a=rtpmap:8 PCMA/8000" is seen as "Data (18
bytes)".
I don't understand why the PAI is inserted within the SDP part. Adding the
PAI is done after "sdp_keep_codecs_by_name":
if (!is_present_hf("P-Asserted-Identity")) {
$var(pai) = $(fU{re.subst,/^0/+33/g});
append_hf("P-Asserted-Identity: \"$var(pai)\"
<sip:$var(pai)@$fd>\r\n");
}
I guess that this cause my INVITE being dropped by 488 Media Not Acceptable
Here.
Regards,
Igor.
Hello,
I have a question regarding to SIP over WebSocket implementation. I have
changed kamailio.cfg file accordingly with websocket configurations.
However, when I am trying to run Kamailio, now I am getting 3 errors on the
same line which is "syn_branch = 0". What could be the issue? And How it is
possible to fix it?
Thank you in advance.
BR,
Azamat Ailbayev,
Kazakhstan
Hello,
I am considering to release v4.1.5 sometime next week, most likely on
the 6th of August. Checking the 4.1 branch, there are not many fixes,
few are on my list for backporting. That's good, indicating a high level
of stability.
If anyone is aware of issues not reported on tracker or patches that
have not been backported, add to the tracker or write a message to
sr-dev mailing list.
Cheers,
Daniel
--
Daniel-Constantin Mierla - http://www.asipto.comhttp://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Hello,
Kamailio SIP Server v4.1.5 stable release is out.
This is a maintenance release of the latest stable branch, 4.1, that
includes fixes since release of v4.1.4. There is no change to database
schema or configuration language structure that you have to do on
installations of v4.1.x. Deployments running previous v4.x.x versions
are strongly recommended to be upgraded to v4.1.5.
For more details about version 4.1.5 (including links and guidelines to
download the tarball or from GIT repository), visit:
* http://www.kamailio.org/w/2014/08/kamailio-v4-1-5-released/
Cheers,
Daniel
--
Daniel-Constantin Mierla - http://www.asipto.comhttp://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Hi All,
i have a query here,
the user is registered with the open IMS and also with Kamailio ( as a third party registration via SCSCF )
Here my issue is ;
when the user makes a call, the INVITE reaches to kamailio from SCSCF( Scscf port is 6060) , when the Kamailio sends the INVITE back to IMS, it sends to the port 5060.
problem is , the kamailio registers the SCSCF port as 6060,
but when sending the INVITE back it uses the port 5060.
why this is So ??
i checked in registered entry as well, it shows that the contact is SCSCF with 6060 port only.
please help in this situation,
Kind regards
SenthilK
Hello,
I've been experimenting with Kamailio with ws and sip clients and could
need a hand in getting a call between those two to work.
I have Kamailio 4.1.2 (using rtpproxy-ng instead of rtpproxy) on a CentOS
6.5 and a mediaproxy-ng running. I have clients wsclient(a)testers.com and
gsclient(a)testers.com and I try to make call from wsclient to gsclient. The
wsclient is a jssip client running on chrome and gsclient is a grandstream
desk phone. My config file is the default one enhanced by online examples.
I use a html5 <audio> element for the media streams, and configured my
jssip phone to accept audio options like this:
var options = {
'eventHandlers': eventHandlers,
'mediaConstraints': {'audio': true, 'video': false }
};
sipUA.call(callto, options);
I used the instructions from here:
http://www.slideshare.net/crocodilertc/webrtc-websockets
What I get is gsclient ringing, and as I answer there is no audio and call
hangs up in a few seconds. I guess this is a SDP problem, something between
Kamailio and Mediaproxy-ng but SDP is not my strong point so I'd appreciate
advice.
Question is where's my misconfiguration/problem? I would like to learn why
this problem occurs and how to fix it rather than getting a solution right
away, but please bear in mind I don't know much about SDP.
In Kamailio log I see:
kamailio[27059]: ERROR: rtpproxy-ng [rtpproxy.c:1346]:
rtpp_function_call(): proxy replied with error: Error rewriting SDP
kamailio[27058]: ERROR: rtpproxy-ng [rtpproxy.c:1346]:
rtpp_function_call(): proxy replied with error: Unknown call-id
kamailio[27057]: ERROR: rtpproxy-ng [rtpproxy.c:1346]:
rtpp_function_call(): proxy replied with error: Unknown call-id
Following are the INVITEs and 200 OKs from my SIP trace (1.1.1.1 is the ip
of my Kamailio & mediaproxy-ng box and 2.2.2.2 is the public ip behind
which both my clients are). The gsclient has port 5066.
******************************************************************************
U 2014/04/01 20:03:41.060009 1.1.1.1:5060 -> 2.2.2.2:5066
INVITE sip:gsclient@192.168.0.106:5066;transport=udp SIP/2.0.
Record-Route: <sip:1.1.1.1;r2=on;lr=on;nat=yes>.
Record-Route: <sip:1.1.1.1;transport=ws;r2=on;lr=on;nat=yes>.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKb703.fbb259c1d8c17e163876ec760e086145.0.
Via: SIP/2.0/WS
kj59uak271em.invalid;rport=38986;received=2.2.2.2;branch=z9hG4bK9891267.
Max-Forwards: 16.
To: <sip:gsclient@testers.com>.
From: <sip:wsclient@testers.com>;tag=hhcd99tmvm.
Call-ID: 1dluvk38g1j22fn96t4b.
CSeq: 7237 INVITE.
Contact: <sip:wsclient@testers.com
;gr=urn:uuid:f6014564-88cb-4f57-9ae5-3b4336ef9db8;ob;alias=2.2.2.2~38986~5;alias=2.2.2.2~38986~5>.
Allow: ACK,CANCEL,BYE,OPTIONS,INVITE.
Content-Type: application/sdp.
Supported: path, outbound, gruu.
User-Agent: JsSIP 0.3.0.
Content-Length: 2211.
.
v=0.
o=- 4897716268503406223 2 IN IP4 1.1.1.1.
s=-.
t=0 0.
a=group:BUNDLE audio.
a=msid-semantic: WMS vMh5vhUEQzvVKJYdqRkAuCcXVa2blgbEXARZ.
m=audio 30028 RTP/SAVPF 111 103 104 0 8 106 105 13 126.
c=IN IP4 1.1.1.1.
a=candidate:2999745851 1 udp 2113937151 192.168.56.1 63341 typ host
generation 0.
a=candidate:2999745851 2 udp 2113937151 192.168.56.1 63341 typ host
generation 0.
a=candidate:3350409123 1 udp 2113937151 192.168.0.101 63342 typ host
generation 0.
a=candidate:3350409123 2 udp 2113937151 192.168.0.101 63342 typ host
generation 0.
a=candidate:4233069003 1 tcp 1509957375 192.168.56.1 0 typ host generation
0.
a=candidate:4233069003 2 tcp 150995
T 2014/04/01 20:03:41.119806 2.2.2.2:38986 -> 1.1.1.1:5060 [A]
......
U 2014/04/01 20:03:41.159086 2.2.2.2:5066 -> 1.1.1.1:5060
SIP/2.0 488 Not Acceptable Here.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKb703.fbb259c1d8c17e163876ec760e086145.0.
Via: SIP/2.0/WS
kj59uak271em.invalid;rport=38986;received=2.2.2.2;branch=z9hG4bK9891267.
Record-Route: <sip:1.1.1.1;r2=on;lr=on;nat=yes>.
Record-Route: <sip:1.1.1.1;transport=ws;r2=on;lr=on;nat=yes>.
From: <sip:wsclient@testers.com>;tag=hhcd99tmvm.
To: <sip:gsclient@testers.com>;tag=7875f08763872c34.
Call-ID: 1dluvk38g1j22fn96t4b.
CSeq: 7237 INVITE.
User-Agent: Grandstream GXP2000 1.2.2.26.
Warning: 304 GS "Media type not available".
Content-Length: 0.
.
U 2014/04/01 20:03:41.159392 1.1.1.1:5060 -> 2.2.2.2:5066
ACK sip:gsclient@192.168.0.106:5066;transport=udp SIP/2.0.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKb703.fbb259c1d8c17e163876ec760e086145.0.
Max-Forwards: 16.
To: <sip:gsclient@testers.com>;tag=7875f08763872c34.
From: <sip:wsclient@testers.com>;tag=hhcd99tmvm.
Call-ID: 1dluvk38g1j22fn96t4b.
CSeq: 7237 ACK.
Content-Length: 0.
.
U 2014/04/01 20:03:41.161085 1.1.1.1:5060 -> 2.2.2.2:5066
INVITE sip:gsclient@192.168.0.106:5066;transport=udp SIP/2.0.
Record-Route: <sip:1.1.1.1;r2=on;lr=on;nat=yes>.
Record-Route: <sip:1.1.1.1;transport=ws;r2=on;lr=on;nat=yes>.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKb703.fbb259c1d8c17e163876ec760e086145.1.
Via: SIP/2.0/WS
kj59uak271em.invalid;rport=38986;received=2.2.2.2;branch=z9hG4bK9891267.
Max-Forwards: 16.
To: <sip:gsclient@testers.com>.
From: <sip:wsclient@testers.com>;tag=hhcd99tmvm.
Call-ID: 1dluvk38g1j22fn96t4b.
CSeq: 7237 INVITE.
Contact: <sip:wsclient@testers.com
;gr=urn:uuid:f6014564-88cb-4f57-9ae5-3b4336ef9db8;ob;alias=2.2.2.2~38986~5;alias=2.2.2.2~38986~5>.
Allow: ACK,CANCEL,BYE,OPTIONS,INVITE.
Content-Type: application/sdp.
Supported: path, outbound, gruu.
User-Agent: JsSIP 0.3.0.
Content-Length: 3136.
.
v=0.
o=- 4897716268503406223 2 IN IP4 1.1.1.1.
s=-.
t=0 0.
a=group:BUNDLE audio.
a=msid-semantic: WMS vMh5vhUEQzvVKJYdqRkAuCcXVa2blgbEXARZ.
m=audio 30028 RTP/AVP 111 103 104 0 8 106 105 13 126.
c=IN IP4 1.1.1.1.
a=fingerprint:sha-256
72:54:87:EC:D2:4C:D1:70:C2:FE:69:08:20:5C:92:1D:E0:EA:BD:45:09:E0:90:62:27:B6:34:60:54:E2:99:28.
a=setup:actpass.
a=mid:audio.
a=sendrecv.
a=rtpmap:111 opus/48000/2.
a=fmtp:111 minptime=10.
a=rtpmap:103 ISAC/16000.
a=rtpmap:104 ISAC/32000.
a=rtpmap:0 PCMU/8000.
a=rtpmap:8 PCMA/8000.
a=rtpmap:106 CN/32000.
a=rtpmap:105 CN/16000.
a=rtpmap:13 CN/8000.
a=rtpmap:126 telephone-event/8000.
a=maxptime:60.
a=ssrc:3298511848 cnam
And here are the 200 OK messages when answering the call:
U 2014/04/01 20:03:46.049711 2.2.2.2:5066 -> 1.1.1.1:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKb703.fbb259c1d8c17e163876ec760e086145.1.
Via: SIP/2.0/WS
kj59uak271em.invalid;rport=38986;received=2.2.2.2;branch=z9hG4bK9891267.
Record-Route: <sip:1.1.1.1;r2=on;lr=on;nat=yes>.
Record-Route: <sip:1.1.1.1;transport=ws;r2=on;lr=on;nat=yes>.
From: <sip:wsclient@testers.com>;tag=hhcd99tmvm.
To: <sip:gsclient@testers.com>;tag=fb215901a251c9a0.
Call-ID: 1dluvk38g1j22fn96t4b.
CSeq: 7237 INVITE.
User-Agent: Grandstream GXP2000 1.2.2.26.
Contact: <sip:gsclient@192.168.0.106:5066;transport=udp>.
Allow:
INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE,UPDATE,PRACK,MESSAGE.
Content-Type: application/sdp.
Supported: replaces, timer.
Content-Length: 216.
.
v=0.
o=gsclient 8000 8000 IN IP4 192.168.0.106.
s=SIP Call.
c=IN IP4 192.168.0.106.
t=0 0.
m=audio 5026 RTP/AVP 0 13.
a=sendrecv.
a=rtpmap:0 PCMU/8000.
a=ptime:20.
m=audio 0 RTP/SAVPF 111 103 104 0 8 106 105 13 126.
T 2014/04/01 20:03:46.051127 1.1.1.1:5060 -> 2.2.2.2:38986 [AP]
.~.dSIP/2.0 200 OK.
Via: SIP/2.0/WS
kj59uak271em.invalid;rport=38986;received=2.2.2.2;branch=z9hG4bK9891267.
Record-Route: <sip:1.1.1.1;r2=on;lr=on;nat=yes>.
Record-Route: <sip:1.1.1.1;transport=ws;r2=on;lr=on;nat=yes>.
From: <sip:wsclient@testers.com>;tag=hhcd99tmvm.
To: <sip:gsclient@testers.com>;tag=fb215901a251c9a0.
Call-ID: 1dluvk38g1j22fn96t4b.
CSeq: 7237 INVITE.
User-Agent: Grandstream GXP2000 1.2.2.26.
Contact: <sip:gsclient@192.168.0.106:5066;transport=udp>.
Allow:
INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE,UPDATE,PRACK,MESSAGE.
Content-Type: application/sdp.
Supported: replaces, timer.
Content-Length: 216.
.
v=0.
o=gsclient 8000 8000 IN IP4 192.168.0.106.
s=SIP Call.
c=IN IP4 192.168.0.106.
t=0 0.
m=audio 5026 RTP/AVP 0 13.
a=sendrecv.
a=rtpmap:0 PCMU/8000.
a=ptime:20.
m=audio 0 RTP/SAVPF 111 103 104 0 8 106 105 13 126.
******************************************************************************
cheers,
Olli
Hello. I Installed kamailio 4.1.4, when I starting my server I see
following Warning
no fork mode and more than one listen address found (will use only the
first one)
So I see only first listening port at my netstat
At my kamailio.cfg file I write fork=yes? but it not helps me.
I found the same issue at this mailing list
http://comments.gmane.org/gmane.comp.voip.openser.user/10686
But it very old issue (2007 year) and I think patch at this issue does not
help me.
How I can start my Server for runnings with many interfaces?
Hello,
I'm using Kamailio 4.1 and I'm wondering how to avoid external DNS
resolution.
I have the following config:
dns_cache_init=no
use_dns_cache=no
dns=no
rev_dns=no
Even with this config, I have many and many DNS query on SRV _sip for the
hostnames set in carrierroute module.
These requests are not useful because the A resolution is done by
/etc/hosts.
Major problem with this, is that when I have a DNS issue or IP transit
issue, Kamailio waits for resolution timeout and becomes overloaded. As a
consequence, Kamailio can't treat others SIP requests like REGISTER because
he stuck in DNS resolution.
Regards,
Igor.