Hello!
I'm using a $TF variable in my config for some logging purposes. It was
providing the correct string with Kamailio version 5.3.8 on CentOS 6 and 8.
After updating to Kamailio version 5.4.1, the variable started to show
something else.
I also tried versions 5.4.2 and development 5.5.0 on CentOS 6 and the
problem still persists. With version 5.5.0_dev3 this variable shows "pG▒"
for me.
I was wondering if someone else is using it too with Kamailio version 5.4.1
or newer on different platforms and has this issue.
Thanks!
Hello everyone,
On a debian buster i added the repo
deb http://deb.kamailio.org/kamailio51 buster main
deb-src http://deb.kamailio.org/kamailio51 buster main
But when i install i get 5.2, is this right?
additional info:
# apt-cache showpkg kamailio
Package: kamailio
Versions:
5.2.1-1
(/var/lib/apt/lists/deb.debian.org_debian_dists_buster_main_binary-i386_Packages)
(/var/lib/dpkg/status)
Description Language:
File:
/var/lib/apt/lists/deb.debian.org_debian_dists_buster_main_binary-i386_Packages
MD5: df3e15f422439e08c305782f5650a98c
Description Language: en
File:
/var/lib/apt/lists/deb.debian.org_debian_dists_buster_main_i18n_Translation-en
MD5: df3e15f422439e08c305782f5650a98c
5.1.10.1+bpo10
(/var/lib/apt/lists/deb.kamailio.org_kamailio51_dists_buster_main_binary-i386_Packages)
Description Language:
File:
/var/lib/apt/lists/deb.kamailio.org_kamailio51_dists_buster_main_binary-i386_Packages
MD5: ebddf40d0dfbfde1c479419970f978c7
Regards,
David Villasmil
email: david.villasmil.work(a)gmail.com
phone: +34669448337
Folks,
I have a weird situation, when I enable Path header, kamailio behind a
Path proxy,
that kamailio doesn't recognise the ACK to CANCEL and tries to forward it.
Test scenario:
- voice.example.com is a stateless proxy with TLS/UDP bridging to kamailio.
- on the UDP leg to kamailio it will add a Path: header to REGISTER
UA1 = david is calling UA2 = charles and UA2 is sending 603
1 . UA1: preloaded route set (outbound proxy)
# this is the Path proxy
Route: sip:voice.example.com;transport=tls;lr
2. UA2: sends CANCEL 603
- kamailio immediately sends its (per-hop?) ACK
- kamailio forwards CANCEL to UA1
kamailio sent this (per-hop?) ACK
- the Route header is the internal UDP interface of the Path proxy
ACK sip:charles@192.168.1.7:37309;transport=TCP;ob SIP/2.0
Via: SIP/2.0/UDP
192.168.122.99:5064;branch=z9hG4bK735d.6b27c8d09e40462ef47eccf90eb10823.0
Max-Forwards: 70
From: sip:david@voice.example.com;tag=i1acAHsitf2gcN9uHH-ZSyJ5OdT8O5M0
To: <sip:charles@voice.example.com>;tag=LmUY79rIdBQiiSakML4F0lHl271VdUn8
Call-ID: qM3W-fMrzPsvcjRSD1okEp5nbgHCF5Hu
CSeq: 16667 ACK
Route: <sip:192.168.122.100;lr>
Content-Length: 0
3. UA1 sends ACK
kamailio sees this
- top Via is path proxy
- 2nd Via is UA (caller)
- CSeq correctly matches the INVITE
- kamailio does not recognise this ACK from UA1(caller),
tries to forward it, and also resends 603 to UA1(caller) 3 times
ACK sip:charles@voice.example.com SIP/2.0
Via: SIP/2.0/UDP
192.168.122.100:5060;branch=z9hG4bKb3c9a7a3b6ec9e78d0144cda709f7047
Via: SIP/2.0/TLS
192.168.1.17:44925;rport=44925;branch=z9hG4bKPjFM-9gpaJEghJvN19TjnvScCwCoAGzwEc;alias;received=192.168.1.17
Max-Forwards: 70
From: sip:david@voice.example.com;tag=i1acAHsitf2gcN9uHH-ZSyJ5OdT8O5M0
To: sip:charles@voice.example.com;tag=LmUY79rIdBQiiSakML4F0lHl271VdUn8
Call-ID: qM3W-fMrzPsvcjRSD1okEp5nbgHCF5Hu
CSeq: 16667 ACK
Route: <sip:voice.example.com;transport=tls;lr>
Content-Length: 0
Now kamailio should absorb this ACK, as it has already sent its
per-hop ACK. Instead I see
ERROR: <core> [core/forward.c:541]: forward_request(): cannot forward
to af 2, proto 3 no corresponding listening socket
I don't expect kamailio to forward anything at this point. The route
block is route[WITHINDLG] and it calls t_relay() normally.
route[WITHINDLG] {
if (!has_totag()) return;
# sequential request withing a dialog should
# take the path determined by record-routing
if (loose_route()) {
route(DLGURI);
if (is_method("BYE")) {
setflag(FLT_ACC); # do accounting ...
setflag(FLT_ACCFAILED); # ... even if the transaction fails
} else if ( is_method("ACK") ) {
# ACK is forwarded statelessly
route(NATMANAGE);
} else if ( is_method("NOTIFY") ) {
# Add Record-Route for in-dialog NOTIFY as per RFC 6665.
record_route();
}
route(RELAY); # we should absorb this ACK, no?
exit;
}
4. If I remove the Path proxy and kamailio is the TLS proxy at
voice.example.com the call flow works perfectly.
The ACK from caller (david) is absorbed.
5. Regular calls, when UA2 accepts the call, work fine. In-dialog
requests for BYE, from both UAs, work
correctly with this Path proxy. Each UA has the complete 5 element
route set( 2 x Path proxy + kamailio + 2 x Path proxy).
The working route set looks like this:
BYE sip:david@192.168.1.17:44925;transport=TCP;ob SIP/2.0
Via: SIP/2.0/TLS
192.168.1.7:37309;rport;branch=z9hG4bKPjHdUtaUL5AfRcV-SX1Puya4niJKOOQ4VQ;alias
Max-Forwards: 70
From: <sip:charles@voice.example.com>;tag=6zOt.H7w8NL5njV7klwGLlSJy.U5yBC9
To: <sip:david@voice.example.com>;tag=Pa0ORUxA-7lK0BnR4pLJ5n8rn2OvQrJy
Call-ID: 3gWy4Q7O.-zQ-I07lRKHyFyX6azyCSwG
CSeq: 12855 BYE
Route: <sip:voice.example.com;transport=tls;lr;r2=on>
Route: <sip:192.168.122.100;lr;r2=on>
Route: <sip:192.168.122.99:5064;lr>
Route: <sip:192.168.122.100;lr;r2=on>
Route: <sip:voice.example.com;transport=tls;lr;r2=on>
User-Agent: basesip 1.0.0
Content-Length: 0
Any ideas?
Anthony Alba
Hello,
I note that I can use the ndb_redis server config parameter to specify connection details for my redis servers; I also note that the connection string can specify a “db” parameter which can be set from 0 to 9, with the default being 0.
I am looking for a way to dynamically set the db parameter. I do not which to add the same server with different names N times just to select a different db and having N times more connections to it than necessary.
It looks as though I can call redis_cmd(“svrN”, “SELECT dbN”, “init”); but will that propagate properly and set the correct db for all connections to my redis server for the lifetime of the request?
Ideally, I’d like to be able to specify an avp for the db, or have a function to set the db per request.
With every blessing,
—
Daniel Donoghue
Hi,
I want to remove some "Allow" features from my Kamailio SBC like I want to keep following only
Allow: OPTIONS, NOTIFY, INVITE, ACK, BYE, CANCEL, UPDATE, PRACK, REGISTER,
How can I achieve that?
Thanks,
Subject: How to DIY/Setup An Open Source IP PBX Appliance/Server?
Good day from Singapore,
After reading recent reviews, I gather that Asterisk is the gold
standard when it comes to open source VoIP systems and it is the most
famous open source PBX out there.
Article: Compare the Top 10 Best Open Source PBX Software of 2020
Link:
https://www.voipreview.org/business-voip/best-open-source-pbx-software
Article: Top 10 Free Open Source PBX Software Solutions
Link: https://getvoip.com/blog/2016/09/23/best-open-source-pbx-software/
The following is an excerpt from Wikipedia:
"Asterisk is a core component in many commercial products and
open-source projects. Some of the commercial products are hardware and
software bundles, for which the manufacturer supports and releases the
software with an open-source distribution model.
AskoziaPBX, a fork of the m0n0wall project, uses Asterisk PBX software
to realize all telephony functions.
AstLinux is a "Network Appliance for Communications" open-source
software distribution.[15]
FreePBX, an open-source graphical user interface, bundles Asterisk as
the core of its FreePBX Distro[16]
LinuxMCE bundles Asterisk to provide telephony; there is also an
embedded version of Asterisk for OpenWrt routers.
PBX in a Flash/Incredible PBX and trixbox are software PBXes based on
Asterisk.
Elastix previously used Asterisk, HylaFAX, Openfire and Postfix to offer
PBX, fax, instant messaging and email functions, respectively, before
switching to 3CX.
Issabel is an open-source Unified Communications software which uses
Asterisk for telephony functions. It was forked from the open-source
versions of Elastix when 3CX acquired it.
*astTECS uses Asterisk in its VoIP and mobile gateways."
Link: https://en.wikipedia.org/wiki/Asterisk_(PBX)
I would like to DIY/setup an IP PBX appliance/server using free open
source projects.
Which free open source project, mentioned in the list and links above,
would you recommend to DIY my IP PBX appliance/server?
Should I buy a desktop computer or get one of those appliances listed in
the link below to serve as my IP PBX appliance/server?
Link:
https://www.lazada.sg/products/pfsense-iron-metal-case-fanless-intel-celero…
Please also refer me to very good, detailed and well explained
guides/tutorials/manuals on setting up open source IP PBX
appliances/servers.
Lastly, please recommend a cheap and affordable IP phone (suggest brand
and model) to go along with my DIY open source IP PBX appliance/server.
Mr. Turritopsis Dohrnii Teo En Ming, 42 years as of 1st December 2020
Tuesday, is a TARGETED INDIVIDUAL (TI) living in Singapore.
Thank you very much.
-----BEGIN EMAIL SIGNATURE-----
The Gospel for all Targeted Individuals (TIs):
[The New York Times] Microwave Weapons Are Prime Suspect in Ills of
U.S. Embassy Workers
Link:
https://www.nytimes.com/2018/09/01/science/sonic-attack-cuba-microwave.html
********************************************************************************************
Singaporean Targeted Individual Mr. Turritopsis Dohrnii Teo En Ming's
Academic
Qualifications as at 14 Feb 2019 and refugee seeking attempts at the
United Nations Refugee Agency Bangkok (21 Mar 2017), in Taiwan (5 Aug
2019) and Australia (25 Dec 2019 to 9 Jan 2020):
[1] https://tdtemcerts.wordpress.com/
[2] https://tdtemcerts.blogspot.sg/
[3] https://www.scribd.com/user/270125049/Teo-En-Ming
-----END EMAIL SIGNATURE-----
Is there a way to obtain the effect of msg_apply_changes in a branch route?
I want to do:
route[BRANCHMANAGE] {
rtpengine_manage()
msg_apply_changes()
// further mangle the SDP with textops for
// obtuse UAs
}
The reason for this, is that after forking, I have some UAs that are
extremely picky about SDP, and I need to mangle the body to make them
happy. (4000 char limit, 68 attribute limit on SDP body - ever seen
that? Compared with the absolutely gigantic OFFERs from WebRTC
signalling libraries...)
Now rtpengine_manage() and textops are working on separate copies of
the msg body and the results don't stack correctly.
Cheers
Anthony Alba
Thanks for the link.
One issue I've noticed:
If you have an empty comment line (just # on a single line), then the next line is wrongly highlighted as comments.
For example:
#
loadmodule "db_postgres.so"
> i'm using https://github.com/miconda/vscode-kamailio-syntax in VScode.
> its great!
This message contains information that may be privileged or confidential and is the property of the Capgemini Group. It is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please notify the sender immediately and delete all copies of this message.
Hi Patrick,
better to contact our sr-users list with the usage related questions, added to CC.
Have a look to the SDP of the SIP packets to see if it contains the correct IP would be one idea to debug this further.
Feel free to ask again on sr-users after you have got more details.
Cheers,
Henning
--
Henning Westerholt – https://skalatan.de/blog/
Kamailio services – https://gilawa.com<https://gilawa.com/>
From: sr-dev <sr-dev-bounces(a)lists.kamailio.org> On Behalf Of Patrick Leybag
Sent: Wednesday, November 25, 2020 6:26 AM
To: sr-dev(a)lists.kamailio.org
Subject: [sr-dev] kamailio SIP and RTP proxy
Hi, Can someone help me?
I self host a kamailio using my raspberry pi as a load balancer for my two asterisk servers and get a did number. when I call to my DID number it points to my kamailio and kamailio will distribute to asterisk server but the call has no audio. I tried port forwarding ports 5060 for SIP and 10000-20000 for RTP but it still does not work.
Any help is much appreciated. Thank you in advance