Skip to end of metadata
Go to start of metadata

Концепция тарифных планов.

Меню Настройка>Internet+>Тарифные планы

#Идентификатор тарифного плана. Старайтесь не создавать тарифные планы с ID ноль (0). Неправильное использование тарифных планов с ID 0 может привести к непредсказуемым последствиям
Name:Название тарифного плана
Alert:Сумма, при которой будут отправляться сообщения о приближении окончания баланса. Предупреждение отправляется на E-mail пользователя указанный в поле E-mail персональных данных пользователя. Данное сообщение отправляется, если значение этого поля больше нуля и сумма на счету клиента также больше нуля (credit+deposit>0). При включенном модуле Sms и опции в конфиге $conf{INTERNET_USER_WARNING_SMS}=1 - предупреждение будет высылаться пользователю так же и посредством Sms.
Simultaneously:Количество пользователей, которые могут подключиться под одним логином в один промежуток времени. 
Если абонент подключается повторно с тем же MAC адресом адресом, система считает что это новое подключение абонента, а сессия в журнале мониторинга устарела, но по какой-то причине не пришёл стоп пакет. Разрешает подключиться абоненту и присваивает ему IP адрес старой сессии, а старую сессию отправляет в zap. Данный подход используется для минимизации времени простоя при сбросе сессии абонента без оповещения биллинга. 
Иногда неправильно настроенное оборудование (домашние маршрутизаторы) поднимают несколько сессий с одним мак адресом. Чтобы система строго следила за двойными сессиями без режима лояльного подключения нужно включить опцию $conf{hard_simultaneously_control}=1;

Абонплата

Снимается только в том случае, если у сервиса (Услуги интернет) статус «Активно».

Дневная

Дневная абонплата:

Дневная абон. плата. Снимается каждый день скриптом /usr/abills/libexec/periodic daily, при наличии соответствующей суммы на депозите абонента.

Абон. плата снимается только у абонентов с статусом услуги Активно. 
При недостаточном депозите, учётная запись не блокируется.

За активные дни:Абон. плата снимается только за активные дни. Плата снимается текущим числом за прошедший день
Дневная оплата послеоплата:Снимать дневную плату не учитывая состояние баланса абонента

Месячная

  • Снимать первого числа месяца

  • Снимать всем абонку не первого, а любого другого числа месяца

  • Снимать абон. плату с даты активации на 31 день. После начисления абонплаты дата активации устанавливается в текущую

  • Снимать абон. плату каждого месяца определенного числа указанного в поле активации. После начисления абонплаты дата активации устанавливается в текущую

Month fee:Месячная абонплата. Снимается 1 числа каждого месяца программой /usr/abills/libexec/periodic monthly. Если в поле Activisation указанное значение не равно 0000-00-00, то абонплата снимается через 30 дней после указанной даты и после снятия денег устанавливается в текущую дату (по завершению 30 дней)
Абонплата снимается при положительном депозите или при типе оплаты Послеоплата
Если сумма депозита меньше суммы абон. платы, но больше нуля то абон. плата снимается в минус
Основные правила абон. платы 
  • Абон. плата снимается в начале учётного периода (в начале месяца или в начале дня при месячной распределённой) 
  • Снимается только с положительного финансового счета (кредит плюс депозит больше 0) или при условии типа снятия Послеоплата (при снятии денег не учитывается депозит и начисления могут производить при отрицательном балансе)
Выравнивание месяца:

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

Для тарифных планов с действием при недостаточном депозите, при активации со статуса слишком маленький депозит абон. плата снимается за оставшиеся дни. Чтобы снимать абонплату за весь период с переходом со статуса слишком маленький депозит включите опцию $conf{INTERNET_FULL_MONTH}=1;

Фиксированный деньФиксированная дата абон. платы. Абон. плата всегда снимается одного и того же числа. Дату для определения числа снятия абон. платы система берёт из даты активации и при каждом начислении устанавливает эту дату в текущую на момент начисления. Если не указанна дата активации в сервисе интернет, абон. плата начисляется первого числа месяца. 
Если день активации больше 28, система при первом месячном периодике его меняет на 1 число месяца
Распределенная а/п:

