Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Обработка логов 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 );
	
}

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

Далее добавляем устройство нашего типа. Указываем путь  к логам.

Настраиваем BGVoiceProcessor. 

Идем на вкладку логов и обрабатываем.  Если что-то не так, то на вкладке ошибки. 

Далее вручную ставим баланс. 

  • No labels