Столкнулся с таким вот не очень приятным фактом. CDR делает запись о звонке только после его завершения. Может, есть какие-нибудь готовые интерфейсы, которые показывают текущие звонки и их длительность. Или идеи, как это реализовать?
В своем биллинге мы записываем время начала звонка в таблицу active_call.
После завершения звонка запись удаляется. Продолжительность рассчитывается как now() - startleg. Хотя мы и пишем также cdr в базу, но реально ее не используем.