Распределение месячной платы по дням. При указании опции месячная плата взымается каждый день с учётом её распределения по дням месяца.

Если в услуге не указана дата активации (Дата активации 0000-00-00):

  1. Расчёт суммы дневного снятия рассчитывается от количества дней месяца (месячная абон. плата разделить на количество дней месяца).
  2.  если средств недостаточно на списание блокировать аккаунт "слишком маленький депозит" (при включенной опции Действие при недостаточном депозите)
  3.  при опции $conf{INTERNET_FULL_MONTH}=1; система активировать аккаунт будет только при наличии полной суммы на счету. Если сумма не полная аккаунт не будет активирован.
      - абонент может пополнять частями аккаунт пока он активен
  4. при приостановлении аккаунта средства не будут списываться

Если услуга сдатой активации

  1. Если в услуге установлена дата активации тогда распределенная абонплата снимается с расчета 30 дней.
Действие при недостаточном депозитеДействие при недостаточном депозите: 
  • блокировать аккаунт (устанавливает статус сервиса «Слишком маленький депозит»);
  • перевести на другой ТП;
  • имеет более высокий приоритет чем Послеоплата. Данное действие выполняется если у абонента не достаточно для оплаты тарифного плана на следующий месяц использования. Данный статус устанавливается в следующие периоды ночным периодиком: 
  • начало учётного периода для абонентов с абон. платой в начале месяца (активация акаунта 0000-00-00)
  • для абонентов с установленной активацией аккаунта (активация не 0000-00-00). Через 30 или больше дней с начала активации
  • для абонентов с месячной распределённой платой в любой день, если суммы на счету не достаточно для абон. платы
  • после погашения долга и оплаты услуги система автоматически включает услугу, сразу же после внесения средств

Пример работы: 
У абонента на счету 99 юнитов тарифный план 100 юнитов при начислении абон. платы абонента заблокирует до внесения им 1 юнита
Reduction:Учитывать пользовательскую скидку при снятии абон. платы
Postpaid:

Снимать абон. плату без учёта депозита
Разрешает снимать абон. плату при отрицательном депозите и без ограничения по задолженности., абон. плата снимается в начале учётного периода

Extra Bill AccountСнимать абон. плату с дополнительного счёта. Появляется при включении в конфигурационном файле опции $conf{EXT_BILL_ACCOUNT}=1;

Другие параметры. Лимиты времени. Указываются в секундах

DayДень
WeekНеделя
MonthМесяц (Учет идет с 1 числа месяца)
TotalОбщее количество доступного времени с момента создания аккаунт

Лимиты трафика. Указываются в мегабайтах

DayДень
WeekНеделя
MonthМесяц (Учет идет с 1 числа месяца)
TotalОбщее количество трафика с момента создания аккаунта

Другие параметры

Направление трафикаПодсчёт байт 
Received + Send - считать суммарно входной и выходной трафик 
Received - считать входной трафик 
Send - считать выходной трафик
Активация:Сумма, которую снимать при активизации аккаунта
Данная сумма снимается если в акаунте еще не было активизировано услугу или при переходе со статуса Не активизировано в Активно
Изменение:Сумма, которую снимать при переходе с одного тарифного плана на другой выбранный
Credit Tresshold:Несъёмный минимум
Кредит:

Кредитный лимит тарифного плана

Кредитный лимит тарифного плана имеет более низкий приоритет, чем кредитный лимит пользователя

