Yo tenía algo así similar implementado con Asterisk, se puede usar varios lenguajes para eso, incluso PHP vía
Asterisk AGI. Pero si no haz usado y configurado una centralita con Asterisk deberías contratar a alguien no es algo sencillo y te tomara varios meses aprenderlo.
Saludos