Описание.
Функционал сенсоров в Carbon Billing 5 предназначен для гибкой тарификации с помощью обсчета данных из cdr файлов.
На данный момент сенсоры работают со следующими данными для обсчета:
cdr_ext_id - Уникальный идентификатор абонента, по которому биллинг сможет определить абонента. В учетной записи за этот идентификатор отвечает поле "Внешний ИД"
cdr_unit_id - Единицы измерения в услуге счетчика, например шт.
cdr_sensors_type_id - Тип сенсора. Данный тип создается на вкладке Справочники
cdr_v - Потребляемый объем
С точки зрения биллинга обсчет по сенсорам происходит следующим образом:
- Вместе с сенсором настраивается папка, которая просматривается биллингом. В данной папке биллинг ожидает появления cdr файлов.
- При появлении в данной папке cdr - файла, биллинг считавает его и c помощью парсера определяет необходимые биллингу поля.
Рассмотрим на следующем примере cdr - файла:777;5;1;6
При этом по умолчанию парсер имеет следующий вид:
cdr_ext_id=0 cdr_unit_id=1 cdr_sensors_type_id=2 cdr_v=3
При считывании данного cdr файла логика биллинга будет следующей:
- В 0 поле биллинг считывает значение 777. После этого биллинг будет искать в БД абонента, у которого в учетной записи в поле "Внешний ИД" 777.
- Далее в 1 поле биллинг считывает значение 5. В БД биллинга есть таблица с идентификаторами единиц измерения. Идентификатор 5 отвечает за единицу измерения шт. Далее этот идентификатор попадет в расход абонента и будет сопоставлен с услугой у абонента с единицей измерений шт.
- Во 2 поле в данном cdr файле биллинг считает значение 1 и находит в биллинге тип сенсора с этим идентификатором.
- В 3 поле биллинг считает значение 6. В данном случае биллинг считает это объемом.
- После того, как биллинг считал все значения, он ищет абонента по полю "Внешний ИД" со значением 777, находит у данного абонента услугу с типом Счетчик и смотрит в данной услуге поле Цена за единицу. После этого биллинг умножает объем, полученный из cdr (в данном случае 6) на цену за единицу. Полученное значение записывается в расход абоненту.
Перерасчёт
На текущий момент перерасчёт телематических сенсоров не реализован в интерфейсе и возможен только с использованием API.