Hi all,
I read some portion of imc_isc_mod.c, specially isc_from_as function. In
that function there is some function call that searching for some marks in
the SIP message. Also I read section 5.7.3 from TS 24.229 but I didn't find
the marking mechanism that used in isc_from_as function.
Would you please point me to the technical specification that implemented
in IMS_ISC module?
Regards,
Ali
Hello,
I'm having an issue where this doesn't work:
#!trydef PRODUCT "Foo"
if( $hdr("X-" + PRODUCT + "-Transport") != "" ) {
add_uri_param( $hdr("X-" + PRODUCT + "-Transport") );
}
It seems Kamailio doesn't like the concatenation within the $hdr().
Concatenation does work in other places though:
append_hf( "X-" + PRODUCT + "-Transport: tcp\r\n" );
Can anyone advise how to make the concatenation within $hdr() work?
Thanking you in advance.
--
David Cunningham, Voisonics Limited
http://voisonics.com/
USA: +1 213 221 1092
New Zealand: +64 (0)28 2558 3782
hi
i m using kamailio 5.1.2 , on Ubuntu 18. LTS
existing setup is working fine with audio and video call ,,, ut now i wan
to add chat feature in it ... so plz help me how can i implement chat IM in
to it
thanks
--
*Regards:*
Gaurav Kumar
Greetings,
When a in-dialog request has Route headers, Kamailio will remove the Route
Header with it's address when routing the packet.
This works perfectly for me in every situation. However, in one of the
calls I found a weird behaviour in the removal.
So, this is the scenario :
Kamailio has two IP's 1.1.1.209 and 1.1.1.205. This is BYE request received
in the on 1.1.1.209
The header Route looks like this when it arrives at 1.1.1.209 :
Route :
<sip:1.1.1.209;r2=on;lr;ftag=5AE0303037363132017D0E65;tbk_i=2_2_Y;tbk_o=128_11_Y;vsf=AAAAABgGBAMDAAUBBQECA3ByAwMcHwIdHQsWHwUMOA--;vst=AAAAABgHDQgBAwsIBQECdnIDAxwfAh0aBB4cAgU5;did=8f5.67c2>,<sip:1.1.1.205;r2=on;lr;ftag=5AE0303037363132017D0E65;tbk_i=2_2_Y;tbk_o=128_11_Y;vsf=AAAAABgGBAMDAAUBBQECA3ByAwMcHwIdHQsWHwUMOA--;vst=AAAAABgHDQgBAwsIBQECdnIDAxwfAh0aBB4cAgU5;did=8f5.67c2>
It reaches 1.1.1.205 like this :
Route :
As you can see, the header is empty and it should contain the 1.1.1.205
URI.
Is the header Router malformatted and creating this error ?
Best Regards,
Duarte Rocha
Hi Ali,
Looking through the source code, its not that the port for I-CSCF is hard coded to 5060, its just that it defaults to 5060 if the following is set in the Kamailio.cfg file: dns_try_naptr=no which we had left it disabled.
Well I assumed I had all the DNS worked out, I had NAPTR records set for the P,I and S-CSCF.
Looking though the pcscf.cfg there is a setting for NETWORKNAME which is set to ims522.ims.org, and is a separate FQDN from the P,I,S-cscf FQDN’s. I always kept the NAPTR rec for ims522 as the same port of the P-CSCF (pcscf522) in DNS.
Two things I needed to fix:
1. Enable the DNS NAPTR lookups: dns_try_naptr=yes
2. Modify the NAPR for ims522 to be that of 4060
Thanks to you and Amar for the pointing to DNS.
_Martin
From: sr-users <sr-users-bounces(a)lists.kamailio.org> On Behalf Of Ali Shirvani
Sent: Tuesday, July 23, 2019 1:40 PM
To: Kamailio (SER) - Users Mailing List <sr-users(a)lists.kamailio.org>
Subject: [EXT] Re: [SR-Users] P-CSCF and I-CSCF ports
Hi Martin,
As Amar pointed out it may some DNS configuration.
You can check the DNS entry of I-CSCF with:
$ dig -t srv <FQDN of I-CSCF>
Regards,
Ali
On Tue, Jul 23, 2019 at 7:15 PM Amar Tinawi <amar.tinawi(a)gmail.com<mailto:amar.tinawi@gmail.com>> wrote:
Hello Martin
I think you are missing the DNS part.
On Tue, Jul 23, 2019, 5:30 PM Woscek, Martin W. <mwoscek(a)mitre.org<mailto:mwoscek@mitre.org>> wrote:
Hi IMS users,
I can configure the P-CSCF to use 5060, and the I-CSCF to use 4060 and both come up listening to their respective ports when each module is started.
But the P-CSCF is hardcoded to use 5060 for the I-CSCF.
Before I make code changes to the executable:
Is there some additional configuration to allow for me to switch ports?
Why is Kamailio IMS hardcoded and why not enforce it at the .cfg load time?
Thanks,
Martin
_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Hi!
I detected strange problem that sip.linphone.org refuse to accept
presence information re-transmitted by kamailio 4.4.4 server.
I debug this problem with tcpdump and I found out that problem is in
kamailio which fills IPv6 address into UDP datagram and that datagram is
sent via IPv4 socket to IPv4 address, to sip.linphone.org server. And
sip.linphone.org server does not have IPv6 connectivity, so correctly
return over IPv4 to sender just "400 Bad Contact Header" error.
On my server is running kamailio 4.4.4 from Debian Stretch and I can
100% reproduce this problem against public sip.linphone.org server.
My server has both IPv4 and IPv6 connectivity and kamailio is listening
for both IPv4 and IPv6 connections.
So why is kamailio sending IPv6 address over IPv4 and therefore makes it
impossible to communicate with non-IPv6 enabled servers? Looks like a
problem with choosing default/correct socket for Contact header.
And how to fix this problem? Can you help me? I would like to have
working interconnection with linphone servers.
Just to note I'm seeing this problem only for presence information
packets. Other requests, like INVITE or MESSAGE seems to work.
Below is relevant tcpdump output. Some parts were replaced by {VAR}.
PS: I'm not subscribed to list, so please CC my address when sending
reply. Thank you!
17:22:58.121719 IP (tos 0x10, ttl 64, id 21629, offset 0, flags [none], proto UDP (17), length 1266)
{MY_IPV4_ADDRESS}.5060 > 91.121.209.194.5060: [bad udp cksum 0xa099 -> 0x9825!] SIP, length: 1238
NOTIFY sip:{REMOTE_NAME}@{REMOTE_USER_IPV4_ADDRESS}:5060;registering_acc=sip_linphone_org SIP/2.0
Via: SIP/2.0/UDP {MY_IPV4_ADDRESS};branch=z9hG4bK2b55.88f93c20000000000000000000000000.0
To: <sip:{REMOTE_NAME}@sip.linphone.org>;tag=75559182
From: <sip:{MY_SIP_URI}>;tag=97d8e785fdf42bf9622a64c13c504961-2708
CSeq: 2 NOTIFY
Call-ID: 26cf9d5c019af2dc3302b770887bcc2e@0:0:0:0:0:0:0:0
Route: <sip:91.121.209.194:5060;lr>
Content-Length: 597
User-Agent: kamailio (4.4.4 (x86_64/linux))
Max-Forwards: 70
Event: presence
Contact: <sip:{MY_IPV6_ADDRESS}:5060;transport=udp>
Subscription-State: active;expires=3600
Content-Type: application/pidf+xml
<?xml version="1.0" encoding="UTF-8"?>
<presence xmlns="urn:ietf:params:xml:ns:pidf" xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model" xmlns:rpid="urn:ietf:params:xml:ns:pidf:rpid" entity="Pali <sip:{MY_SIP_URI}>">
<tuple id="sg89ae">
<status><basic>open</basic></status>
<contact priority="0.8">Pali <sip:{MY_SIP_URI}></contact>
</tuple>
<tuple xmlns="urn:ietf:params:xml:ns:pidf" id="TA0C538B2">
<status>
<basic>closed</basic>
</status>
<contact priority="1">sip:{MY_SIP_URI}</contact>
<timestamp>2019-04-19T17:20:36+02:00</timestamp>
</tuple>
</presence>
17:22:58.151188 IP (tos 0x0, ttl 52, id 22949, offset 0, flags [none], proto UDP (17), length 373)
91.121.209.194.5060 > {MY_IPV4_ADDRESS}.5060: [udp sum ok] SIP, length: 345
SIP/2.0 400 Bad Contact Header
Via: SIP/2.0/UDP {MY_IPV4_ADDRESS};branch=z9hG4bK2b55.88f93c20000000000000000000000000.0;rport=5060
From: <sip:{MY_SIP_URI}>;tag=97d8e785fdf42bf9622a64c13c504961-2708
To: <sip:{REMOTE_NAME}@sip.linphone.org>;tag=75559182
Call-ID: 26cf9d5c019af2dc3302b770887bcc2e@0:0:0:0:0:0:0:0
CSeq: 2 NOTIFY
Content-Length: 0
--
Pali Rohár
pali.rohar(a)gmail.com
Hi,
I am integrating Kamailio into my application. I want to hook to the
successful REGISTER and unregister event into Kamailio into my application.
For now, I am able to hook into INVITE event and can hit my server to send
a email to the callee user that user X is calling you. The way I am doing
is by this
if (is_method("INVITE")) {
xlog("LOG_LOCAL3","L_INFO","invite came ($fU) ($tU)");
$var(res) = http_connect("sipnodejsserver",
"/","text/plain","src_user:$fU,dst_user:$tU" ,"$avp(route)");
xlog("LOG_LOCAL3","L_INFO","request sent $avp(route)
$var(res)");
setflag(FLT_ACC); # do accounting
}
I need to show into my application that their SIP phone is online or not.
How can I hook into this?
DNS is fine. I flip the NAPTR records when I flip back and forth the 4060/5060 btwn the P and I.
Martin Woscek
The MITRE Corp.
mwoscek(a)mitre.org<mailto:mwoscek@mitre.org>
Phone: 703-983-2650
FAX: 703-983-7142
From: sr-users <sr-users-bounces(a)lists.kamailio.org> On Behalf Of Ali Shirvani
Sent: Tuesday, July 23, 2019 1:40 PM
To: Kamailio (SER) - Users Mailing List <sr-users(a)lists.kamailio.org>
Subject: [EXT] Re: [SR-Users] P-CSCF and I-CSCF ports
Hi Martin,
As Amar pointed out it may some DNS configuration.
You can check the DNS entry of I-CSCF with:
$ dig -t srv <FQDN of I-CSCF>
Regards,
Ali
On Tue, Jul 23, 2019 at 7:15 PM Amar Tinawi <amar.tinawi(a)gmail.com<mailto:amar.tinawi@gmail.com>> wrote:
Hello Martin
I think you are missing the DNS part.
On Tue, Jul 23, 2019, 5:30 PM Woscek, Martin W. <mwoscek(a)mitre.org<mailto:mwoscek@mitre.org>> wrote:
Hi IMS users,
I can configure the P-CSCF to use 5060, and the I-CSCF to use 4060 and both come up listening to their respective ports when each module is started.
But the P-CSCF is hardcoded to use 5060 for the I-CSCF.
Before I make code changes to the executable:
Is there some additional configuration to allow for me to switch ports?
Why is Kamailio IMS hardcoded and why not enforce it at the .cfg load time?
Thanks,
Martin
_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users(a)lists.kamailio.org<mailto:sr-users@lists.kamailio.org>
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Hi IMS users,
I can configure the P-CSCF to use 5060, and the I-CSCF to use 4060 and both come up listening to their respective ports when each module is started.
But the P-CSCF is hardcoded to use 5060 for the I-CSCF.
Before I make code changes to the executable:
Is there some additional configuration to allow for me to switch ports?
Why is Kamailio IMS hardcoded and why not enforce it at the .cfg load time?
Thanks,
Martin
Hi all,
I want to trace function calls in a kamailio module, e.g. ims_isc module. I
installed kamailio-dbg package and started the kamailio with gdb: `gdb
kamailio` I also set break point on target function, but it seems gdb
doesn't stop on that break point.
How should I start gdb and set break points? it seems gdb couldn't handle
kamailio child processes that forked in start.
Regards,
Ali