Hi all.
I'm trying to use the dialog module's keep alive feature (ka_interval()
and dlg_set_property()), and the documentation (under dlg_set_property)
says this:
If keep alive is enabled for a dialog, the module will send SIP OPTIONS
requests with CSeq lower or equal than last request within dialog
This is seems really weird to me, but the problem is worse than that - when
setting dlg_set_property("ka-src"), the OPTIONS messages sent to the caller
always have CSeq set to "0", regardless of what CSeq the UA sent on its
invite.
The problem is that while some UAs respond to these purposefully broken
messages with some kind of a 5xx reply (for example, Linphone funnily sends
"500 Internal Server Error"), several UAs don't respond at all. Worse than
that - some of the UAs that send back 5xx replies to OPTIONS with a
non-zero but invalid CSeq will completely ignore the OPTIONS keep-alive
message that is sent to the caller with a CSeq 0 - for example, PJSIP
responds with "503 Invalid CSeq" to a "ka-dst" OPTIONS message but will
ignore a "ka-src" OPTIONS message with CSeq 0.
My questions:
1. Why are keep-alive messages sent with a wrong CSeq?
2. If we're keeping the "wrong CSeq" approach, can we at least not send
CSeq "0"?
3. Is there a way to change any of the above behaviors with a configuration
(i.e. without patching the sources)?
Thanks in advance
--
Oded Arbel
odeda(a)cloudonix.io
Hello,
I have the following setup:
Kamailio:
Public Interface 70.36.25.65
Private Interface 10.168.10.227
Freeswitch:
Private Interface 10.168.10.200
I’m routing calls from kamailio to freeswitch, but when I try to hang up the call the freeswitch sends the BYE to the public address(70.36.25.65) and not to the private address 10.168.10.227. 200OK and ACK work correctly. It’s only the BYE that has an issue.
Showing INVITES:
Client Invite:
T 82.80.164.63:53871 -> 70.36.25.65:5099 [AP]
INVITE sip:+972549428460@70.36.25.65:5099 SIP/2.0.
Via: SIP/2.0/TCP 10.0.0.42:51619;branch=z9hG4bK-524287-1---52dcc73ec891de14;rport.
Max-Forwards: 70.
Contact: <sip:972545234585@82.80.164.63:51620;rinstance=1f9d21b54116df89;transport=tcp>.
To: <sip:+972549428460@70.36.25.65:5099>.
From: "972545234585"<sip:972545234585@70.36.25.65:5099>;tag=902c5325.
Kamailio to FS:
T 10.168.10.227:46506 -> 10.168.10.200:5080 [AP]
INVITE sip:+972549428460@70.36.25.65:5099 SIP/2.0.
Record-Route: <sip:70.36.25.65:5099;transport=tcp;lr=on;ftag=902c5325;nat=yes>.
Via: SIP/2.0/TCP 70.36.25.65:5099;branch=z9hG4bK1117.1b91cfe0632bd6f036b308f85898e862.1;i=1.
Via: SIP/2.0/TCP 10.0.0.42:51619;received=82.80.164.63;branch=z9hG4bK-524287-1---9b6758521ff0f528;rport=53871.
Max-Forwards: 69.
Hi
Hoping someone can point me in the right direction.
I have a Kamailio Ver: 4.2.3-1.1 running in front of a few asterisk servers
Ver: 13.17.2 sip is routed to an asterisk server depending the domain name
in the sip request, all working as expected . but if a call is put on hold
after resuming the call the party that placed the call on hold can't hear
any audio. The other party can hear . do I need to do anything special to
handle re-invites for calls put on hold?
Gerry Kernan
Infinity IT | 17 The Mall | Beacon Court | Sandyford |
Dublin D18 E3C8 | Ireland
Tel: +353 - (0)1 - 293 0090 | E-Mail:
<mailto:gerry.kernan@infinityit.ie> gerry.kernan(a)infinityit.ie
Managed IT Services Infinity IT - <http://www.infinityit.ie/>
www.infinityit.ie
IP Telephony Asterisk Consulting -
<http://www.asteriskconsulting.com> www.asteriskconsulting.com
Contact Centre Total Interact -
<http://www.totalinteract.com> www.totalinteract.com
I use kamailio 5.1.1 with openssl-1.0.2n. I built openssl with gost engine
supported and the result when i list cipher list as follow:
....................
GOST2001-GOST89-GOST89:GOST94-GOST89-GOST89:ECDH-RSA-AES256-GCM-SHA384:ECDH-ECDSA-AES256-GCM-SHA384:ECDH-RSA-AES256-SHA384:ECDH-ECDSA-AES256-SHA384:ECDH-RSA-AES256-SHA:ECDH-ECDSA-AES256-SHA:AES256-GCM-SHA384:AES256-SHA256:AES256-SHA::GOST94-GOST89-GOST89:ECDH-RSA-AES256-GCM-SHA384:ECDH-ECDSA-AES256-GCM-SHA384:ECDH-RSA-AES256-SHA384:ECDH-ECDSA-AES256-SHA384:ECDH-RSA-AES256-SHA:ECDH-ECDSA-AES256-SHA:AES256-GCM-SHA384:AES256-SHA256:AES256-SHA:
................
i must use exactly GOST2001-GOST89-GOST89 in kamailio to protect sip
protocol.
Please help me to resolve my problem.
Best regards,
Trung.
Hello,
I had a crash on one Kamailio instance with the following backtrace:
Core was generated by `/usr/local/sbin/kamailio -m 704 -M 128 -P
/run/kamailio/kamailio.pid'.
Program terminated with signal 6, Aborted.
#0 0x00007f92366761f7 in raise () from /lib64/libc.so.6
Missing separate debuginfos, use: debuginfo-install
bzip2-libs-1.0.6-13.el7.x86_64 elfutils-libelf-0.168-8.el7.x86_64
glibc-2.17-196.el7_4.2.x86_64 keyutils-libs-1.5.8-3.el7.x86_64
krb5-libs-1.15.1-8.el7.x86_64 libacl-2.2.51-12.el7.x86_64
libattr-2.4.46-12.el7.x86_64 libcap-2.22-9.el7.x86_64
libcom_err-1.42.9-10.el7.x86_64 libdb-5.3.21-21.el7_4.x86_64
libgcc-4.8.5-16.el7_4.1.x86_64 libselinux-2.5-11.el7.x86_64
libstdc++-4.8.5-16.el7_4.1.x86_64
lm_sensors-libs-3.4.0-4.20160601gitf9185e5.el7.x86_64
lua-5.1.4-15.el7.x86_64 mariadb-libs-5.5.56-2.el7.x86_64
net-snmp-agent-libs-5.7.2-28.el7_4.1.x86_64
net-snmp-libs-5.7.2-28.el7_4.1.x86_64 nspr-4.13.1-1.0.el7_3.x86_64
nss-3.28.4-15.el7_4.x86_64 nss-softokn-freebl-3.28.3-8.el7_4.x86_64
nss-util-3.28.4-3.el7.x86_64 openssl-libs-1.0.2k-8.el7.x86_64
pcre-8.32-17.el7.x86_64 perl-libs-5.16.3-292.el7.x86_64
popt-1.13-16.el7.x86_64 rpm-libs-4.11.3-25.el7.x86_64
tcp_wrappers-libs-7.6-77.el7.x86_64 xz-libs-5.2.2-1.el7.x86_64
zlib-1.2.7-17.el7.x86_64
(gdb) backtrace
#0 0x00007f92366761f7 in raise () from /lib64/libc.so.6
#1 0x00007f92366778e8 in abort () from /lib64/libc.so.6
#2 0x000000000061fb2c in qm_free (qm=0x7f91f4eaf000, p=0x7f92110d0300,
file=0x7f9226dd7072 "dialog: dlg_hash.c", func=0x7f9226dd9aeb
<__FUNCTION__.12761> "destroy_dlg", line=381) at mem/q_malloc.c:474
#3 0x00007f9226d6fb62 in destroy_dlg (dlg=0x7f920f775598) at dlg_hash.c:381
#4 0x00007f9226d75681 in dlg_unref (dlg=0x7f920f775598, cnt=2) at
dlg_hash.c:874
#5 0x00007f9226da14d5 in dlg_ontimeout (tl=0x7f920f7755f8) at
dlg_handlers.c:1488
#6 0x00007f9226db1e67 in dlg_timer_routine (ticks=8621904, attr=0x0) at
dlg_timer.c:283
#7 0x00000000004af537 in compat_old_handler (ti=137950479,
tl=0x7f91f7ad8cc8, data=0x7f91f7ad8cc8) at timer.c:1011
#8 0x00000000004aff14 in slow_timer_main () at timer.c:1145
#9 0x000000000052a2af in main_loop () at main.c:1684
#10 0x000000000052fe71 in main (argc=7, argv=0x7fff51f21418) at main.c:2581
(gdb)
Is there enough information to understand the reason of the crash?
Regards,
Igor.
Hi All,
can anyone share me the installtion steps for kamailio 5.1.2?
can i compile and run kamailio 5.1.2 on ubuntu 14.04?
i have already used 4.3.6 with polaris configuration to bringup kamailio
and i wanna upgrade to kamailio 5.1.2 and the same way can i use 5.1.2 with
polaris configuration?
I have used polaris scripts to bringup kamailio 5.1.2 and its failing with
status kamailio service with Result resources.
if i use latest debian packages , are polaris configurations are compatible
with latest packages??
Please help me out.
Thanks in advance.
Regards,
vinay
I'm encountering a situation where an endpoint will renegotiate it's RTP
ports but RTPProxy does not honor the new ports and continues to send
audio to the old ports.
I realize that I'm running a (very) old version of RTPProxy and that I
should upgrade before submitting any bugs or asking for help with the
program.
My question is, is RTPProxy still the way to go? And if so, is v2.0.0
the best version to go with? https://github.com/sippy/rtpproxy/releases
At a basic level, the network looks like this
+---------------+ +--------------+
| | | |
| Priv. Network | | Pub. Network |
| | | |
+------+ +---------+--+ +---+-------+--+ +--+--------+
| | | | | | | |
| PSTN <---> Softswitch <--------> Kamailio + <--------> EndPoints |
| | | | | RTPProxy | | |
+------+ +---------+--+ | | +--+--------+
| +---+-------+--+ |
| | | |
+---------------+ +--------------+
Hi Team,
My issue for IM handling has been resolved.
@MS helped to look into the matter. From to the example
https://www.kamailio.org/docs/modules/5.1.x/modules/msilo.html#idp45433036
# -- tm params --
modparam("tm", "fr_timer", 10 )
modparam("tm", "fr_inv_timer", 15 )
modparam("tm", "wt_timer", 10 )
I replaced it as below
# -- tm params --
modparam("tm", "fr_timer", 10000 )
modparam("tm", "fr_inv_timer", 15 )
modparam("tm", "wt_timer", 10 )
Lower fr_timer was initiating 408 without waiting for 200 OK from
destination because 10ms is too low. This was confusing msilo module and
the sender device that MESSAGE sent was failed.
Increasing the fr_timer value resolved the issue.
This also resolved a ripple effect. i.e, kamailio delivery of offline
messages from DB store to the destination party.
Since kamailio was get message delivery error, it was
executing failure_route[1] that was storing the message again in DB store
as offline message and so on.
lower fr_timer values are also exits in 3.x, 4.x, 5x and dev branches
documentation.
Correction is required.
--
regards,
abdul basit | p: +92 32 1416 4196 | o: +92 30 0841 1445
>
> On 9 April 2018 at 19:34, Abdul Basit <basit.engg(a)gmail.com> wrote:
>
>> Dear Team,
>>
>> I have added traces via pasetbin
>>
>> MESSAGE Stored When B is OffLine https://pastebin.com/NLwMePmf
>>
>> [trace screenshot removed]
>>
>> Next this messages should be delivered when B party REGISTER with the
>> server
>>
>> *Issue 1*: Message was delivered to B-party but it didn't remove form DB
>> and as a result MESSAGE deliver to B-party as many times it come line
>> https://pastebin.com/7pb0wCKx
>> [trace screenshot removed]
>>
>> Now next issue is
>> *Issue 2*: Messages deliver to B-party when its already online without
>> storing in DB. B-party receive MESSAGE successfully but A-party gets
>> MESSAGE delivery failed.
>> https://pastebin.com/zgDbK4F6
>>
>> [trace screenshot removed]
>>
>> I intentionally modified the 202 - description for better troubleshooting.
>>
>> See if attachments were received properly through mailing list.
>>
>> For convenience I have attached the pcap as well.
>>
>> MESSAGE: 1: Accepted and Stored as expected
>> MESSAGE: 2: Server delivered Message when B comes online
>> MESSAGE: 3: Both A & B are online. A-party receives MESSAGE delivery
>> failure where as B-party receives MESSAGE successfully
>>
>>
>> Modified default kamailio.cfg is https://pastebin.com/thZig5RC
>> It looks that mingled up the configuration.
>>
>> Please see whats gone wrong here.
>>
>>
>> --
>> regards,
>>
>> abdul basit | p: +92 32 1416 4196 | o: +92 30 0841 1445
>>
>> On 9 April 2018 at 18:20, Abdul Basit <basit.engg(a)gmail.com> wrote:
>>
>>> Dear team,
>>>
>>> Thank you for your reply.
>>>
>>> @MS & @ Davld, Let me test again and share traces.
>>>
>>> @Zaka, I will check the save() result as you suggested. Location is
>>> being saved and properly looked up because messages are being delivered
>>> (and not stored in DB ) when both parties are online.
>>>
>>> --
>>> regards,
>>>
>>> abdul basit | p: +92 32 1416 4196 | o: +92 30 0841 1445
>>>
>>> On 9 April 2018 at 16:38, Muhammad Zaka <muhammad.zaka(a)cloudcall.com>
>>> wrote:
>>>
>>>> Please check the return value of save and replace the logic: -
>>>>
>>>>
>>>>
>>>> $var(save_result) = save("location") ;
>>>>
>>>> if ($var(save_result) <= -1) {
>>>>
>>>> xlogl("L_ERROR", "[$rm] -> Unable to save user location \n");
>>>> sl_reply_error();
>>>>
>>>> exit();
>>>>
>>>> }
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> if ($var(save_result) == 1) {
>>>>
>>>> xlogl("L_INFO", "[$rm] -> dumping messages with MSILO \n");
>>>> # MSILO - dumping user's offline messages to user
>>>> if (m_dump("$fu")) {
>>>> xlogl("L_NOTICE", "MSILO: offline messages for $fu dumped - if
>>>> they were \n");
>>>> }
>>>> else {
>>>> xlogl("L_NOTICE", "MSILO: no offline messages dumped \n");
>>>> };
>>>> }
>>>>
>>>>
>>>>
>>>> This means dump the message only when it is not re-registration.
>>>>
>>>>
>>>>
>>>> Thanks
>>>>
>>>>
>>>>
>>>> Regards
>>>>
>>>> Muhammad Zaka
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> *From:* sr-users [mailto:sr-users-bounces@lists.kamailio.org] *On
>>>> Behalf Of *Abdul Basit
>>>> *Sent:* 08 April 2018 18:43
>>>> *To:* Kamailio (SER) - Users Mailing List <sr-users(a)lists.kamailio.org>;
>>>> Kamailio (SER) - Users Mailing List <sr-users(a)lists.sip-router.org>
>>>> *Subject:* Re: [SR-Users] MSILO: SIP stored offline MESSAGE repetitive
>>>> delivery
>>>>
>>>>
>>>>
>>>> Dear Team,
>>>>
>>>> Still stuck with the issue. Kindly suggest where i did wrong.
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> regards,
>>>>
>>>>
>>>> abdul basit | p: +92 32 1416 4196 | o: +92 30 0841 1445
>>>>
>>>>
>>>>
>>>> On 6 April 2018 at 20:50, Abdul Basit <basit.engg(a)gmail.com> wrote:
>>>>
>>>> Hi team,
>>>>
>>>> I am facing an issue while setting up IM server based on kamailio.
>>>>
>>>> SIP-SIP online messaging is fine. For offline messaging i am using
>>>> msilo module which is storing offline messages in 'silo' table.
>>>>
>>>>
>>>>
>>>> As B-party come online ... it receive offline messages stored in
>>>> database. But
>>>>
>>>> *Problem is*.. these messages will deliver to B-party as many time it
>>>> REGISTER online.
>>>>
>>>>
>>>>
>>>> How can I configure msilo module to mark messages delivery status?
>>>> or how can i delete the delivered messages so that there will be no
>>>> chance of delivering them again on next REGISTER?
>>>>
>>>> Message parts of kamailio.cfg are
>>>> ....
>>>> /* add local domain aliases */
>>>> alias="192.168.10.18"
>>>> port=9060
>>>>
>>>>
>>>> # ----- msilo params -----
>>>> modparam("msilo", "db_url", DBURL)
>>>> modparam("msilo", "db_table", "silo")
>>>> modparam("msilo", "sc_mid", "id")
>>>> modparam("msilo","from_address","sip:registrar@192.168.10.18:9060")
>>>> modparam("msilo","contact_hdr","Contact: registrar@192.168.10.18:9060;m
>>>> silo=yes\r\n")
>>>> modparam("msilo","content_type_hdr","Content-Type: text/plain\r\n")
>>>>
>>>> ........
>>>>
>>>> route[MSILO_MESSAGE] {
>>>> if (!is_method("MESSAGE")) return;
>>>> xlogl("L_NOTICE", "[$rm] r-uri: $ru d-uri: $du \n");
>>>> if (lookup("location")) {
>>>> xlogl("L_NOTICE", "[$rm] -> loaction found. Relying message
>>>> [[$rb]] to the UAC \n");
>>>> t_relay();
>>>> } else {
>>>> if (!t_newtran()) {
>>>> xlogl("L_ERROR", "[$rm] -> ERROR creating new transaction
>>>> \n");
>>>> sl_reply_error();
>>>> exit;
>>>> };
>>>> xlogl("L_NOTICE", "[$rm] -> Storing MSILO_MESSAGE \n
>>>> [$ru]-[$tu]-[$ou] \n ");
>>>> if (m_store("$ru")) {
>>>> xlogl("L_NOTICE", "MSILO: offline message stored! \n");
>>>> if (!t_reply("202", "Accpeted and Strored")) {
>>>> xlogl("L_ERROR", "MSILO: Err sending 202 reply... \n");
>>>> sl_reply_error();
>>>> }
>>>> } else {
>>>> xlogl("L_ERROR", "MSILO: offline message NOT stored... \n");
>>>> if (!t_reply("503", "Service Unavailable")) {
>>>> sl_reply_error();
>>>> }
>>>> }
>>>> }
>>>> exit;
>>>> }
>>>>
>>>> .....
>>>>
>>>> # Handle SIP registrations
>>>> route[REGISTRAR] {
>>>> if (!is_method("REGISTER")) return; // discard all non-REGISTER
>>>> methods
>>>>
>>>> if(isflagset(FLT_NATS)) {
>>>> setbflag(FLB_NATB);
>>>> #!ifdef WITH_NATSIPPING
>>>> setbflag(FLB_NATSIPPING); //# do SIP NAT pinging
>>>> #!endif
>>>> }
>>>> $avp(received) = "sip:" + $si + ":" + $sp + ";transport=" + $proto;
>>>> xlogl("L_INFO", "[$rm] -> UAC actual location $avp(received) \n");
>>>> if (!save("location",0x04)) {
>>>> xlogl("L_ERROR", "[$rm] -> Unable to save user location \n");
>>>> sl_reply_error();
>>>> }
>>>> else {
>>>> xlogl("L_INFO", "[$rm] -> dumping messages with MSILO \n");
>>>> # MSILO - dumping user's offline messages to user
>>>> if (m_dump("$fu")) {
>>>> xlogl("L_NOTICE", "MSILO: offline messages for $fu dumped -
>>>> if they were \n");
>>>> }
>>>> else {
>>>> xlogl("L_NOTICE", "MSILO: no offline messages dumped \n");
>>>> };
>>>> }
>>>> exit;
>>>> }
>>>>
>>>> Any idea?
>>>>
>>>>
>>>> --
>>>> regards,
>>>>
>>>>
>>>> abdul basit
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Kamailio (SER) - Users Mailing List
>>>> sr-users(a)lists.kamailio.org
>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>
>>>>
>>>
>>
>