Hello, dispatcher module in kamailio includes a sample configuration file, quite simple, but ready to use (with re-routing on failure): - http://kamailio.org/docs/modules/4.2.x/modules/dispatcher.html#dispatcher.ex... It does round robin distribution for calls (algorithm 4), but you can change the algorithm to be call load distribution (algorithm 8, which selects least loaded freeswitch based on active calls). You have the option to manage the list of active freeswitch addresses via rpc commands (xmlrpc, jsonrpc) or command line (via kamctl). Kamailio with dispatcher module works perfectly on shared IP deployments (ucarp, vrrp), being the most common installation I do for a SIP load balancer. Note that if you forward the REGISTER requests, then you have to add Path header (see path module in kamailio). Also, perhaps you have to do the selection of freeswitch based on a different algorithm, in case you want registrations from same user to land to same freeswitch. Cheers, Daniel On 02/02/15 09:55, Avi Marcus wrote:
Hi - I know this has come up several times and I see several examples even on the old wiki - but I've never used a SIP proxy before, and I don't understand most of the configuration in the examples.
Here's what I believe is a fairly common use case:
1) I have inbound calls via various carriers. Some only support an IP endpoint (so DNS won't work) and some don't support 302 redirects, so I can't use a stateless FS endpoint either, so I need a sip proxy.
2) I need a SIP proxy that will route calls to various FreeSWITCH endpoints. (Preferably, it should route registration too (or manage registration list itself?))
3) I need the ability to pull freeswitch nodes out of the routing (waiting for them to drain is fine, I don't need failover of live calls) to perform maintenance, and then add them back to the routing.
4) I should be able to have this proxy on a floating IP that I can move /this /too, /without downtime/, for maintenance work.
I think this is mostly handled by the <https://wiki.freeswitch.org/wiki/OpenSIPS_configuration_for_2_or_more_FreeSWITCH_installs> examples <http://wiki.freeswitch.org/wiki/SBC_Setup> I <https://wiki.freeswitch.org/wiki/Enterprise_deployment_OpenSIPS> found <http://www.opensips.org/Documentation/Tutorials-OpenSIPSFreeSwitchIntegration> - but the opensips configuration files are hundreds of lines that I don't understand. If it's just routing calls to a backend, shouldn't that be possible in a small numbers of lines that are more understandable?
I imagine someone can probably just point me to a tutorial/working code that I can use. Several have been shared but I don't recall any one being particularly simple... Also, most of them tell you about compiling code. FS has been released in packages - has opensips? That might cut off many steps from an updated tutorial.
Thanks!
-- Daniel-Constantin Mierla http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda Kamailio World Conference, May 27-29, 2015 Berlin, Germany - http://www.kamailioworld.com