Раз используется сторонний онлайн сервис, то есть риски его кратковременной недоступности со всеми вытекающими. Поэтому могу предложить сделать FastAGI сервер (локальный), который будет обрабатывать все звонки, обращаться к внешним сервисам, учитывать их недоступность или возврат ошибки. Результатом FastAGI должен возвращать команду вида Goto(dial_vimpelcom,${EXTEN},1), Goto(dial_rostelecom,${EXTEN},1) и т.д.