Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Обработка логов CDR происходит с помощью Mediator-а, он реализует парсинг логов.  В поставке модуля phone есть пример DefaultMediator, он парсит логи в формате модуля Phone. Сделан для совместимости. Формат описан тут.

Так же возможно написать свой Mediator для любой АТС. Новые медиаторы будут будут описаны в нашей WiKi.  Вот описание интерфейса Mediator-а:

Блок кода
/**
 * Интерфейс медиатора логов, парсит логи.   
 * 
 */
public interface Mediator
{
	/**
	 * Метод инициализации 
	 * @param setup
	 * @param moduleId
	 * @param device
	 * @param deviceType
	 * @param config
	 * @return
	 * @throws Exception
	 */
    public Object init( Setup setup, int moduleId, VoiceDevice device, VoiceDeviceType deviceType, ParameterMap config )
		throws Exception;
	
	/**
	 * Считывание новых записей за час. Новую запись надо получать так
	 * VoiceRecord record = processor.next();
	 * И потом заполнять все поля 
	 * @param processor
	 * @param hour
	 * @throws Exception
	 */
    public void readHourDataLog( VoiceRecordProcessor processor, Date hour  )
		throws Exception;
	
	/**
	 * Данные по существованию логов. data - массив из 31 элемента, где каждый элемент 
	 * это битовая маска часов конкретного дня месяца.     
	 * @param month
	 * @param data
	 */
    public  void getLogExists( Date month, int [] data );
	
}

Мы добавляем новый тип устройства. На нем выбираем Медиатор.

...