Max. session time (sec.):Максимальная длина сессии
Filters:Название фильтра
Пример фильтра для freebsd mpd. Заносит IP адрес абонента в 100 таблицу 
RAD:mpd-table+=100=%IP%
Вид оплаты:Prepaid - Предоплата. Абонент может работать только при положительном депозите 
Postpaid - Оплата после использования. абонент может работать при любом депозите. так как сумма депозите не учитывается
Min. session cost:Минимальная цена сессии
Minimal money use:Минимальная сумма месячной наработки. Данная опция устанавливает минимальное количество использованных денег за учётный период. Обработка этой функции проходит первого числа каждого месяца. Если в конце учётного периода сумма наработки меньше указанной в данной опции, она доснимается как одноразовый платёж с указанием в комментариях. Сумма снимется в начале текущего периода за предыдущий. При съёме минимальной месячной наработки учитывается дата активизации, если дата активации не равна 0000-00-00, то система снимает деньги, учитывая количество рабочих дней клиента. После снятия денег система меняет дату активации на 0000-00-00. 
Для корректной работы данной опции обязательна опция тарифного плана или подмена абон. платы послеоплата
Traffic transfer period:Период переноса неиспользованного трафика
Задаётся в месяцах
Неиспользованный трафик переносится с предыдущих периодов при условии, что в предыдущих периодах была отработана хоть одна сессия по данному тарифному плану. Если таких сессий нет - предыдущий период не учитывается
Negative deposit filter ID:Фильтр негативного депозита
При использовании данной опции система разрешает подключать пользователей с негативным депозитом, но при этом оправляет на NAS RADIUS параметр фильтр (Filter-Id), указанный в данном поле. При указании фильтра негативного депозита, фильтр тарифного плана, фильтр сервиса пользователя и параметры рабочего доступа игнорируются. 
Также возможно задавать RADIUS пары, передаваемые в параметре. Для задания передачи RADIUS пар вместо значения нужно указать RADIUS пары разделённые запятыми и начинающимися с префикса RAD:. 

Пример: 
RAD:Tunnel-Private-Group-Id=5,Tunnel-Type=VLAN,Tunnel-Medium-Type=IEEE-802
Также в фильтре негативного депозита можно передавать параметры логина и IP адреса клиента. 

%IP% - IP адрес 
%LOGIN% - Логин 

Пример:
RAD:mpd-table+=1=%IP% 

При подключении абонента с негативным депозитом в биллинге поднимается сессия с флагом гостевой доступ. После пополнения счета на сумму, превосходящую долг, система сбрасывает абонента с линии и он может уже подключиться в рабочем режиме
Negative deposit IP PoolПул адресов негативного депозита. Выдаётся абонентам с отрицательным балансом. Данный параметр применяется только в случае использования его с фильтром негативного депозита. Пулы негативного депозита нельзя отмечать на серверах доступа, в противном случае они будут выдаваться при позитивном депозите. Если пул отмечен на сервере доступа, у него должен быть флаг «пул негативного депозита». Для проверки пула на всех серверах нужно отметить их на всех NAS, в противном случае система будет искать только на локальном
ПеняПеня. Пеня изымается с аккаунтов, в которых установлен статус Слишком маленький депозит и баланс превышает ноль единиц на счету. Пеня стягивается ежедневно периодическим месячным процессом. Поле скидка не распространяется на взимаемую пеню. Пеня снимается без учёта лимита (может сниматься при отрицательном депозите). Для установки лимита используется переменная $conf{INTERNET_FINE_LIMIT}
RADIUS Параметры (,)

Дополнительные RADIUS параметры для передачи клиенту.

Данная опция имеет найвысший приоритет и разрешает формировать (или удалять радиус пары "!")  после автосоздания их биллингом.


Пример:

Добавление пар


Mikrotik-Rate-Limit=1024k


Удаление пар


!Session-Timeout=0
IP PoolБаза IP адресов для выдачи пользователям работающим по данному тарифному плану. Можно использовать совместно один пул для нескольких тарифных планов. Пула адресов задаются через меню настройки серверов доступа (Настройка> Сервер доступа>IP POOLs). Если заканчиваются адреса выбранного пула система использует свободные адреса сервера доступа. Обязательно нужно отмечать данные пул адресов на серверах доступа, к которым подключаются клиенты, в противном случае не будет идти контроль выданных IP
Приоритет:Приоритет тарифного плана. Если заполнено это поле и пользователь переходит с тарифного плана с большим приоритетом на ТП с меньшим приоритетом с него снимается сумма указанная в поле «Сумма изменения тарифного плана». Если в обратном направлении сумма не снимается. Большим является большее числовое значение более приоритетным будет значение 10 чем значение 2.
Резерв Порта:Резерв порта. Данная сумма снимается с абонента если у него стоит статус услуги «Слишком маленький депозит»
Время жизни (Дни):Время жизни аккаунта. Отсчитывается со дня активизации. 
При первом подключении абонента устанавливается дата завершения по формуле текущая дата + количество дней в параметре
Тарифный план Следующий учётный период:

