Конфигурация
После установки сервера и клиента сервер должен быть настроен, для этого откройте в клиенте пункт меню Сервис=>Настройка=>Конфигурация. На тулбаре кликните по иконке "Новый элемент" для создания новой конфигурации сервера.
Если в дальнейшем где-то упоминается Конфигурация сервера, то следует знать, что речь идёт именно об этой конфигурации. В биллинге много различных редакторов конфигурации, ориентироваться в них на стадии освоения системы может быть затруднительно.
ПАРАМЕТР |
ТИП |
ЗНАЧЕНИЕ ПО УМОЛЧАНИЮ |
ОПИСАНИЕ |
Управление API |
|||
api.enable |
логический |
false |
Включение Cuscom API |
web.api.enable |
логический |
false |
Включение Web API |
Системные настройки сервера |
|||
temp.dir.path |
строка |
- |
Путь к временному каталогу, используется обработчиком логов для загрузки логов по FTP и сервером биллинга для хранения промежуточных файлов. Если не указан, то используется каталог BGBillingServer/tmp |
Система алармов - экстренных оповещений |
|||
alarm.mail |
строка |
- |
На какой адрес высылать оповещения, указать обязательно! |
alarm.disabled |
строка |
- |
Алармы, которые надо игнорировать. Ключи через запятую. |
alarm.send.to.log |
строка |
- |
Алармы, которые направляются в log. Необходимо указать список ключей через запятую или символ "*", чтобы ВСЕ алармы писались в лог. |
BGSecure |
|||
bgsecure.check |
логический |
true |
Проверка прав, false - не проверять |
bgsecure.log |
логический |
true |
Логирование действий в журнале событий, false - не логировать |
Протокол |
|||
server.response.debug |
логический |
false |
Вывод в server.log XML, возвращаемых клиенту в режиме DEBUG |
header.name.remote.addr |
строка |
X-Real-IP |
Заголовок HTTP-пакета, в котором передаётся IP-адрес клиента, если параметр не указан или не передан, то используется request.getRemoteAddr() нужен при проксировании запросов с помощью ngin |
max.post.size |
число |
10 000 000 |
Максимальный размер запроса к серверу (в байтах), запросы большего размера обрезаются, что может привести к некорректной работе сервера. |
XSLT |
|||
xslt.cache |
логический |
true |
Кэширование XSLT-шаблонов памяти: true - включить Необходимо отключать опцию на момент модификации любых XSLT-шаблонов |
contractcard.1 |
строка |
- |
Заголовок и адрес к шаблону карточки (доступны в свойствах договора), например card_inet.xsl:Карта регистрации |
#-----------------------------------------
# Настройки интерфейса BGBillingClient
#-----------------------------------------
# Порядок элементов в дереве договора клиента
client.gui.contract.tree.order=parameters objects hierarchy status limit mode face balance tariff modules groups web tariffGroup script addAction memo
# Какие лимиты предлагаются на выбор в договоре
client.gui.contract.limit.values=-
2000
;=-
500
;=-
300
;=-
150
;=-
50
;=-
30
;=-
10
;=
0
;-
5
/
1
;-
50
/
1
;-
100
/
1
;-
15
/
3
;-
50
/
3
;-
100
/
3
# Какие лимиты предлагаются на выбор в шаблоне договора
client.gui.pattern.limit.values=-
2000
;-
500
;-
300
;-
150
;-
100
;-
50
;-
10
;
0
;
5
;
30
;
100
;
15
;
50
;
100
#
#--------------------------------------
#Копирование параметров договора - шаблоны
#--------------------------------------
# Шаблоны
contract.param.pattern.keys=bank,firm
# Название шаблона
contract.param.pattern.bank.title=Банк (реквизиты)
contract.param.pattern.firm.title=Организация (название, руководство, ИНН/КПП)
# Коды параметров договора, которые будут выделяться
contract.param.pattern.bank.pids=
12
,
34
contract.param.pattern.firm.pids=
1
,
23
,
8
,
4
,
25
#
#--------------------------------------
# Параметр типа "Адрес"
#--------------------------------------
# проверка уникальности адреса договора при вводе - 1, 0 - не проверять
address.unique.check=
1
# Формат адреса (доступен также параметр ${comment} - комментарий параметра)
addrs.format=(${index})(, ${city})(, ${area})(, ${quarter})(, ${street})(, д. ${house})(${frac})(, кв. ${flat})( ${room})(, ${pod} под.)(, ${floor} эт.)
# Разрешение создавать дома в редакторе адреса параметров договоров и объектов
#address.create=1
#
#--------------------------------------
# Параметры сущностей адресного справочника
#--------------------------------------
# Для каждой сущности можно завести неограниченное число параметров. Типы параметров могут быть числовые(int), строковые(string), дата(date)
## для страны
address.country=countPeople,test
address.country.countPeople.title=Население страны
address.country.countPeople.type=int
address.country.test.title=Тестовый параметр
address.country.test.type=string
# для города аналогично, но вместо country будет city
# для района аналогично, но вместо country будет area
# для квартала аналогично, но вместо country будет quarter
# для улицы аналогично, но вместо country будет street
# определение почтового индекса по номеру дома
address.street.boxIndexRange.title=Почтовый индекс
address.street.boxIndexRange.type=string
# для дома
address.house=dateConnecting, test, floorRange, entranceRange
address.house.dateConnecting.title=Дата подключения
address.house.dateConnecting.type=date
address.house.test.title=Тестовый параметр
address.house.test.type=string
# определение подъезда по квартире
address.house.entranceRange.title=Диапазон подъездов
address.house.entranceRange.type=string
# определение этажа по квартире
address.house.floorRange.title=Диапазон этажей
address.house.floorRange.type = string
#
#--------------------------------------
# Поиск договоров
#--------------------------------------
# Установка значений по умолчанию опций при поиске договора.
# Одной настройкой задается значение сразу на все четыре фильтра.
# Вводятся цифрами 1234. Порядок: поиск по всем параметрам, учитывать
# скрытые, учитывать субдоговоры, учитывать закрытые. Если ввести 13,
# то первая и третья галочка будут по умолчанию установлены, а именно:
# поиск по всем параметрам и учитывать субдоговоры.
contract.searchDefaultFilters=
13
#
#--------------------------------------
# Поведение
#--------------------------------------
# Запрет ввода уже существующего на договоре тарифа с пересекающейся датой, 1 - включен
check.double.tariff=
0
# Разрешение платежей и расходов будущим числом
allow.future.payment=
0
allow.future.charge=
0
# Разрешение платежей и расходов для закрытых договоров
allow.closed.payment=
0
allow.closed.charge=
0
# Что выводить в поле "сальдо" монитора статуса, 1 - сальдо, 2 - исх. остаток
contract.status.monitor.saldo.show.mode=
1
# Запрет установки договору лимита без указания периода в случае наличия заданий на автоматическое изменение лимита, 1 - включение запрета
reject.limit.update=
0
# Отключение учёта при активации тарифной опции уже активированных опций
#tariffOption.dontCheckOnActivateAlreadyActivated=1
#
#-------------------------------------
# Статусы договора
#-------------------------------------
# Статусы договора, коды и обозначения
contract.status.list=
0
:Активен;
1
:В отключении;
2
:Отключен;
3
:Закрыт;
4
:Приостановлен;
5
:В подключении
# Статусы договора, запрещённые к ручной установке
contract.status.no.manual.set=
1
,
5
# Не используемые статусы договора (не будут отображаться в списках, но останутся в логах изменений)
contract.status.deprecated=
# При смене статуса договора смена статусов его независимых субдоговоров, 1 - включение
independ.subcontract.status.change=
0
# ... зависимых ...
depend.subcontract.status.change=
1
#
#--------------------------------------
# Статусы договора, кредитовые договора
#--------------------------------------
# Статус договора, при котором кредитовый договор считается активным
credit.contract.active.status=
0
# Cтатусы договора, из которых кредитовый договор может быть переведён в активный статус по платежу
# в случае, если сальдо станет положительным
credit.contract.open.by.payment.status=
2
,
3
# Cтатусы договора, которые перекрываются в будущем активным статусом, при открытии кредитового договора
credit.contract.override.future.to.active.status=
2
# Не переводить статус договора в активный по платежу, тоже что пустой список credit.contract.open.by.payment.status
#do.not.open.contract.on.payment=1
# Перечень кодов групп договоров через запятую, которые не активируются по платежу
#do.not.open.groups.on.payment=
#
#-------------------------------------
# Проверки закрытого периода
#-------------------------------------
# Проверка закрытого периода при операциях, 1 - включить
closed.date.enabled=
1
# Перечисления кодов групп пользователей, для который проверка закрытого периода отключена
#closed.date.groups.id=1,2,3
# Выборочное отключение проверки закрытого периода (договор) удаление расхода
#closed.date.disabled.ActionDeleteContractCharge=1
# Выборочное отключение проверки закрытого периода (договор) удаление платежа
#closed.date.disabled.ActionDeleteContractPayment=1
# (договор) удаление Услуги
#closed.date.disabled.ActionDeleteContractService=1
# (договор) удаление группы тарифов
#closed.date.disabled.ActionDeleteContractTariffGroup=1
# (договор) удаление тарифного плана
#closed.date.disabled.ActionDeleteContractTariffPlan=1
# (договор) изменение расхода
#closed.date.disabled.ActionUpdateContractCharge=1
# (договор) изменение Даты открытия
#closed.date.disabled.ActionUpdateContractDate1=1
# (договор) изменение Даты закрытия
#closed.date.disabled.ActionUpdateContractDate2=1
# (договор) изменение платежа
#closed.date.disabled.ActionUpdateContractPayment=1
# (договор) изменение Услуги
#closed.date.disabled.ActionUpdateContractService=1
# (договор) изменение группы тарифов
#closed.date.disabled.ActionUpdateContractTariffGroup=1
# (договор) изменение тарифного плана
#closed.date.disabled.ActionUpdateContractTariffPlan=1
# (договор) изменение периода обьектов
#closed.date.disabled.ActionObjectUpdate=1
# (договор) изменение статуса договора
#closed.date.disabled.ActionContractStatusChange=1
#
#----------------------------------------
# Планировщик заданий
#----------------------------------------
# Количество одновременных потоков для выполнения периодических заданий по расписанию
scheduler.periodic.thread.count=
5
# Количество одновременных потоков для выполнения асинхронных задач (переобсчёты)
scheduler.nonperiodic.thread.count=
5
#
#--------------------------------------
# Загрузчик логов
#--------------------------------------
# Автоматическая генерация заданий на обработку логов
loader.add.process=
1
#
#----------------------------------------
# Расширение функциональности
#----------------------------------------
# Логирование вызовов функций скриптов поведения в договорах (1-логировать, 0-нет).
# Логируются выводы print, error и ошибки; после установки перезапустить BGBillingServer
log.function.process=
1
#
#----------------------------------------
# Расширение функциональности - динамический код
#----------------------------------------
# Кодировка файлов динамического кода (UTF-8 предпочтительно, по умолчанию)
dynamic.src.encoding=
UTF
-
8
# Каталог размещения динамического кода относительно BGBillingServer
dynamic.src.dir=dyn
#
#----------------------------------------
# BGSecure
#----------------------------------------
# Проверка прав, 0 - не проверять
bgsecure.check=
1
# Логирование действий в журнале событий, 0 - не логировать
bgsecure.log=
1
#
#----------------------------------------
# Web-интерфейс клиента
#----------------------------------------
# Режим выдачи страниц: xml, либо html - сборка страниц браузером, либо на сервере
web.mode=html
# Разграничение доступа в личный кабинет:
# 1 - вошедший через логин субдоговора видит всю иерархию договоров (по умолчанию)
# 2 - вошедший через логин субдоговора видит только свой договор
#web.sub.contract.auth.mode=1
# Сохранять все ошибки входа (даже если не идентифицирован договор)
#web.error.all=1
# В режиме xml по этому пути браузер будет получать xsl
# Адрес должен быть доступен отовсюду
web.xslt=http://
127
.
0
.
0
.
1
:
8080
/bgbilling/xsl/
# В режиме xml при обращении через порт https по этому пути браузер будет получать xsl
# Адрес должен быть доступен отовсюду
web.xslt.https=https://
127
.
0
.
0
.
1
:
8443
/bgbilling/xsl/
# Добавление в XML на странице статистике детальной информации по договору - 1
web.add.contract=
0
# Страница куда пересылать при выходе с Web-статистики
web.exit.redirect=about
:blank
# Логирование Web-запросов пользователя (Web-интерфейс)
webquery.log=
0
# Максимальный размер в байтах прикрепляемого файла в Web
multipart.max.post.size=
1048576
# Настройка страниц ошибок сервера по ошибкам (можно указывать различные коды ошибок)
server.error.
404
=/error/error404.html
server.error.
403
=/error/error403.html
#
#----------------------------------------
# Web-интерфейс, доступ
#----------------------------------------
# MD5-хэш универсального пароля к Web-статистике, хэш можно получить в "Утилиты => Вычисление Digest"
#web.admin.password=21232F297A57A5A743894A0E4A801FC3
# Режим авторизации для доступа к Web-статистике код модуля:режим;код модуля 1:режим
# модуль 0 - ядро
# режим 0 - не разрешена, 1 - по номеру договора, 2 - по текстовому параметру договора
web.auth.modes=
0
:
1
# Максимально количество запросов для договора на сервер статистики в день, 0 - не ограничено
web.max.day.request.count=
0
# Длина пароля договора для доступа к статистике
password.length.min=
5
password.length.max=
10
# Длина автоматически генерируемого пароля
password.length.auto=
6
# Допустимые в пароле символы
password.chars=
1234567890
#
#----------------------------------------
# Web-интерфейс, доступ, защита от подбора пароля
#----------------------------------------
# После изменения этих параметров потребуется перезагрузить сервер
# Максимальное количество неудачных попыток авторизации подряд
logon.counter.max=
20
# Базовый интервал времени в секундах между неудачными попытками авторизации
logon.timeout.period=
0
# Время блокировки в секундах после исчерпания количества попыток авторизации
logon.timeout.lock=
21600
# Размер кэша паролей
logon.lock.cache.size=
100
# Время устаревания записи в кэше паролей в секундах
logon.lock.cache.expired=
600
# Алгоритм увеличения времени между попытками (+ или ^)
logon.timeout.action=+
#
#-----------------------------------------
# Web-интерфейс, доступ, восстановление пароля
#-----------------------------------------
# Код текстового параметра, содержащий E-Mail, на который будет высылаться письмо по восстановлению пароля
contract.password.forgot.email.param.id=<числовой код параметра>
# В течение скольке часов после высылки письма можно войти на статистику по ссылке в письме
contract.password.forgot.expire.hour=
24
# Ссылка на страницу статистики в письме с восстановлением пароля
contract.password.forgot.link=http://localhost:
8080
/bgbilling/webexecuter?action=ChangePassword&mid=contract
# Тема письма
contract.password.forgot.email.subject=Восстановление пароля
# Текст письма
contract.password.forgot.email.body=Для восстановления пароля к серверу статистики по договору {contract} - перейдите по ссылке ниже (в течении {hour} часов) и смените пароль.
# набоН символов одноразового пароля
contract.password.forgot.char.array=1234567890QWERTYUIOPLKJHGFDSAZXCVBNMqwertyuioplkjhgfdsazxcvbnm
#
#-----------------------------------------
# Web-интерфейс, временное понижение лимита
#-----------------------------------------
# сообщения при изменении лимита
limit.max.current.msg=Вы не можете в данный момент понизить лимит. Превышено максимально количество не погашенных и/или частично погашенных понижений
limit.max.nopayed.msg=Превышено максимально количество просроченных понижений. Возможность понижения лимита заблокирована
#
Значение большинства параметров пояснены в комментариях, либо присутствует ссылка на главу с более подробным описанием подсистемы.
Если вы не знаете, что ввести в качестве параметра в конфигурацию, возьмите этот параметр из примера, приведённого выше. После сохранения конфигурации выберите строку с ней в таблице и нажмите Установить.
В поле Вид и поведение вы можете изменить текущую тему оформления клиента.
Установка темы оформления отличной от Metal может привести к проблемам с отрисовкой. Смена темы оформления производится пользователем на его страх и риск, нарушение в отрисовке клиента не считается ошибкой ПО.