Опции

Опции - абстрактные сущности, набор которых привязывается к сервису или сессии через параметры сервиса и тариф договора. Опция может определять скорость или любые другие параметры подключения для клиента.

Опции

Опции можно выстраивать в группы, как для удобства, так и для того, чтобы опции внутри группы не пересекались.

По умолчанию при прохождении тарифного дерева указанные опции просто добавляются в набор, однако, если опции выделить в отдельную группу и не устанавливать галочку в поле "Пересечение в группе возможно", то установка очередной опции из группы удалит все другие опции из той же группы. Такую группу, например, можно создать для указания скоростей - тогда при использовании тарифных веток диапазонов (а при тарификации возможна ситуация, когда запрос зайдёт сначала в одну ветку диапазона, заполнив её, а затем в следующую, т.к. есть остаток), опция скорости в итоге всегда будет одна - последняя установленная при прохождении тарифа.

При изменении набора опций в сессии, например, при очередной тарификации или при добавлении/удалении опции в сервисе на договоре автоматически вызывается обработчик активации сервисов - вызывается serviceModify и, если в типе сервиса указан тип инициации сессии "по сигналу" (например, для RADIUS-сессий), для каждой сессии сервиса - connectionModify.