Mike писал(а):
А могли бы все-таки как-то пояснить текст скрипта.
Правильно ли я понимаю:
Создания правила на основании "команд шлюза" происходит в
private generateRule( status ) {...}?
ruleText = ManadUtils.getRule( status.gateType, status.ruleType )
создает набор команд для шлюза с "типами правил", при этом
status.gateType - сам тип шлюза;
status.ruleType - тип правила для данного шлюза;
ruleText - набор команд со вставленными "переменными"?
Это берется из договора или из шлюза?
ruleText = ManadUtils.getRule( status.gateType, status.ruleType );
это текст команд из конфига типа шлюза ..это то что в теге DEFAULT или RULE ..
rule = ManadUtils.generateRuleNew( ruleText, status.rule.getRuleText(), null, status.ruleType );
Это уже обработка правил ..Т.е конечный результат.. Правила всех шлюзов обрабатываются по правилам шлюза Manad + плюс некторые дополнения . формирование этих правил описано тут:
http://bgbilling.ru/v4.5/doc/ch09s11s06.html#d0e11508statusList - состоит из объектов типа bitel.billing.server.ipn.UserStatus. каждый из относится к конретному договору на шлюзе . Если вы открываете/закрваете шлюз из клиента биллинга, то это список состоит всего из одного элеменента.. Если это делает задача проверки шлюзов, то в это списко помещаются все договора на даннном конретном шлюзе и шлюз должен пробежаться по ним всем
Mike писал(а):
И как же можно изменить принцип порождения правил, если все находится в generateRuleNew? А как увидеть порожденное правило в договоре?
Пожалуйста, покажите какой-нибудь, пусть очень простой, пример порождения нового правила.
Принцип описан по ссылке, предствленной выше . Можете либо использовать его либо нет..Можете написать эту функцию сами под свои правила
Mike писал(а):
Кстати, а существует документация по API? Не констатация существования функции, а хотя бы краткое ее описание?
нет.. подробной документации нет ..