Hi All,

 

I’ve been trying to find the best way of providing a single dispatcher set to cover all of our outbound SIPtoPSTN providers. However in order to create a single dispatcher set I would need to have a mixture of the available algorithms to provide the required effect.

 

So for example, if I have 4 providers, the first 2 have 2 IP addresses each and the other 2 only have a IP address each. As a standard I would use dispatcher algorithm “8 - use first destination” to move through the 4 providers IP address, 1 at a time as we have a preference of which provider we would like to be used first. However due to CPS and other throughput reasons we get better performance from our first two providers if we round-robin our requests over the two IP addresses for each provider.

 

So What I’m trying to create is a list where I can :

 

round-robin the 2 IPs from Provider1  

if both Provider 1 IPs fail I can then….

round-robin the 2 IPs from Provider2

if both Provider 2 IPs fail I can then….

Dispatch calls to the single IP of Provider 3

If Provider 3 fails then….

Dispatch calls to the single IP of Provider 4

 

I’m, fairly certain that there isn’t anything available straight out of the module for this but I’m not sure on how best to build this functionality in. Maybe I need to look at using multiple sets but hidden behind a single set ID. My main preference is that I want to keep all of the logic for this within Kamailio and have our telephony app servers simply dispatcher a call with a specified dispatcher ID as per usual. Other than this one caveat I’m really open to suggestions on how to fulfil this requirement.

Any assistance will be greatly appreciated.

 

Many Thanks

 

Rob