VoIP: Develop FreeSWITCH CPS limit bypassing script
zł750-2250 PLN
Pagado a la entrega
Software to use: FreeSWITCH 1.6.x series, XML config, Lua scripting
I'm looking for FreeSWITCH (1.6.x series) expert/software developer to create a custom CPS bypassing solution.
Problem:
- I'm routing calls to VoIP provider wich has CAPS limits, let's say 10 per second
- My traffic comes in spikes, ie. first second 50 calls, next second no calls, next second 5 calls, next ten seconds no calls, next second 40 calls and so on
- Because of spikes in the first second I get only 10 calls served, 40 are rejected, on the other hand in next seconds there are almost no calls until next spike
I would like to implement:
- Call delaying to avoid hitting provider's CPS limits
- All new calls should be put in some kind of queue (parked or put in fifo I think)
- Every second some script should take first (configurable) 10 calls and try to bridge them
- Thanks to delaying 50 calls from first second in above example will be split to 10 calls in first second, 10 calls in 2nd second, 10 calls in 3rd second and so on
Expected result:
- better trunk saturation, more serviced calls because of avoiding CPS limits
Details & gotchas:
- I need things to be configurable - separate limits per every trunk, multiple trunk support
- Every trunk will have following parameters: CPS, total capacity, queue timeout (for how long call can be put on hold before releasing), max queue size
- On new call: if queue is full or trunk total capacity exhausted than reject call instantly. If CPS limit not reached then try to bridge. If CPS limit reached then delay/put in queue
- Each call in queue must preserve own timeout (max time that script will try to bridge)
- If call is cancelled by originator - instantly stop ringing B-leg and remove call from queue
- Only one call attempt to B-leg of call. Any rejection of call by B-leg should stop further attempts, remove call from queue and hangup A-leg
- Ignore early media - A-Leg should get media only when B-leg is actually dialed
- Performance: solution must run properly in high CPS environment
Technologies to use:
- XML dialplan
- lua scripting
- or custom FS module
Delivery terms:
- XML, scripts, sources, instructions how to configure
- Payment released after confirmed that everything is working as described above
I tried to do this on my own, but had problems especially with cancelling B-leg after originator hangup and passing progress from B leg to A-leg.
Nº del proyecto: #10654183
Sobre el proyecto
2 freelancers están ofertando un promedio de zł2917 por este trabajo
Hi,we are professional app/web developers,i've just checked your project requirements,i'm able to perform your project and you'll be interesting with me,please come in contact with me to discuss for more project detail Más
I am working on last 10+ years on asterisk and many other voip solution like freeswitch and opensips. I can provide any type of business solution which include creation of panel and providing integration with any of th Más