Re: [SR-Users] Huge DB load while using location and registrar module (save()).

2020-01-09 Thread Voip support
You have right i was looking in wrong place in my mysql server. I get
around 200 query per second while 1600 user registered. But mysql shows
usage of 10-50 % peak CPU in top command for 4 core CPU.

I am trying to get information from memory and save myself on REGISTER (i
dont need to update on re-new) and want to delete on Expiry or unregister
using SQLOps module.

Best Regards,
Tom

czw., 9 sty 2020 o 17:40 David Villasmil 
napisał(a):

> This isn't normal at all.
>
> I have ~2500 registered users (tcp) with db_mode 1 and i see around ~300
> sql queries per second.
>
> Regards,
>
> David Villasmil
> email: david.villasmil.w...@gmail.com
> phone: +34669448337
>
>
> On Thu, Jan 9, 2020 at 4:23 PM Sergiu Pojoga  wrote:
>
>> The other option you could do is have usrloc DB in delayed mode. Then,
>> call RPC *ul.flush* in your web app before displaying
>> registration status.
>>
>> http://www.kamailio.org/docs/docbooks/devel/rpc_list/rpc_list.html#ul.flush
>>
>>
>> Not to mention usrloc can be easily optimized by using htable for
>> performance and less stress on DB.
>>
>> https://www.kamailio.org/events/2017-KamailioWorld/Day0/W05-Daniel-Constantin.Mierla-Kamailio-Optimizations.pdf
>>
>>
>> Cheers.
>>
>> On Thu, Jan 9, 2020 at 8:45 AM Voip support 
>> wrote:
>>
>>> Thank you for the idea, it looks great.
>>> However what application i could use to consume the data and put it in
>>> DB.
>>> Is this websocket connection? Which when connect to EVAPI address will
>>> receive the JSON data from kamailio ?
>>>
>>> I wanted to show the regsistered clients in an web interface because i
>>> use kamaiio as proxy with dispatcher to handle active - passive load
>>> balancing. If main server is down we use it to route register and all other
>>> requests to secondary server.
>>> The issue is when people register over kamailio to our sip server then
>>> we dont know the real source IP of client.
>>> We want to store this information somewhere for reference.
>>> So we have active registrations list and know the login and user-agent
>>> and source ip of REGISTER etc...
>>>
>>> Best regards,
>>> Tom
>>>
>>> czw., 9 sty 2020 o 12:47 E. Schmidbauer 
>>> napisał(a):
>>>
  is there a particular reason you need the db updated in real-time and
 "know the count of registered users and the source IP / user-agent /
 username data." ?
 if it's for something outside of kamailio, id recommend using a module
 like evapi to push the data in real-time to an application that can consume
 it.
 you can us routes like:

 route[SAVE_LOCATION] {
 if (!save("location", "0x04")) {
 sl_reply_error();
 exit;
 }
 route(REGISTER_UPDATE_EVENT)
 }

 event_route[usrloc:contact-expired] {
 route(REGISTER_EXPIRE_EVENT);
 }

 route[REGISTER_UPDATE_EVENT] {
 if (reg_fetch_contacts("location", "$fu", "caller")) {
 $var(i) = 0;
 while ($var(i) < $(ulc(caller=>count))) {

 evapi_relay("{\"event\":\"register-update\",\n\"data\":{\"aor\":\"$(ulc(caller=>aor))\",\"addr\":\"$(ulc(caller=>addr)[$var(i)])\"\n}");
 $var(i) = $var(i) + 1;
 }
 }
 }

 route[REGISTER_EXPIRE_EVENT] {
 xlog("L_INFO", "registration [$ulc(exp=>aor)] expired");

 evapi_relay("{\"event\":\"register-expire\",\n\"data\":{\"aor\":\"$ulc(exp=>aor)}\n}");
 }

 On Thu, Jan 9, 2020 at 3:14 AM Voip support 
 wrote:

> Dear Community,
>
> I am facing an issue with using the usrloc and registrar module to
> save registration informations in database.
> It works for me but when tested yesterday with around 1500-1600 users
> i got a lot of queries on database mostly SELECT. I figured out that
> changing db_mode to 0 resolves the issue because it works totally in 
> memory
> (almost no select query on DB).
> So i think its location module.
>
> I tried db_mode=3 and db_mode=2 but both create a lot of load on
> database.
>
> The only function i need is to store some information of REGISTER in
> DB to know the count of registered users and the source IP / user-agent /
> username data.
> It needs to be saved in table on successfull REGISTRATION and removed
> when registration is expired or somebody UN-REGISTER.
>
> When used location module for that there was lots of queries like this
> (2-5 per second):
>
> select
> `contact`,`expires`,`q`,`callid`,`cseq`,`flags`,`cflags`,`user_agent`,`received`,`path`,`socket`,`methods`,`last_modified`,`ruid`,`instance`,`reg_id`,`server_id`,`connection_id`,`keepalive`
> from `location` where `username`='' order by q
>
> update `location` set `expires`='2020-01-08 18:51:39',`q`=-1.00
> 

Re: [SR-Users] [Kamailio-Business] Kamailio/RTC dinner at Fosdem 2020

2020-01-09 Thread Alexandr Dubovikov
Good morning,

As usual +2 

Regards,
Alexandr

On Thu, 9 Jan 2020, 09:52 Daniel-Constantin Mierla 
wrote:

> Hello,
>
> Fosdem 2020 is approaching, there will be a talk from Henning about
> Kamailio, many other friends and related projects are presenting in the
> RTC Devroom (Giacomo Vacca and Federico Cabiddu, Wazo, Asterisk, Homer,
> Janus, Jitsi, CGRateS, Linphone, ...):
>
>   * https://fosdem.org/2020/schedule/track/real_time_communications/
>
> I plan to be at the event and wondering if there are enough interested
> participants for having the traditional Kamailio/RTC dinner. If yes,
> Torrey will help to book a place to accommodate us (first choice could
> be the same restaurant like the last year, if available).
>
> Reply if you want to join the dinner and say how many other people are
> joining you.
>
> Cheers,
> Daniel
>
> --
> Daniel-Constantin Mierla -- www.asipto.com
> www.twitter.com/miconda -- www.linkedin.com/in/miconda
> Kamailio World Conference - April 27-29, 2020, in Berlin --
> www.kamailioworld.com
>
>
> ___
> Kamailio (OpenSER) - business mailing list
> busin...@lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/business
> http://lists.openser-project.org/cgi-bin/mailman/listinfo/business
___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


