Памятка
Прежде чем применять настройки - внимательно читаем. От этого зависит работоспособность системы
Краткое описание модуля
Данный функционал предназначен для автоматического перевода "зависших" абонентов (находящихся в неактивных статусах длительное время) в специальный статус "Платная активация" (ID 9).
Выход из этого статуса в активный режим (Status 0) является платным. Пока абонент находится в этом статусе, ему не начисляются штрафы (пени).
Выход из этого статуса в активный режим (Status 0) является платным. Пока абонент находится в этом статусе, ему не начисляются штрафы (пени).
Формат параметра:
$conf{PAID_ACTIVATION_RULES} = "МЕСЯЦЫ:СУММА";
Где:
- МЕСЯЦЫ: Количество месяцев бездействия, после которого абонент переводится в статус 9.
- СУММА: Стоимость выхода из статуса 9 (комиссия за активацию).
Алгоритм работы:
А. Переход в статус 9 (Periodic)
Ежедневно при запуске периодических процессов (`periodic daily`) система проверяет всех абонентов.
Условия перехода:
- Текущий статус услуги НЕ является: 0 (Активно), 1 (Отключено), 2 (Не активировано), 3 (Приостановка), 9 (Уже платная активация).
- Дата установки текущего статуса (INTERNET_STATUS_DATE) была более N месяцев назад (согласно настройке).
Если условия соблюдены -> Статус меняется на 9.
Б. Находясь в статусе 9
- Абоненту НЕ начисляются автоматические штрафы (пени), даже если баланс отрицательный (функционал `FINE` в тарифах игнорирует статус 9).
- В личном кабинете или терминале пополнения "Рекомендованная сумма к оплате" будет включать:
[Текущий долг] + [Абонплата за месяц] + [Комиссия за активацию (150.00)].
В. Выход из статуса 9 (Активация)
Активация происходит автоматически при пополнении счета или вручную через веб-интерфейс. Условия активации при пополнении:
- Сумма на депозите должна быть больше, чем (Абонплата + Комиссия за активацию).
Процесс списания:
- Система обнаруживает, что денег достаточно.
- Инициируется смена статуса с 9 на 0.
- В момент смены статуса, модуль `Internet.pm` проверяет флаг `get_fees=1` и наличие настройки `PAID_ACTIVATION_RULES`.
- С депозита списывается комиссия (150.00) с комментарием "Paid activation fee".
- Статус меняется на 0.
- Списывается стандартная абонентская плата согласно тарифу.
Сценарии работы
Сценарий 1: Абонент "Заброшен"
- Настройка: "6:150.00"
- Исходно: Абонент в статусе 5 (Слишком маленький депозит) уже 7 месяцев. Баланс -10.00.
- Действие системы: Ночью periodic переведет его в статус 9.
- Итог: Статус 9. Штрафы перестают начисляться.
Сценарий 2: Абонент "Недостаточно долго ждал"
- Настройка: "6:150.00"
- Исходно: Абонент в статусе 5 уже 3 месяца.
- Действие системы: Ничего не происходит. Абонент остается в статусе 5. Если в тарифе есть штрафы, они продолжают начисляться.
Сценарий 3: Попытка активации без денег
- Исходно: Абонент в статусе 9. Комиссия 150.00. Абонплата 500.00. Баланс 0.00.
- Действие: Абонент пополняет счет на 500.00.
- Результат: 500 < (500 + 150). Активация НЕ происходит. Абонент остается в статусе 9. Деньги лежат на счету.
Сценарий 4: Успешная активация
- Исходно: Абонент в статусе 9. Комиссия 150.00. Абонплата 500.00. Баланс 0.00.
- Действие: Абонент пополняет счет на 650.00 (или больше).
- Результат:
- Списание 150.00 (Остаток 500.00). Статус меняется на 0.
- Списание 500.00 (Остаток 0.00). Услуга работает.
Сценарий 5: Смена статуса админом
- Админ вручную меняет статус с 9 на 0 через админ-панель.
- Если у абонента есть деньги -> спишется комиссия.
- Если денег нет -> баланс уйдет в минус на сумму комиссии (150.00) + абонплаты.
Описания параметров конфигурации (config.pl) или модуля Config
| Параметр | Пример | Описание |
|---|---|---|
| PAID_ACTIVATION_RULES | $conf{PAID_ACTIVATION_RULES} = '6:500'; | Если абонент находится в неактивном статусе (например, "Слишком маленький депозит" или "Приостановлено") более 6 месяцев, он будет переведен в статус "Платная активация". При попытке активировать услугу (перейти в статус 0) с его счета будет списано 500 единиц, помимо стандартной абонентской платы. |