Устанавливается указанный тарифный план по завершению учетного периода тарифного плана или при наступлении даты завершения услуги. При переходе на следующий тарифный план, ориентируясь на дату истечения услуги, система автоматически устанавливает дату завершения услуги, соответственно с параметром Время жизни услуги нового тарифного плана. Если в новом тарифном плане нет параметра завершения услуги дата обнуляется.

При использовании параметра «Действия при недостаточном депозите» система блокирует услугу до пополнения счета. При пополнении система разблокирует услугу и снимает сумму, указанную в поле активация тарифного плана.

Если в услуге уже установлен статус "Слишком маленький депозит" система переводит её на следующий тарифный план, но активирует его только при оплате соответвующей новому тарифу.

Intervals

Интервалы тарифных планов. В периоды, неописанные в интервалах, система не авторизует пользователя. 

Приоритет периодов:

  1. Праздники - Дни отмеченные в календаре

  2. Дни недели - Понедельник, вторник и т д.

  3. Остальные - Подразумевает все дни недели

Крайне нежелательно пересекать периоды с одинаковым приоритетом. Последствия не предсказуемы. 
Не описывайте периоды с переходом через границу суток, например: 23:00:00 до 03:00:00.

Правильно: 

Первый период:
  00:00:00 до 03:00:00
Второй период:
  03:00:00 до 08:00:00
Третий период
  23:00:00 до 24:00:00

С 8 до 23 часов абоненты не смогут работать по этому ТП плану так как не описан интервал времени.

Если не задано ни одного интервала пользователя авторизует в любое время. Значения полей:


Day:День недели
Begin:Начало периода
END:Конец периода
Time tariffЦена 1 часа в этом периоде
TrafficНастройки трафикации трафика и шейпера в этом периоде (появляется после создания интервала)

Traffic

Тарификация трафика.

После изменения скорости в тарифном плане обязательно инициализируйте шейпер shaper_start.sh

Intervals 1ID часового интервала
IDID класса трафика
Traffic tariff (1 Mb) IN / OUTТарификация трафика входящий/ исходящий (По умолчанию считается со стороны пользователя)
Указывается в мегабайтах
Чтобы изменить направление, опция в конфигурационном файле $conf{octets_direction};
Prepaid (Mb)Предоплаченный общий (Входящий + Исходящий) трафик, если не указано обратного в опции тарифного плана Octets direction
При использовании этой опции сначала система смотрит за использованием предоплаченного трафика, а после превышения лимита считает по тарифу, указанному в интервале. Как предоплаченный считается суммарно весь трафик с учётного периода по всем часовым интервалам.
Учётный период начинается с начала месяца, если в поле Activation аккаунта пользователя прописано 0000-00-00 или с даты прописанной в поле Activation. Неизрасходованный предоплаченный трафик система не переносит на следующий учётный период. 
В системе статистики цена трафика входящего в предоплаченный нулевая
Speed (Kbits) IN / OUTСкорость Входящая/Исходящая
DescribeОписание класса трафика
Expressions:Формулы для более гибкой тарификации
NETS

Список сетей. Используется при разделении трафика на классы: Интернет, пиринг и т д.

Сети задаются в меню Настройка>Интернет+>Тарифные планы>Классы трафика

Параметры Burst Режима

Burst limit, kbps
Burst threshold, kbps
Burst time, Секунды

перезагрузка шейперов автоматически

$conf{SHAPER_RESTART_CMD}='shaper_start.sh';

Программа перезагрузки шейперов.

Применяется после изменения правил управления скоростью

Формулы (Expressions)

Только для продвинутых пользователей 
Формулы для более гибкой тарификации трафика.

Формат формул: 
[PARAMETER_TYPE EXPRESION PARAMETER_VALUE]=RESULT[PARAMETER_TYPE:PARAMETER_VALUE,…];
Формулы состоят из двух частей, разделенных знаком равенства '=', левой - выражения и правой - результата выражения. Левая часть может состоять из нескольких результирующих параметров, описанных через запятую ','. Если правая часть формулы возвращает верно, то применяется левая часть выражения. Система просматривает формулы с верху до низу и заканчивает просмотр на первом неверном выражении.