[SR-Users] Kamailio in Docker Compile Error

2020-01-09 Thread Sam Ware
I am attempting to create my own docker image on Centos 7.  During the
build, I get the following error message during the "make all" phase.
--
CC (gcc) [kamailio] core/cfg.tab.o
LD (gcc) [kamailio] kamailio
make[1]: which: Command not found
make[1]: which: Command not found
make[1]: which: Command not found
make[1]: which: Command not found
make[1]: which: Command not found
make[1]: which: Command not found
CC (gcc) [M db_mysql.so]km_dbase.o
km_dbase.c:36:19: fatal error: mysql.h: No such file or directory
 #include 
   ^
compilation terminated.
make[1]: *** [km_dbase.o] Error 1
make: *** [modules] Error 1


I checked and the mysql.h exists in the /usr/include/mysql directory.

Any thoughts?

FYI, here is my Dockerfile

FROM centos:7
MAINTAINER “Sam D Ware” sw...@o1.com
ENV container docker
RUN (cd /lib/systemd/system/sysinit.target.wants/; for i in ; do [ $i ==
systemd-tmpfiles-setup.service ] || rm -f $i; done);
RUN rm -rf /lib/systemd/system/multi-user.target.wants/ \
&& rm -rf /etc/systemd/system/.wants/ \
&& rm -rf /lib/systemd/system/local-fs.target.wants/ \
&& rm -f /lib/systemd/system/sockets.target.wants/udev \
&& rm -f /lib/systemd/system/sockets.target.wants/initctl \
&& rm -rf /lib/systemd/system/basic.target.wants/ \
&& rm -f /lib/systemd/system/anaconda.target.wants/*
VOLUME [ “/sys/fs/cgroup”]
RUN yum -y install epel-release
RUN yum -y update
RUN yum -y install git-core gcc gcc-c++ flex bison mysql-devel
RUN yum -y install mariadb-devel hiredis hiredis-devel curl nss make
WORKDIR /usr/local/src/
RUN git clone --depth 1 --no-single-branch
https://github.com/kamailio/kamailio kamailio
WORKDIR /usr/local/src/kamailio/
RUN git checkout -b 5.3 origin/5.3
RUN make cfg
COPY modules.lst /usr/local/src/kamailio/src/
RUN make all
RUN make install
RUN groupadd kamailio
RUN adduser --system -g kamailio --shell /bin/false -c "Kamailio" --home
/var/run/kamailio kamailio
RUN cp /usr/local/src/kamailio/pkg/kamailio/obs/kamailio.sysconfig
/etc/sysconfig/kamailio
COPY kamailio.service /etc/systemd/system/kamailio.service
RUN yum clean all; systemctl enable kamailio
CMD ["/usr/sbin/init"]

-- 
Sam  D Ware
___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


Re: [SR-Users] TCP packet bundling

2020-01-09 Thread Alex Balashov
Henning,

Thanks a lot for looking into it! I appreciate it.

On Thu, Jan 09, 2020 at 04:51:32PM +, Henning Westerholt wrote:

> Hello Alex,
> 
> I just briefly looked into it, did not digged into the code much. 
> Kamailio is doing some queuing in TCP async mode (default) e.g. if there 
> is some delay in sending out the data.
> 
> One idea - have a look to the core parameters
> 
> - tcp_wq_blk_size
> 
> - tcp_conn_wq_max
> 
> and change them to see if it makes a difference in your particular 
> situation.
> 
> Cheers,
> 
> Henning
> 
> Am 08.01.20 um 00:39 schrieb Alex Balashov:
> > Yes, I understand the formal properties of TCP and that anything is
> > possible. Thank you for explaining.
> >
> > What I am asking is whether Kamailio takes pains to ensure--I suppose,
> > if one must be labouriously precise, to maximise the probability--that
> > multiple SIP messages are packaged into separate packets. To the extent
> > it can do so.
> >
> > On Tue, Jan 07, 2020 at 05:50:18PM -0500, Greg Troxel wrote:
> >
> >> Alex Balashov  writes:
> >>
> >>> On Tue, Jan 07, 2020 at 03:29:13PM -0500, Greg Troxel wrote:
> >>>
>  there is no real meaning to the end applications to what bytes of user
>  payload are in which TCP segments within packets.
> >>> No, not to the application. But perhaps to third-party packet analysis
> >>> systems which reconstruct SIP state from what they see on the wire. :-)
> >> They need to reassemble segments and cope anyway.   There's a long
> >> history of evading firewalls by creative fragmentation.
> 
> -- 
> Kamailio Merchandising - https://skalatan.de/merchandising/
> Kamailio services - https://skalatan.de/services
> Henning Westerholt - https://skalatan.de/blog/
> 

-- 
Alex Balashov | Principal | Evariste Systems LLC

Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free) 
Web: http://www.evaristesys.com/, http://www.csrpswitch.com/

___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


Re: [SR-Users] Huge DB load while using location and registrar module (save()).

2020-01-09 Thread David Villasmil
This isn't normal at all.

I have ~2500 registered users (tcp) with db_mode 1 and i see around ~300
sql queries per second.

Regards,

David Villasmil
email: david.villasmil.w...@gmail.com
phone: +34669448337


On Thu, Jan 9, 2020 at 4:23 PM Sergiu Pojoga  wrote:

> The other option you could do is have usrloc DB in delayed mode. Then,
> call RPC *ul.flush* in your web app before displaying registration status.
> http://www.kamailio.org/docs/docbooks/devel/rpc_list/rpc_list.html#ul.flush
>
>
> Not to mention usrloc can be easily optimized by using htable for
> performance and less stress on DB.
>
> https://www.kamailio.org/events/2017-KamailioWorld/Day0/W05-Daniel-Constantin.Mierla-Kamailio-Optimizations.pdf
>
>
> Cheers.
>
> On Thu, Jan 9, 2020 at 8:45 AM Voip support  wrote:
>
>> Thank you for the idea, it looks great.
>> However what application i could use to consume the data and put it in
>> DB.
>> Is this websocket connection? Which when connect to EVAPI address will
>> receive the JSON data from kamailio ?
>>
>> I wanted to show the regsistered clients in an web interface because i
>> use kamaiio as proxy with dispatcher to handle active - passive load
>> balancing. If main server is down we use it to route register and all other
>> requests to secondary server.
>> The issue is when people register over kamailio to our sip server then we
>> dont know the real source IP of client.
>> We want to store this information somewhere for reference.
>> So we have active registrations list and know the login and user-agent
>> and source ip of REGISTER etc...
>>
>> Best regards,
>> Tom
>>
>> czw., 9 sty 2020 o 12:47 E. Schmidbauer 
>> napisał(a):
>>
>>>  is there a particular reason you need the db updated in real-time and
>>> "know the count of registered users and the source IP / user-agent /
>>> username data." ?
>>> if it's for something outside of kamailio, id recommend using a module
>>> like evapi to push the data in real-time to an application that can consume
>>> it.
>>> you can us routes like:
>>>
>>> route[SAVE_LOCATION] {
>>> if (!save("location", "0x04")) {
>>> sl_reply_error();
>>> exit;
>>> }
>>> route(REGISTER_UPDATE_EVENT)
>>> }
>>>
>>> event_route[usrloc:contact-expired] {
>>> route(REGISTER_EXPIRE_EVENT);
>>> }
>>>
>>> route[REGISTER_UPDATE_EVENT] {
>>> if (reg_fetch_contacts("location", "$fu", "caller")) {
>>> $var(i) = 0;
>>> while ($var(i) < $(ulc(caller=>count))) {
>>>
>>> evapi_relay("{\"event\":\"register-update\",\n\"data\":{\"aor\":\"$(ulc(caller=>aor))\",\"addr\":\"$(ulc(caller=>addr)[$var(i)])\"\n}");
>>> $var(i) = $var(i) + 1;
>>> }
>>> }
>>> }
>>>
>>> route[REGISTER_EXPIRE_EVENT] {
>>> xlog("L_INFO", "registration [$ulc(exp=>aor)] expired");
>>>
>>> evapi_relay("{\"event\":\"register-expire\",\n\"data\":{\"aor\":\"$ulc(exp=>aor)}\n}");
>>> }
>>>
>>> On Thu, Jan 9, 2020 at 3:14 AM Voip support 
>>> wrote:
>>>
 Dear Community,

 I am facing an issue with using the usrloc and registrar module to save
 registration informations in database.
 It works for me but when tested yesterday with around 1500-1600 users i
 got a lot of queries on database mostly SELECT. I figured out that
 changing db_mode to 0 resolves the issue because it works totally in memory
 (almost no select query on DB).
 So i think its location module.

 I tried db_mode=3 and db_mode=2 but both create a lot of load on
 database.

 The only function i need is to store some information of REGISTER in DB
 to know the count of registered users and the source IP / user-agent /
 username data.
 It needs to be saved in table on successfull REGISTRATION and removed
 when registration is expired or somebody UN-REGISTER.

 When used location module for that there was lots of queries like this
 (2-5 per second):

 select
 `contact`,`expires`,`q`,`callid`,`cseq`,`flags`,`cflags`,`user_agent`,`received`,`path`,`socket`,`methods`,`last_modified`,`ruid`,`instance`,`reg_id`,`server_id`,`connection_id`,`keepalive`
 from `location` where `username`='' order by q

 update `location` set `expires`='2020-01-08 18:51:39',`q`=-1.00
 ,`cseq`=2042,`flags`=0,`cflags`=64,`user_agent`='n/a',`received`='sip::5060',`path`=NULL,`socket`='udp::20051',`methods`=NULL,`last_modified`='2020-01-08
 18:50:39',`callid`='1205705227@
 ',`instance`=NULL,`reg_id`=0,`server_id`=0,`connection_id`=-1,`keepalive`=1,`contact`='sip:1019@xxx:5060'
 where `ruid`='uloc-5e1642a3-2b90-0161'

 Looking up for ideas how to resolve this issue.
 I was thinking of implementing INSERT UPDATE and DELETE based on
 SQLops.
 But how to recognize that REGISTER was expiered?

 I would like location module to work mostly like in-memory.
 For each new registration INSERT entry to DB, each REGISTER re-new an
 UPDATE or 

Re: [SR-Users] Negative ACK issue

2020-01-09 Thread Michael Broughton
I'm using 5.3.1+stretch from deb.kamailio.org for our new setup. Our old
setup was using 4.4.4+wheezy.

On Thu, Jan 9, 2020 at 9:16 AM Daniel-Constantin Mierla 
wrote:

> Is it a recent version of kamailio, or an older one?
>
> Cheers,
> Daniel
> On 09.01.20 16:55, Michael Broughton wrote:
>
> Thank you, this was a helpful sanity check.
>
> We have been capturing SIP traces to try and debug this. I normally just
> look at the traffic on our Kam box because it is convenient to do so, but I
> have also taken traces on our firewall to check the ALG behaviour. The
> provider techs are also tracing these calls on their network as well. The
> ALG is new equipment in our setup, but as far as I can tell it is behaving
> correctly.
>
> The one rather annoying discovery that I made is that when I call directly
> out from the source (Freeswitch in this case) and bypass Kamailio, the
> negative ACK's seem to work. I do not see any retransmissions of their
> final response. And of course the only significant difference in the SIP
> traces is the Via headers.
>
> Anyway, thanks again for your input.
>
>
> On Thu, Jan 9, 2020 at 4:04 AM Lợi Đặng  wrote:
>
>> Hi,
>> You're not going to have the Via header from your `source` sent to your
>> `telco provider` in the negative ACK when the call is not answered, because
>> the ACK in the right hand side of the call is created by the kamailio
>> itself, not a forwarding one by the `source`.
>> Yes, you've guessed it, ACK for an answered call is a forwarding one
>> which contains all the Via headers. It's the SIP spec, not kamailio, you
>> may want to dive into rfc3261 for more details.
>>
>> In this case, your telco's expectation is not correct, my best guess is
>> something went wrong with either your SIP ALG or Telco Provider. SIP
>> capturing may help.
>>
>> rgds,
>> Loi Dang Thanh
>> Phone : +84. 774.735.448
>> Email : loi.dangth...@gmail.com
>>
>>
>> On Thu, Jan 9, 2020 at 2:42 AM Michael Broughton 
>> wrote:
>>
>>> Hello,
>>>
>>> Long time Kam/Ser user, first time poster.
>>>
>>> I'm running into a problem with one of our telco providers when we make
>>> a call that ends up being not in service or some other error. In this case
>>> our ACK's are not working and the phone line stays open for a period
>>> of time until something times out on their end.
>>>
>>> They claim the issue is that our negative ACK message is dropping one of
>>> the Via headers. This is the only case I can find in our setup where
>>> Kamailio does this. But it does drop the first Via, which is the first hop
>>> in our internal network.
>>>
>>> I don't understand why this is a problem for them, and I'm still trying
>>> to get a reasonable explanation out of them. Technically, I don't see why
>>> it would be a problem. This behaviour is not an issue with our other telco
>>> providers. Strangely enough, it is also not an issue for this provider when
>>> we make the calls over their MPLS network (we are switching to the
>>> internet).
>>>
>>> My question is, can this behaviour be changed in Kamailio somehow? Is
>>> there a way for it to keep all the Via headers for negative ACK's?
>>>
>>> Or, do I just need to poke them harder to fix their issues?
>>>
>>> My setup:
>>>
>>> Source -> Kamailio -> Firewall (NAT, SIP ALG) -> Telco Provider
>>>
>>> I hope I have provided enough information.
>>>
>>> Thanks!
>>> Michael
>>>
>>>
>>> ___
>>> Kamailio (SER) - Users Mailing List
>>> sr-users@lists.kamailio.org
>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>
>> ___
>> Kamailio (SER) - Users Mailing List
>> sr-users@lists.kamailio.org
>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>
>
> ___
> Kamailio (SER) - Users Mailing 
> Listsr-users@lists.kamailio.orghttps://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
> --
> Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- 
> www.linkedin.com/in/miconda
> Kamailio World Conference - April 27-29, 2020, in Berlin -- 
> www.kamailioworld.com
>
>
___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


Re: [SR-Users] Huge DB load while using location and registrar module (save()).

2020-01-09 Thread Sergiu Pojoga
The other option you could do is have usrloc DB in delayed mode. Then, call
RPC *ul.flush* in your web app before displaying registration status.
http://www.kamailio.org/docs/docbooks/devel/rpc_list/rpc_list.html#ul.flush


Not to mention usrloc can be easily optimized by using htable for
performance and less stress on DB.
https://www.kamailio.org/events/2017-KamailioWorld/Day0/W05-Daniel-Constantin.Mierla-Kamailio-Optimizations.pdf


Cheers.

On Thu, Jan 9, 2020 at 8:45 AM Voip support  wrote:

> Thank you for the idea, it looks great.
> However what application i could use to consume the data and put it in DB.
> Is this websocket connection? Which when connect to EVAPI address will
> receive the JSON data from kamailio ?
>
> I wanted to show the regsistered clients in an web interface because i use
> kamaiio as proxy with dispatcher to handle active - passive load balancing.
> If main server is down we use it to route register and all other requests
> to secondary server.
> The issue is when people register over kamailio to our sip server then we
> dont know the real source IP of client.
> We want to store this information somewhere for reference.
> So we have active registrations list and know the login and user-agent and
> source ip of REGISTER etc...
>
> Best regards,
> Tom
>
> czw., 9 sty 2020 o 12:47 E. Schmidbauer 
> napisał(a):
>
>>  is there a particular reason you need the db updated in real-time and
>> "know the count of registered users and the source IP / user-agent /
>> username data." ?
>> if it's for something outside of kamailio, id recommend using a module
>> like evapi to push the data in real-time to an application that can consume
>> it.
>> you can us routes like:
>>
>> route[SAVE_LOCATION] {
>> if (!save("location", "0x04")) {
>> sl_reply_error();
>> exit;
>> }
>> route(REGISTER_UPDATE_EVENT)
>> }
>>
>> event_route[usrloc:contact-expired] {
>> route(REGISTER_EXPIRE_EVENT);
>> }
>>
>> route[REGISTER_UPDATE_EVENT] {
>> if (reg_fetch_contacts("location", "$fu", "caller")) {
>> $var(i) = 0;
>> while ($var(i) < $(ulc(caller=>count))) {
>>
>> evapi_relay("{\"event\":\"register-update\",\n\"data\":{\"aor\":\"$(ulc(caller=>aor))\",\"addr\":\"$(ulc(caller=>addr)[$var(i)])\"\n}");
>> $var(i) = $var(i) + 1;
>> }
>> }
>> }
>>
>> route[REGISTER_EXPIRE_EVENT] {
>> xlog("L_INFO", "registration [$ulc(exp=>aor)] expired");
>>
>> evapi_relay("{\"event\":\"register-expire\",\n\"data\":{\"aor\":\"$ulc(exp=>aor)}\n}");
>> }
>>
>> On Thu, Jan 9, 2020 at 3:14 AM Voip support 
>> wrote:
>>
>>> Dear Community,
>>>
>>> I am facing an issue with using the usrloc and registrar module to save
>>> registration informations in database.
>>> It works for me but when tested yesterday with around 1500-1600 users i
>>> got a lot of queries on database mostly SELECT. I figured out that
>>> changing db_mode to 0 resolves the issue because it works totally in memory
>>> (almost no select query on DB).
>>> So i think its location module.
>>>
>>> I tried db_mode=3 and db_mode=2 but both create a lot of load on
>>> database.
>>>
>>> The only function i need is to store some information of REGISTER in DB
>>> to know the count of registered users and the source IP / user-agent /
>>> username data.
>>> It needs to be saved in table on successfull REGISTRATION and removed
>>> when registration is expired or somebody UN-REGISTER.
>>>
>>> When used location module for that there was lots of queries like this
>>> (2-5 per second):
>>>
>>> select
>>> `contact`,`expires`,`q`,`callid`,`cseq`,`flags`,`cflags`,`user_agent`,`received`,`path`,`socket`,`methods`,`last_modified`,`ruid`,`instance`,`reg_id`,`server_id`,`connection_id`,`keepalive`
>>> from `location` where `username`='' order by q
>>>
>>> update `location` set `expires`='2020-01-08 18:51:39',`q`=-1.00
>>> ,`cseq`=2042,`flags`=0,`cflags`=64,`user_agent`='n/a',`received`='sip::5060',`path`=NULL,`socket`='udp::20051',`methods`=NULL,`last_modified`='2020-01-08
>>> 18:50:39',`callid`='1205705227@
>>> ',`instance`=NULL,`reg_id`=0,`server_id`=0,`connection_id`=-1,`keepalive`=1,`contact`='sip:1019@xxx:5060'
>>> where `ruid`='uloc-5e1642a3-2b90-0161'
>>>
>>> Looking up for ideas how to resolve this issue.
>>> I was thinking of implementing INSERT UPDATE and DELETE based on SQLops.
>>> But how to recognize that REGISTER was expiered?
>>>
>>> I would like location module to work mostly like in-memory.
>>> For each new registration INSERT entry to DB, each REGISTER re-new an
>>> UPDATE or DELETE should be triggered.
>>>  So i would expect for 1000 users around 2000 operations per minute.
>>>
>>> Best regards,
>>> Tom
>>>
>>> ___
>>> Kamailio (SER) - Users Mailing List
>>> sr-users@lists.kamailio.org
>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>
>> ___
>> Kamailio (SER) - 

Re: [SR-Users] Huge DB load while using location and registrar module (save()).

2020-01-09 Thread Henning Westerholt
Hello,

20.000 - 50.000 queries per seconds from the usrloc module sounds really 
strange. This should definitely not happen for a normal few thousand user test.

I would suggest to look deeper into it, maybe your test setup is doing strange 
things here, or there is an error in the cfg. Ideally you can reproduce it with 
a smaller user set. Then you can use debugging mode to have a look what is 
actually causing this queries.

Cheers,

Henning


Am 09.01.20 um 09:12 schrieb Voip support:
Dear Community,

I am facing an issue with using the usrloc and registrar module to save 
registration informations in database.
It works for me but when tested yesterday with around 1500-1600 users i got a 
lot of queries on database mostly SELECT. I figured out that changing db_mode 
to 0 resolves the issue because it works totally in memory (almost no select 
query on DB).
So i think its location module.

I tried db_mode=3 and db_mode=2 but both create a lot of load on database.

The only function i need is to store some information of REGISTER in DB to know 
the count of registered users and the source IP / user-agent / username data.
It needs to be saved in table on successfull REGISTRATION and removed when 
registration is expired or somebody UN-REGISTER.

When used location module for that there was lots of queries like this 
(2-5 per second):

select 
`contact`,`expires`,`q`,`callid`,`cseq`,`flags`,`cflags`,`user_agent`,`received`,`path`,`socket`,`methods`,`last_modified`,`ruid`,`instance`,`reg_id`,`server_id`,`connection_id`,`keepalive`
 from `location` where `username`='' order by q

update `location` set `expires`='2020-01-08 18:51:39',`q`=-1.00 
,`cseq`=2042,`flags`=0,`cflags`=64,`user_agent`='n/a',`received`='sip::5060',`path`=NULL,`socket`='udp::20051',`methods`=NULL,`last_modified`='2020-01-08
 
18:50:39',`callid`='1205705227@',`instance`=NULL,`reg_id`=0,`server_id`=0,`connection_id`=-1,`keepalive`=1,`contact`='sip:1019@xxx:5060'
 where `ruid`='uloc-5e1642a3-2b90-0161'

Looking up for ideas how to resolve this issue.
I was thinking of implementing INSERT UPDATE and DELETE based on SQLops.
But how to recognize that REGISTER was expiered?

I would like location module to work mostly like in-memory.
For each new registration INSERT entry to DB, each REGISTER re-new an UPDATE or 
DELETE should be triggered.
 So i would expect for 1000 users around 2000 operations per minute.

Best regards,
Tom




___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


--
Kamailio Merchandising - https://skalatan.de/merchandising/
Kamailio services - https://skalatan.de/services
Henning Westerholt - https://skalatan.de/blog/
___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


Re: [SR-Users] Negative ACK issue

2020-01-09 Thread Daniel-Constantin Mierla
Is it a recent version of kamailio, or an older one?

Cheers,
Daniel

On 09.01.20 16:55, Michael Broughton wrote:
> Thank you, this was a helpful sanity check.
>
> We have been capturing SIP traces to try and debug this. I normally
> just look at the traffic on our Kam box because it is convenient to do
> so, but I have also taken traces on our firewall to check the ALG
> behaviour. The provider techs are also tracing these calls on their
> network as well. The ALG is new equipment in our setup, but as far as
> I can tell it is behaving correctly.
>
> The one rather annoying discovery that I made is that when I call
> directly out from the source (Freeswitch in this case) and bypass
> Kamailio, the negative ACK's seem to work. I do not see any
> retransmissions of their final response. And of course the only
> significant difference in the SIP traces is the Via headers.
>
> Anyway, thanks again for your input.
>
>
> On Thu, Jan 9, 2020 at 4:04 AM Lợi Đặng  > wrote:
>
> Hi, 
> You're not going to have the Via header from your `source` sent to
> your  `telco provider` in the negative ACK when the call is not
> answered, because the ACK in the right hand side of the call is
> created by the kamailio itself, not a forwarding one by the `source`.
> Yes, you've guessed it, ACK for an answered call is a forwarding
> one which contains all the Via headers. It's the SIP spec, not
> kamailio, you may want to dive into rfc3261 for more details.
>
> In this case, your telco's expectation is not correct, my best
> guess is something went wrong with either your SIP ALG or Telco
> Provider. SIP capturing may help.
>
> rgds,
> Loi Dang Thanh
> Phone : +84. 774.735.448
> Email : loi.dangth...@gmail.com 
>
>
> On Thu, Jan 9, 2020 at 2:42 AM Michael Broughton
> mailto:mbrough...@advanis.net>> wrote:
>
> Hello,
>
> Long time Kam/Ser user, first time poster.
>
> I'm running into a problem with one of our telco providers
> when we make a call that ends up being not in service or some
> other error. In this case our ACK's are not working and the
> phone line stays open for a period of time until something
> times out on their end.
>
> They claim the issue is that our negative ACK message is
> dropping one of the Via headers. This is the only case I can
> find in our setup where Kamailio does this. But it does drop
> the first Via, which is the first hop in our internal network.
>
> I don't understand why this is a problem for them, and I'm
> still trying to get a reasonable explanation out of them.
> Technically, I don't see why it would be a problem. This
> behaviour is not an issue with our other telco providers.
> Strangely enough, it is also not an issue for this provider
> when we make the calls over their MPLS network (we are
> switching to the internet).
>
> My question is, can this behaviour be changed in Kamailio
> somehow? Is there a way for it to keep all the Via headers for
> negative ACK's?
>
> Or, do I just need to poke them harder to fix their issues?
>
> My setup:
>
> Source -> Kamailio -> Firewall (NAT, SIP ALG) -> Telco Provider
>
> I hope I have provided enough information.
>
> Thanks!
> Michael
>
>
> ___
> Kamailio (SER) - Users Mailing List
> sr-users@lists.kamailio.org 
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
> ___
> Kamailio (SER) - Users Mailing List
> sr-users@lists.kamailio.org 
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
>
> ___
> Kamailio (SER) - Users Mailing List
> sr-users@lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users

-- 
Daniel-Constantin Mierla -- www.asipto.com
www.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio World Conference - April 27-29, 2020, in Berlin -- 
www.kamailioworld.com

___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


Re: [SR-Users] Negative ACK issue

2020-01-09 Thread Michael Broughton
Thank you, this was a helpful sanity check.

We have been capturing SIP traces to try and debug this. I normally just
look at the traffic on our Kam box because it is convenient to do so, but I
have also taken traces on our firewall to check the ALG behaviour. The
provider techs are also tracing these calls on their network as well. The
ALG is new equipment in our setup, but as far as I can tell it is behaving
correctly.

The one rather annoying discovery that I made is that when I call directly
out from the source (Freeswitch in this case) and bypass Kamailio, the
negative ACK's seem to work. I do not see any retransmissions of their
final response. And of course the only significant difference in the SIP
traces is the Via headers.

Anyway, thanks again for your input.


On Thu, Jan 9, 2020 at 4:04 AM Lợi Đặng  wrote:

> Hi,
> You're not going to have the Via header from your `source` sent to your
> `telco provider` in the negative ACK when the call is not answered, because
> the ACK in the right hand side of the call is created by the kamailio
> itself, not a forwarding one by the `source`.
> Yes, you've guessed it, ACK for an answered call is a forwarding one which
> contains all the Via headers. It's the SIP spec, not kamailio, you may want
> to dive into rfc3261 for more details.
>
> In this case, your telco's expectation is not correct, my best guess is
> something went wrong with either your SIP ALG or Telco Provider. SIP
> capturing may help.
>
> rgds,
> Loi Dang Thanh
> Phone : +84. 774.735.448
> Email : loi.dangth...@gmail.com
>
>
> On Thu, Jan 9, 2020 at 2:42 AM Michael Broughton 
> wrote:
>
>> Hello,
>>
>> Long time Kam/Ser user, first time poster.
>>
>> I'm running into a problem with one of our telco providers when we make a
>> call that ends up being not in service or some other error. In this case
>> our ACK's are not working and the phone line stays open for a period
>> of time until something times out on their end.
>>
>> They claim the issue is that our negative ACK message is dropping one of
>> the Via headers. This is the only case I can find in our setup where
>> Kamailio does this. But it does drop the first Via, which is the first hop
>> in our internal network.
>>
>> I don't understand why this is a problem for them, and I'm still trying
>> to get a reasonable explanation out of them. Technically, I don't see why
>> it would be a problem. This behaviour is not an issue with our other telco
>> providers. Strangely enough, it is also not an issue for this provider when
>> we make the calls over their MPLS network (we are switching to the
>> internet).
>>
>> My question is, can this behaviour be changed in Kamailio somehow? Is
>> there a way for it to keep all the Via headers for negative ACK's?
>>
>> Or, do I just need to poke them harder to fix their issues?
>>
>> My setup:
>>
>> Source -> Kamailio -> Firewall (NAT, SIP ALG) -> Telco Provider
>>
>> I hope I have provided enough information.
>>
>> Thanks!
>> Michael
>>
>>
>> ___
>> Kamailio (SER) - Users Mailing List
>> sr-users@lists.kamailio.org
>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>
> ___
> Kamailio (SER) - Users Mailing List
> sr-users@lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


Re: [SR-Users] Huge DB load while using location and registrar module (save()).

2020-01-09 Thread Voip support
Thank you for the idea, it looks great.
However what application i could use to consume the data and put it in DB.
Is this websocket connection? Which when connect to EVAPI address will
receive the JSON data from kamailio ?

I wanted to show the regsistered clients in an web interface because i use
kamaiio as proxy with dispatcher to handle active - passive load balancing.
If main server is down we use it to route register and all other requests
to secondary server.
The issue is when people register over kamailio to our sip server then we
dont know the real source IP of client.
We want to store this information somewhere for reference.
So we have active registrations list and know the login and user-agent and
source ip of REGISTER etc...

Best regards,
Tom

czw., 9 sty 2020 o 12:47 E. Schmidbauer  napisał(a):

>  is there a particular reason you need the db updated in real-time and
> "know the count of registered users and the source IP / user-agent /
> username data." ?
> if it's for something outside of kamailio, id recommend using a module
> like evapi to push the data in real-time to an application that can consume
> it.
> you can us routes like:
>
> route[SAVE_LOCATION] {
> if (!save("location", "0x04")) {
> sl_reply_error();
> exit;
> }
> route(REGISTER_UPDATE_EVENT)
> }
>
> event_route[usrloc:contact-expired] {
> route(REGISTER_EXPIRE_EVENT);
> }
>
> route[REGISTER_UPDATE_EVENT] {
> if (reg_fetch_contacts("location", "$fu", "caller")) {
> $var(i) = 0;
> while ($var(i) < $(ulc(caller=>count))) {
>
> evapi_relay("{\"event\":\"register-update\",\n\"data\":{\"aor\":\"$(ulc(caller=>aor))\",\"addr\":\"$(ulc(caller=>addr)[$var(i)])\"\n}");
> $var(i) = $var(i) + 1;
> }
> }
> }
>
> route[REGISTER_EXPIRE_EVENT] {
> xlog("L_INFO", "registration [$ulc(exp=>aor)] expired");
>
> evapi_relay("{\"event\":\"register-expire\",\n\"data\":{\"aor\":\"$ulc(exp=>aor)}\n}");
> }
>
> On Thu, Jan 9, 2020 at 3:14 AM Voip support  wrote:
>
>> Dear Community,
>>
>> I am facing an issue with using the usrloc and registrar module to save
>> registration informations in database.
>> It works for me but when tested yesterday with around 1500-1600 users i
>> got a lot of queries on database mostly SELECT. I figured out that
>> changing db_mode to 0 resolves the issue because it works totally in memory
>> (almost no select query on DB).
>> So i think its location module.
>>
>> I tried db_mode=3 and db_mode=2 but both create a lot of load on database.
>>
>> The only function i need is to store some information of REGISTER in DB
>> to know the count of registered users and the source IP / user-agent /
>> username data.
>> It needs to be saved in table on successfull REGISTRATION and removed
>> when registration is expired or somebody UN-REGISTER.
>>
>> When used location module for that there was lots of queries like this
>> (2-5 per second):
>>
>> select
>> `contact`,`expires`,`q`,`callid`,`cseq`,`flags`,`cflags`,`user_agent`,`received`,`path`,`socket`,`methods`,`last_modified`,`ruid`,`instance`,`reg_id`,`server_id`,`connection_id`,`keepalive`
>> from `location` where `username`='' order by q
>>
>> update `location` set `expires`='2020-01-08 18:51:39',`q`=-1.00
>> ,`cseq`=2042,`flags`=0,`cflags`=64,`user_agent`='n/a',`received`='sip::5060',`path`=NULL,`socket`='udp::20051',`methods`=NULL,`last_modified`='2020-01-08
>> 18:50:39',`callid`='1205705227@
>> ',`instance`=NULL,`reg_id`=0,`server_id`=0,`connection_id`=-1,`keepalive`=1,`contact`='sip:1019@xxx:5060'
>> where `ruid`='uloc-5e1642a3-2b90-0161'
>>
>> Looking up for ideas how to resolve this issue.
>> I was thinking of implementing INSERT UPDATE and DELETE based on SQLops.
>> But how to recognize that REGISTER was expiered?
>>
>> I would like location module to work mostly like in-memory.
>> For each new registration INSERT entry to DB, each REGISTER re-new an
>> UPDATE or DELETE should be triggered.
>>  So i would expect for 1000 users around 2000 operations per minute.
>>
>> Best regards,
>> Tom
>>
>> ___
>> Kamailio (SER) - Users Mailing List
>> sr-users@lists.kamailio.org
>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>
> ___
> Kamailio (SER) - Users Mailing List
> sr-users@lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


[SR-Users] Kamailio v5.3.2 Released

2020-01-09 Thread Daniel-Constantin Mierla
Hello,

Kamailio SIP Server v5.3.2 stable release is out.

This is a maintenance release of the latest stable branch, 5.3, that
includes fixes since the release of v5.3.1. There is no change to
database schema or configuration language structure that you have to do
on previous installations of v5.3.x. Deployments running previous v5.3.x
versions are strongly recommended to be upgraded to v5.3.2.

For more details about version 5.3.2 (including links and guidelines to
download the tarball or from GIT repository), visit:

  * https://www.kamailio.org/w/2020/01/kamailio-v5-3-2-released/

RPM, Debian/Ubuntu packages will be available soon as well.

Many thanks to all contributing and using Kamailio!

Cheers,
Daniel

-- 
Daniel-Constantin Mierla -- www.asipto.com
www.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio World Conference - April 27-29, 2020, in Berlin -- 
www.kamailioworld.com


___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


Re: [SR-Users] Huge DB load while using location and registrar module (save()).

2020-01-09 Thread E. Schmidbauer
 is there a particular reason you need the db updated in real-time and
"know the count of registered users and the source IP / user-agent /
username data." ?
if it's for something outside of kamailio, id recommend using a module like
evapi to push the data in real-time to an application that can consume it.
you can us routes like:

route[SAVE_LOCATION] {
if (!save("location", "0x04")) {
sl_reply_error();
exit;
}
route(REGISTER_UPDATE_EVENT)
}

event_route[usrloc:contact-expired] {
route(REGISTER_EXPIRE_EVENT);
}

route[REGISTER_UPDATE_EVENT] {
if (reg_fetch_contacts("location", "$fu", "caller")) {
$var(i) = 0;
while ($var(i) < $(ulc(caller=>count))) {

evapi_relay("{\"event\":\"register-update\",\n\"data\":{\"aor\":\"$(ulc(caller=>aor))\",\"addr\":\"$(ulc(caller=>addr)[$var(i)])\"\n}");
$var(i) = $var(i) + 1;
}
}
}

route[REGISTER_EXPIRE_EVENT] {
xlog("L_INFO", "registration [$ulc(exp=>aor)] expired");

evapi_relay("{\"event\":\"register-expire\",\n\"data\":{\"aor\":\"$ulc(exp=>aor)}\n}");
}

On Thu, Jan 9, 2020 at 3:14 AM Voip support  wrote:

> Dear Community,
>
> I am facing an issue with using the usrloc and registrar module to save
> registration informations in database.
> It works for me but when tested yesterday with around 1500-1600 users i
> got a lot of queries on database mostly SELECT. I figured out that
> changing db_mode to 0 resolves the issue because it works totally in memory
> (almost no select query on DB).
> So i think its location module.
>
> I tried db_mode=3 and db_mode=2 but both create a lot of load on database.
>
> The only function i need is to store some information of REGISTER in DB to
> know the count of registered users and the source IP / user-agent /
> username data.
> It needs to be saved in table on successfull REGISTRATION and removed when
> registration is expired or somebody UN-REGISTER.
>
> When used location module for that there was lots of queries like this
> (2-5 per second):
>
> select
> `contact`,`expires`,`q`,`callid`,`cseq`,`flags`,`cflags`,`user_agent`,`received`,`path`,`socket`,`methods`,`last_modified`,`ruid`,`instance`,`reg_id`,`server_id`,`connection_id`,`keepalive`
> from `location` where `username`='' order by q
>
> update `location` set `expires`='2020-01-08 18:51:39',`q`=-1.00
> ,`cseq`=2042,`flags`=0,`cflags`=64,`user_agent`='n/a',`received`='sip::5060',`path`=NULL,`socket`='udp::20051',`methods`=NULL,`last_modified`='2020-01-08
> 18:50:39',`callid`='1205705227@
> ',`instance`=NULL,`reg_id`=0,`server_id`=0,`connection_id`=-1,`keepalive`=1,`contact`='sip:1019@xxx:5060'
> where `ruid`='uloc-5e1642a3-2b90-0161'
>
> Looking up for ideas how to resolve this issue.
> I was thinking of implementing INSERT UPDATE and DELETE based on SQLops.
> But how to recognize that REGISTER was expiered?
>
> I would like location module to work mostly like in-memory.
> For each new registration INSERT entry to DB, each REGISTER re-new an
> UPDATE or DELETE should be triggered.
>  So i would expect for 1000 users around 2000 operations per minute.
>
> Best regards,
> Tom
>
> ___
> Kamailio (SER) - Users Mailing List
> sr-users@lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


Re: [SR-Users] Negative ACK issue

2020-01-09 Thread Lợi Đặng
Hi,
You're not going to have the Via header from your `source` sent to your
`telco provider` in the negative ACK when the call is not answered, because
the ACK in the right hand side of the call is created by the kamailio
itself, not a forwarding one by the `source`.
Yes, you've guessed it, ACK for an answered call is a forwarding one which
contains all the Via headers. It's the SIP spec, not kamailio, you may want
to dive into rfc3261 for more details.

In this case, your telco's expectation is not correct, my best guess is
something went wrong with either your SIP ALG or Telco Provider. SIP
capturing may help.

rgds,
Loi Dang Thanh
Phone : +84. 774.735.448
Email : loi.dangth...@gmail.com


On Thu, Jan 9, 2020 at 2:42 AM Michael Broughton 
wrote:

> Hello,
>
> Long time Kam/Ser user, first time poster.
>
> I'm running into a problem with one of our telco providers when we make a
> call that ends up being not in service or some other error. In this case
> our ACK's are not working and the phone line stays open for a period
> of time until something times out on their end.
>
> They claim the issue is that our negative ACK message is dropping one of
> the Via headers. This is the only case I can find in our setup where
> Kamailio does this. But it does drop the first Via, which is the first hop
> in our internal network.
>
> I don't understand why this is a problem for them, and I'm still trying to
> get a reasonable explanation out of them. Technically, I don't see why it
> would be a problem. This behaviour is not an issue with our other telco
> providers. Strangely enough, it is also not an issue for this provider when
> we make the calls over their MPLS network (we are switching to the
> internet).
>
> My question is, can this behaviour be changed in Kamailio somehow? Is
> there a way for it to keep all the Via headers for negative ACK's?
>
> Or, do I just need to poke them harder to fix their issues?
>
> My setup:
>
> Source -> Kamailio -> Firewall (NAT, SIP ALG) -> Telco Provider
>
> I hope I have provided enough information.
>
> Thanks!
> Michael
>
>
> ___
> Kamailio (SER) - Users Mailing List
> sr-users@lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


[SR-Users] Kamailio/RTC dinner at Fosdem 2020

2020-01-09 Thread Daniel-Constantin Mierla
Hello,

Fosdem 2020 is approaching, there will be a talk from Henning about
Kamailio, many other friends and related projects are presenting in the
RTC Devroom (Giacomo Vacca and Federico Cabiddu, Wazo, Asterisk, Homer,
Janus, Jitsi, CGRateS, Linphone, ...):

  * https://fosdem.org/2020/schedule/track/real_time_communications/

I plan to be at the event and wondering if there are enough interested
participants for having the traditional Kamailio/RTC dinner. If yes,
Torrey will help to book a place to accommodate us (first choice could
be the same restaurant like the last year, if available).

Reply if you want to join the dinner and say how many other people are
joining you.

Cheers,
Daniel

-- 
Daniel-Constantin Mierla -- www.asipto.com
www.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio World Conference - April 27-29, 2020, in Berlin -- 
www.kamailioworld.com


___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


Re: [SR-Users] Ask for Siremis document

2020-01-09 Thread Lợi Đặng
Hi, likely no doc provided.
You may want to use CLI tools such as kamcmd/kamctl or look at the database
to verify kamailio's configuration for every trial operation

rgds,

Loi Dang Thanh
Phone : +84. 774.735.448
Email : loi.dangth...@gmail.com


On Thu, Jan 9, 2020 at 2:10 PM Thanh Tran  wrote:

> Hi,
>
> I looking for Administration Document for Siremis but can't find it.
>
> Can you share document ?
>
> Thanks,
> ___
> Kamailio (SER) - Users Mailing List
> sr-users@lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


[SR-Users] Huge DB load while using location and registrar module (save()).

2020-01-09 Thread Voip support
Dear Community,

I am facing an issue with using the usrloc and registrar module to save
registration informations in database.
It works for me but when tested yesterday with around 1500-1600 users i got
a lot of queries on database mostly SELECT. I figured out that
changing db_mode to 0 resolves the issue because it works totally in memory
(almost no select query on DB).
So i think its location module.

I tried db_mode=3 and db_mode=2 but both create a lot of load on database.

The only function i need is to store some information of REGISTER in DB to
know the count of registered users and the source IP / user-agent /
username data.
It needs to be saved in table on successfull REGISTRATION and removed when
registration is expired or somebody UN-REGISTER.

When used location module for that there was lots of queries like this
(2-5 per second):

select
`contact`,`expires`,`q`,`callid`,`cseq`,`flags`,`cflags`,`user_agent`,`received`,`path`,`socket`,`methods`,`last_modified`,`ruid`,`instance`,`reg_id`,`server_id`,`connection_id`,`keepalive`
from `location` where `username`='' order by q

update `location` set `expires`='2020-01-08 18:51:39',`q`=-1.00
,`cseq`=2042,`flags`=0,`cflags`=64,`user_agent`='n/a',`received`='sip::5060',`path`=NULL,`socket`='udp::20051',`methods`=NULL,`last_modified`='2020-01-08
18:50:39',`callid`='1205705227@
',`instance`=NULL,`reg_id`=0,`server_id`=0,`connection_id`=-1,`keepalive`=1,`contact`='sip:1019@xxx:5060'
where `ruid`='uloc-5e1642a3-2b90-0161'

Looking up for ideas how to resolve this issue.
I was thinking of implementing INSERT UPDATE and DELETE based on SQLops.
But how to recognize that REGISTER was expiered?

I would like location module to work mostly like in-memory.
For each new registration INSERT entry to DB, each REGISTER re-new an
UPDATE or DELETE should be triggered.
 So i would expect for 1000 users around 2000 operations per minute.

Best regards,
Tom
___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


Re: [SR-Users] Releasing Kamailio v5.3.2

2020-01-09 Thread Daniel-Constantin Mierla
Hello,

quick reminder that the v5.3.2 will be released today. Until the release
announcement is out, any commit to git branch 5.3 should be kept on
hold, asking on sr-dev or irc channel and getting the ack before pushing
it, so it doesn't interfere with the release build process.

Cheers,
Daniel

On 07.01.20 16:44, Daniel-Constantin Mierla wrote:
> Hello,
>
> not so many fixes since the release of 5.3.1, but it looks enough to
> release a new minor version from branch 5.3. I am planning to do in on
> Thursday, Jan 9, 2020, if there are no new reports of relevant issues
> that make us to reconsider and postpone.
>
> Soon after we should probably do a release from branch 5.2 as well as
> the last one from branch 5.1.
>
> Cheers,
> Daniel
>
-- 
Daniel-Constantin Mierla -- www.asipto.com
www.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio World Conference - April 27-29, 2020, in Berlin -- 
www.kamailioworld.com


___
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users