The biggest issue with using a SIP proxy as a PBX is performing authentication on outgoing calls to carriers. I use asterisk front-end-ed by the proxy. Like this, I can provision authentication credentials on asterisk and route the call from asterisk to carrier through the proxy. I don't like the idea of running the proxy on the router (if I change the router or the firmware on the router I need to do more work) and therefor I run the proxy and the asterisk on two small arm boxes and I route calls between them. I register the subscribers on the proxy and I route through asterisk only when I need to.
Regards, Ovidiu Sas
On Tue, May 14, 2013 at 10:27 AM, u ueberwachungsstaat@googlemail.com wrote:
I would like to share my experience with kamailio and other home pbx servers.
Kamailio on my kirkwood home router for my 6 SIP users is perhaps overkill: I don't really need mysql and "scalability". But at last I finally managed to make calling between registered users work stable. My voip clients only work in all NAT scenarios if I work around some bugs: to use csipsimple on android I had to change rtpproxy_manage() to rtpproxy_manage("c") in kamailio's default config, so that problems with conflicting c: entries in the SDP go away.
I propose kamailio could ship with a special example kamailio-compatible.cfg that doesn't try to be RFC compliant, but compatible to the most common voip clients. Right now the only thing I would change for this is the option for rtpproxy_manage, but I'm sure others will know more common quirks that could safely be enabled to increase compatibility. I think this compatibility idea is what yate sticks to for their defaults. In freeswitch you also have to do it all manually, and it's much more work to figure things out in their enormous config files.
The other SIP proxies I had tried before kamailio officially fit all my requirements, including support for multihomed dynamic IPs, but contrary to their claims it didn't work. Yate was easy to set up, but the default dialplan is more confusing than powerful and after having made everything work I realised yate was clogging my CPU and RAM and after some time always randomly stopped working. This is with only 2 users connected! It also wasn't possible to fix NAT sdp while leaving the codecs section in the SDP alone at the same time. I tried to debug the code, but the C++ was so complex that I had to give up. Freeswitch was much more difficult to setup, a multihomed setup with dynamic IP was super buggy and it also didn't help that the unintuitive configuration is all in complex unreadable XML configuration files.
Kamailio and rtpproxy don't officially support dynamic IP address, but I can just restart both each time my DSL provider forces me to a new IP address. This happens automatically in the night and is no big hassle really. The most simple, least-featureful solution works best it seems.
Now the last problem I have with kamailio: I don't know how to connect my accounts to my sip providers (i.e. Sipgate, Betamax, Dellmont). I would like a simple way to do this, preferably without other features that always seem to complicate the matters. Is there something more lightweight and simple than asterisk, freeswitch and yate, that people use successfully for this task together with kamailio and rtpproxy?
u
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users