I have a SIP video doorbell device that is only capable of sending H264 and MJPEG video. The site is using 3CX and its associated mobile app, which only supports VP8 and VP9.
Without properly reading the documentation, I went ahead and set up kamailio and rtpengine to sit in between the doorbell and 3CX. I has assumed rtpengine was capable of transcoding video as well as audio, however upon proper inspection it appears that isn't the case.
Is there a kamailio module that is capable of video transcoding, even if it isn't real time, or at a reduced framerate? As the application is a doorbell, it doesn't need to be perfect.
Many thanks,
Luke Kenny
Hi!
I use lxc containers with asterisk wich their are connecting to
kamailio, so far so good they work when i put the containers with
public ips, but when i switched to private ip I have one-way audio.
I tried to with rtpengine but no luck:
rtpengine --table=42 --listen-ng=127.0.0.1:2223
--interface=56.12.19.100 --tos=184 --pidfile=/run/rtpengine.pid
--no-fallback --log-level=7 --log-facility=local3
the setup looks like this:
VM-KAMAILIO-(public ip 56.12.19.100 with static routes for the private
IP) --> LxC(n) (with private class 192.168.0.n)
The problem i think is when LxC asterisk is sending back the 200 OK
from Invite it puts his private ip in the sdp filed:
v=0
o=- 2171376102 3 IN IP4 192.168.0.2
s=Asterisk
c=IN IP4 192.168.0.2
t=0 0
m=audio 11336 RTP/AVP 8 101
a=rtpmap:8 PCMA/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=ptime:20
a=maxptime:150
a=sendrecv
i've loaded the modules, but after this i am stuck....
loadmodule "nathelper.so"
loadmodule "rtpengine.so"
modparam("nathelper", "received_avp", "$avp(RECEIVED)")
modparam("nathelper", "nortpproxy_str", "a=sdpmangled:yes\r\n")
modparam("nathelper", "natping_interval", 30)
modparam("nathelper", "ping_nated_only", 1)
modparam("nathelper", "sipping_bflag", FLB_NATSIPPING)
modparam("nathelper", "sipping_from", "sip:pinger@proxy")
# params needed for NAT traversal in other modules
modparam("nathelper|registrar", "received_avp", "$avp(RECEIVED)")
modparam("usrloc", "nat_bflag", FLB_NATB)
modparam("rtpengine", "rtpengine_sock", "udp:localhost:2223")
modparam("rtpengine", "rtpengine_retr", 2)
modparam("rtpengine", "hash_table_size", 256)
modparam("rtpengine", "hash_table_tout", 600)
Hello,
I am simply trying to parse a SDP body, read it line by line and save the line into a variable for further processing. It seems when using a newline \n as the delimiter it breaks down with errors. How should I treat this issue and properly managed the newline as delimiter?
May 17 12:00:00 ip-10-120-120-12 kamailio[12878]: 0(12878) ERROR: pv [pv_trans.c:2326]: tr_parse_string(): invalid select transformation: select,$var(i),$var(delimeter)}!!
May 17 12:00:00 ip-10-120-120-12 kamailio[12878]: 0(12878) ERROR: <core> [core/pvapi.c:1717]: tr_lookup(): error parsing [{s.select,$var(i),$var(delimeter)}]
Block extracted from .cfg
sdp_get("$avp(sdp)");
$avp(lines) = $(avp(sdp){line.count});
$var(delimeter) = "\n";
$var(i) = 0;
while($var(i) < $avp(lines)) {
# This works
xlog("L_INFO", "==> Position $var(i): $(avp(sdp){s.select,$var(i),\n}) \n");
# This fails
$var(l1) = $(avp(sdp){s.select,$var(i),$var(delimeter)});
# This fails
$var(l2) = $(avp(sdp){s.select,$var(i),\n});
# This fails
$var(l3) = $(avp(sdp){s.select,$var(i),\\n});
# Supposed to do something funny with the $var(line) here
$var(i) = $var(i) + 1;
}
/M
Hi guys,
I'm trying to build a deb file of kamailio 5.4 and when doing
dpkg-buidpackage it gave a bunch of dependency warnings.
I was able to take care a good number of them until I ran into this:
*dpkg-checkbuilddeps: **error*: Unmet build dependencies: gcj-jdk
libval-dev libxmlrpc-c3-dev
None of these packages are in the "apt-cache search" output.
Below is a list of modules currently loaded in 5.2.5 and want to use them
again:
INCLUDE_MODULES="exec rtpengine topoh carrierroute statsd dialplan kex tm
tmx sl rr pv maxfwd usrloc textops sdpops siputils xlog sanity ctl acc
dispatcher cfgutils permissions domain presence presence_xml nathelper
dialog tls htable pike db_mysql userblacklist sqlops websocket xhttp
siptrace tcpops jsonrpcs rtimer"
Thanks
--
Andy Chen
Sr. Telephony Lead Engineer
415 516 5535 (M)
achen@ <achen(a)thinkingphones.com>fuze.com
--
*Confidentiality Notice: The information contained in this e-mail and any
attachments may be confidential. If you are not an intended recipient, you
are hereby notified that any dissemination, distribution or copying of this
e-mail is strictly prohibited. If you have received this e-mail in error,
please notify the sender and permanently delete the e-mail and any
attachments immediately. You should not retain, copy or use this e-mail or
any attachment for any purpose, nor disclose all or any part of the
contents to any other person. Thank you.*
Hello all,
I am having some trouble with Permissions module of Kamailio, regarding the allow_source_address_group() function. In 99.9% of the cases the IP of our partner is allowed as expected, but randomly it can fail (returning -1 for the same IP address that was allowed for many other calls in the meantime).
I can’t understand why it fails and why only « sometimes » - I confirm this append on the same Kamailio box, with same IP and Port of the partner.
In my custom logs:
« X.X.X.X:YYYY is allowed through group Z » —> as expected
and sometimes (like 1% of the cases): « X.X.X.X:YYYY is not allowed - allow_source_address_group returned -1»
It is maybe to note that in the address table, this range is defined as /24 and not /32. Until now it never happened on /32 defined address but I don’t know if it can be correlated.
Would someone have a clue on this?
Versions:
- kamailio 5.5.0 (x86_64/linux) d4c1a1
- debian 9 stretch
- postgresql 11.7
Many thanks!
Romain Untereiner
Co founder at Cantoo
www.cantoo.co
Hi,
I have been investigating distributing incoming/outgoing SIP traffic to
behind Kamailio SIP servers in order to scale and other advantages too!.
SRV type distribution is not a good option, it is already tested.
So, I am trying to deploy Kamailio as a *LoadBalancer* in Tier1 , so it
distributes traffic backbone Kamilio servers in Tier 2. There is a good
presentation as follows, actually I want to implement it.
https://www.kamailio.org/events/2013-KamailioWorld/23-Daniel-Constantin.Mie…
However, I could not find sample configurations and sample study ! Would
you show me sample configurations that Kamailio uses as a Load Balancer if
you have it.
Current Kamailio responsibilities in my system are:
1. Registar Server
2. Presence Server
3. Sip proxy server
4. WebSocket
Maybe it will be very good to separate *Registar *Server & *Presence *Server,
but could not find sample configurations too.
Best Regards
Melek
P.S. If we could collect such configurations, I would share them for
community on Github.
Hi,
I have been investigating distributing incoming/outgoing SIP traffic to
behind Kamailio SIP servers in order to scale and other advantages too!.
SRV type distribution is not a good option, it is already tested.
So, I am trying to deploy Kamailio as a *LoadBalancer* in Tier1 , so it
distributes traffic backbone Kamilio servers in Tier 2. There is a good
presentation as follows, actually I want to implement it.
https://www.kamailio.org/events/2013-KamailioWorld/23-Daniel-Constantin.Mie…
However, I could not find sample configurations and sample study ! Would
you show me sample configurations that Kamailio uses as a Load Balancer if
you have it.
Current Kamailio responsibilities in my system are:
1. Registar Server
2. Presence Server
3. Sip proxy server
4. WebSocket
Maybe it will be very good to separate *Registar *Server & *Presence *Server,
but could not find sample configurations too.
Best Regards
Melek
P.S. If we could collect such configurations, I would share them for
community on Github.
Hello,
I am new to kamailio. And I Am following the work of Franz Edler.
I would like to test it in a local environment without internet connection
on ubuntu. What I don't understand is, to download the packages I
necessarily need the internet. Do I have to use two network interfaces for
the same virtual machine in order to access the internet and make the DNS
configuration locally with the second interface?
Cordially,
*SOUMANA** DJIBO **Ibrahim*
*Ingénieur Réseaux & Télécoms*
*5 Avenue Emile Baudot, 91300 Massy*
+33 07 61 80 20 35
[image: Résultat de recherche d'images pour "logo paris saclay"]
https://www.universite-paris-saclay.fr/
Hi
Using Kamailio 5.4.4 on Debian Buster. I am trying to get feedback of
the MOS scores at call end. However the variables are always <null>.
I have the modparams set as follows:
# ----- rtpengine params -----
modparam("rtpengine", "rtpengine_sock", "udp:localhost:2223")
modparam("rtpengine", "rtpengine_disable_tout", -1)
modparam("rtpengine", "rtpengine_tout_ms", 2000)
modparam("rtpengine", "rtpengine_allow_op", 1)
modparam("rtpengine", "mos_min_pv", "$avp(s:mos_min)")
modparam("rtpengine", "mos_max_pv", "$avp(s:mos_max)")
modparam("rtpengine", "mos_average_pv", "$avp(s:mos_avg)")
modparam("rtpengine", "mos_average_packetloss_pv",
"$avp(s:mos_avg_packetloss)")
modparam("rtpengine", "mos_average_jitter_pv", "$avp(s:mos_avg_jitter)")
modparam("rtpengine", "mos_average_roundtrip_pv",
"$avp(s:mos_avg_roundtrip)")
I am trying to log the values from within the dialog:end event_route:
event_route[dialog:end] {
rtpengine_delete();
xlog("L_INFO","mos_avg=$avp(mos_avg),
packetloss_avg=$avp(mos_avg_packetloss),
jitter_avg=$avp(mos_avg_jitter), latency_avg=$avp(mos_avg_roundtrip),
sip_last_reply=$rs - $ci\n");
return;
}
Am I missing something? I have tried rtpengine_query and
rtpengine_manage in place of the _delete and also tried placing this in
the BYE handling section of WITHIN_DIALOG but no joy.
Any assistance much appreciated!
-Barry
--
-Barry
Hi,
I am looking to get a complete kamailio.cfg file that I can use to set up a
voice termination system.
This system will only connect with peers making multiple
simultaneous calls, registering strictly via ip, accounting calls to sql
db, capable of multiple rate tables for the different peers, call control,
CDR tool and billing capable and call routing to multiple media servers.
I am willing to try to build this myself but at this time I do not even
understand why I need to use "record_route" or "t_precheck_trans" -- :)). I
am a lover of information and cannot find a simple enough text to help in
my kamailio journey -- unlike asterisk.
If you are interested please respond to me directly at edo.ekunwe(a)gmail.com
and I am willing to pay for this information or guidance(if you have the
patience and time to mentor me).
Thanks
--
-----
Nogie Ekunwe