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

Описание работы HOCS

Приложение HOCS (Hydra Online Charging System) загружает в биллинг обработанные CDR, поступающие с HMED-M.

Настройка загрузки в биллинг

amqp:
  # входная очередь, являющаяся выходной очередью HMED-M
  ocs:
    exchange: hocs
    exchange_type: fanout
    queue: ocs
 
# настройки соединения с биллингом
billings:
  hydra:
    main:
      name:     tns      # база данных
      user:     username # пользователь
      password: password # пароль

sources:
  amqp:
    ocs:
      consumer: amqp/ocs
      fields:
		# поля CDR, сохраняемые в биллинг
        # тип/поле
        - string/service_code
        - string/ext_id
        - string/station_a
        - string/station_b
        - string/route_a
        - string/route_b
        - date/call_begin
        - date/call_end
        - integer/duration_sec
        - string/termination_cause

# параметры запускаемых процессов тарификатора
workers:
  # будет запущен один процесс-обработчик
  - sources: [amqp/ocs] # список используемых источников CDR
    rater: local/main   # компонент, занимающийся определением стоимости CDR
    charger: local/main # компонент, тарифицирующий и загружающий CDR в биллинг

# эти параметры изменять не нужно
raters:
  local:
    main:
      billing: hydra/main

chargers:
  local:
    main:
      billing: hydra/main

default.yml

В процедуре EX_AAA_PKG.CDR_PUT для защиты от дублей нужно передавать флаг b_SkipOnExistingExtUniqId, в процедуре ET_CDR_LOADING_PKG.CDR_PUT для этого нужно передавать параметр num_EXT_ID_LOOK_AROUND_HOURS.


Параметры работают так:

  • Если в процедуру не передан num_N_CDR_ID, но передан num_EXT_ID_LOOK_AROUND_HOURS, то Гидра пытается искать существующий звонок в рамках переданного окна в часах. Делает она это по vch_VC_EXT_UNIQ_ID.
  • Если в процедуру не передано значение num_EXT_ID_LOOK_AROUND_HOURS, но передано b_SkipOnExistingExtUniqId, то Гидра пытается искать существующий звонок по vch_VC_EXT_UNIQ_ID среди всех звонков. Никакого окна поиска в часах не используется.
  • No labels