PARAMETER_TYPE (Константы):
Трафик - Расчётная единица 1 мегабайт (1024 * 1024 байт)
TRAFFIC_SUM - Суммарный трафик за расчётный месяц 
TRAFFIC_IN - Входящий трафик за расчётный месяц
TRAFFIC_OUT - Исходящий трафик за расчётный месяц


Дневные константы - используются для пересчёта цены трафика в зависимости от дневного его потребления. Использование этого выражения допускается только при использовании одного временного интервала на весь учётный период.

Понятия бонусных начислений за использование пропускной полосы разрешает пользователям, попавшим под действия выражений, насчитывать дополнительные суммы на счёт за использование или отдачу определённого класса трафика. 
Пока, данная функция работает только  при использовании режима Dv + IPN
BONUS_TRAFFIC_IN - Входящий
BONUS_TRAFFIC_OUT - Исходящий
BONUS_TRAFFIC_SUM - Суммарный


Месячные константы - используются для пересчёта цены трафика в зависимости от месячного его потребления. Использование этого выражения допускается только при использовании одного временного интервала на весь учётный период.
Внимание!
Данную константу нельзя использовать для управления скоростью, так как для управления скоростью есть константы TRAFFIC_SUM, TRAFFIC_IN, TRAFFIC_OUT, в которых как раз учитывается месячный трафик или трафик интервала подсчёта.

MONTH_TRAFFIC_SUM - Суммарный трафик 
MONTH_TRAFFIC_IN - Входящий трафик 
MONTH_TRAFFIC_OUT - Исходящий трафик 

Константы сессии - трафик, полученный/отправленный на протяжении сессии. При использовании данных констант трафик учитывается только в конце сессии. соответственно они не могут использоваться для установки скорости сессии. SESSION_TRAFFIC_SUM - суммарный трафик.
SESSION_TRAFFIC_IN - Входящий трафик 
SESSION_TRAFFIC_OUT - Исходящий трафик 


Скорость - Расчётная единица 1 кБит 
SPEED_IN - Входящая приёма 
SPEED_OUT - Скорость передачи 

Цена за 1 мегабайт 
PRICE - Общая цена трафика 
PRICE_IN - Цена за входящий трафик 
PRICE_OUT - Цена за исходящий трафик 

Примеры 
Если суммарный трафик за учётный период больше 1000 мегабайт, то скорость устанавливается в 64 кбита.

TRAFFIC_SUM>1000=SPEED:64;

Если суммарный трафик за учётный период больше 1000 мегабайт, то цена за 1 мб. 0.2 расчётных единицы

TRAFFIC_SUM>1000=PRICE:0.2;

Если пользователь за учётный период накачал: 300 метров - цена за 1 мб. 2 расчётных единицы; 600 - 1.5; больше 1000 - 1

TRAFFIC_SUM>300=PRICE:2;
TRAFFIC_SUM>600=PRICE:1.5;
TRAFFIC_SUM>1000=PRICE:1;

Подсчёт только привилегированного направления сессии.

SESSION_TRAFFIC_IN>SESSION_TRAFFIC_OUT=PRICE_IN:0.2,PRICE_OUT:0;
SESSION_TRAFFIC_IN<SESSION_TRAFFIC_OUT=PRICE_IN:0,PRICE_OUT:0.2;

Начисление дополнительных бонусов за входящий трафик

BONUS_TRAFFIC_IN>0=PRICE_IN:1;


Примеры заведения тарифных планов

  • Помегабайтный тарифный план с фиксированной ценой на 1 Мб, 24 часа в сутки все дни недели
  1. Переходим в меню  Настройка>Интернет+>Тарифные планы
  2. Вводите номер и название тарифного плана
  3. После создания нажимаете на Intervals (интервалы)
  4. Создаёте интервал с временным интервалом на все дни 00:00:00 по 24:00:00
  5. После создания интервала выбираем Traffic и вводим данные по цене трафика

Видео пример:

  • 10 $ абонплата в месяц

