Суперкарты

Суперкарты предназначены для использования единой базы карт на нескольких серверах биллинга. При этом один из карточных модулей на одном из серверов выступает первичным хранилищем - в нем заводятся карты, идёт учёт дилеров. Остальные модули на других серверах импортируют карты из супермодуля, если карта не найдена в самом модуле.

Супермодуль должен выступать только в таком качестве. Если на этой же машине необходимы его карты следует создать ещё один модуль и установить супермодуль для него.

Подключение супермодуля производится в конфигурации клиентского карточного модуля:

# конфигурация супер модуля
# база супер модуля
super.db.driver=com.mysql.jdbc.Driver
super.db.url=jdbc:mysql://<IP адрес сервера с супермодулем>/bgbilling?useUnicode=true&characterEncoding=UTF-8&allowUrlInLocalInfile=true&zeroDateTimeBehavior=convertToNull
super.db.user=<mysql логин>
super.db.pswd=<mysql пароль>
super.db.maxActive=5
super.db.maxIdle=2
#код супермодуля
super.mid=X
#договор в супербазе, к которому привязывать активированные карты
super.cid=<код договора>
#опции карты при импорте в текущую базу
#код дилера
#дилер Суперкарты
super.dealer.id=X
#услуга активации
super.act.sid=X
#услуга пополнения баланса
super.pay.sid=X
#код шаблона договора
super.pattern.id=X
#тип локального платежа для карты
#можно указывать одно число, либо соответствия вида <утп1:лтп1>;<утп2:лтп2>.. , где утп - удалённые типы платежа, лтп - в какой локальный тип преобразовывать
super.payment.type=X

При импорте карты из супермодуля в супербазе происходит пометка карты как активированной и привязка к указанному в параметре super.cid договору. При импорте все параметры карты выставляются так, как указано в конфигурации, значения параметров в супермодуле значения не имеет. Вместо X должны быть установлены числовые параметры.

Для активации работы с супермодулем у клиентских модулей карточек ОБЯЗАТЕЛЬНО необходимо правильно заполнить ВСЕ параметры! Если клиентский модуль при поптыке доступа к супермодулю обнаруживает какое-либо несоответствие (отсутствующий параметр, неверные реквизиты базы и т.п.), то он более не пытается осуществить подключение к супербазе до следующей перезагрузки сервера. Это объясняется тем, что, возможно, от модуля и не требуется обращения к супермодулю (вообще не указаны никакие параметры), поэтому каждый раз заново перечитывать конфигурацию нет смысла.