В абонплату включено 500 Мб трафика. 
Все, что выше нормы тарифицируется по 0.10 $ за 1 Мб. 
Скорость 256 Kbit/s. 
24 часа в сутки все дни недели. 

  1.  Переходим в меню Настройка>Интернет+>Тарифные планы
  2. Вводите номер и название тарифного плана и сумму месячной абон. платы
  3. После создания нажимаете на Intervals (интервалы)
  4. Создаёте интервал с временным интервалом на все дни 00:00:00 по 24:00:00
  5. После создания интервала выбираем Traffic и вводим данные
Traffic tariff (1 Mb):
IN:0.10
OUT:0.10
Prepaid (Mb):500
Скорость (Kbit/s):
IN:256
OUT:256

Видео пример:



Тариф с разной скоростью день/ночь

Видео пример:

При использовании тарифных планов с разной скоростью нужно включать переконфигурацию шейпера на границе интервалов

/usr/abills/libexec/billd checkspeed NAS_ID=xx

Тарифный план на целый год

Для создания тарифного плана с периодом работы 1 год

нужно заполнить поля:

  • Время жизни: 356
  • Активация:  сума абонплаты за период (1 год)  которая снимается при активации ТП
  • Изминение: сума абонплаты за период (1 год)  которая снимаетсяпри продлении ТП

После активации у абонента данного ТП при первом подключении ему устанавливается дата завершения ровная текущая дата плюс 356  дней

При наступлении даты завершения система проверяет поле следующий ТП, если оно уставновленно в текущий ТП  то  снимает абонплату равную полю Изминение

и переносит дату завершения еще на 356 дней в противном случае переводит на следующий ТП.


Тарифный план с месячной абонплатой 130 грн.,  депозит минимум 80 грн., без фиксированной даты активации


В файле /usr/abills/libexec/config.pl прописать функцию $conf{INTERNET_FULL_MONTH}=1;


Тарифный план "Акция" 100 грн. за 100 дней - пример

Описание тарифного плана:

Новому абоненту администратором подключается тариф Акция, согласно которого с лицевого счета абонента списывается 100 грн. в момент подключения. Данный тариф действует ровно 3 календарных месяца (либо условно можно установить 100 дней). В оставшиеся дни действия тарифа в текущем календарном месяце абоненту предоставляется возможность установить себе новый тариф, который начнет действовать по окончанию действия акционного тарифа. Если же абонент не выбрал какой-либо тариф из предложенных, ему автоматически присваивается тариф, например, "100 Мбит" - сразу по окончанию действия акционного тарифа.

Реализация:

Создание тарифа “Акция”: переходим в меню Настройка>Интернет+>Тарифные планы>Добавить. В форме создания тарифного плана заполняем:

Панель Тарифный план: номер можно не вводить, вводим название - Акция; если акция предлагается не всем, а только определенной группе, тогда выбираем нужную группу из списка, если группа не выбрана - данный тариф будет доступным всем; описание тарифа, пример: Акция 100 грн. за 100 (90) дней.

Панель Периодические снятия: заполняем только Списания Тип - Периодические снятия.

Панель Лимит времени: не заполняем.

Панель Другое: в поле Активация: прописываем 100 - это поле будет актуальным для новых абонентов, у которых раньше не было тарифных планов; поле Изменить: прописываем 100 - это поле будет актуально для абонентов, которые раньше пользовались другим тарифным планом; поле Тарифный план Следующий учетный период: указываем нужный нам тариф для перехода.

Потом нажимаем Добавить. На экране появится сообщение, что тарифный план добавлен и будет предложено ввести интервалы, по умолчанию можно выставить интервалы на все дни, начало - 00:00:00, конец 24:00:00.

Users

Пользователи, которые работают по данному тарифному плану.

NAS

Сервера доступа, к которым разрешено подключаться при использовании данного тарифного плана. Если галочки не стоят то разрешено подключатся ко всем серверам доступа.

Импорт/Экспорт тарифных планов

Заходим в Настройка>Интернет+>Тарифные планы

Экспорт

Нажимаем кнопку экспорта (обведена зеленым) и выбираем формат экспорта.

Импорт

Если нам надо импортировать тарифные планы с другой системы, то нажимает кнопку импорта (обведена оранжевым).

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

Нажимаем Добавить.

  • No labels