Введение
Биллинг рассчитывает состояние абонентов и его услуг в реальном времени.
Состояния абонентов и услуг синхронизируются из биллинга в мини БД модуля Provisioning, который управляет оборудованием.
БД Provisioning - это эталонное состояние в которое нужно привести оборудование.
Если состояние абонента или услуги изменилось в Биллинге, то такая запись синхронизируется в БД Provisioning и помечается как грязная Dirty.
По всем Dirty записям производится отправка команд на оборудование, после успешной отправки флаг Dirty сбрасывается, при неудачно отправка повторится в будущем.
Демоны модуля Provisioning производят синхронизацию с оборудованием, через oss скрипт подсистему - скрипты расположенные в /var/lib/oss/core/имя_оборудования/
В поставку входят полностью готовые Схемы управления и файлы для управления Redback, Cisco, Mikrotik и ряда других производителей.
Схема управления - это один из вариантов автоматической типовой интеграции, включает в себя все настройки биллинга, radius, dhcp, скрипты, а также new2015* возможность автоматического создания и заливки конфигурации на оборудование.
Провайдер может неограниченно настраивать скритпы управления под свои нужды, через hook, либо создать пользовательскую схему под свои требования. При желании, можно работать напрямую с БД Provisioning своими средствами.
Последовательность взаимодействий:
1. Биллинг->БД Provisioning->OSS Скрипты конкретного оборудования->CoA/Telnet/SSH/SNMP ->Оборудование
2. Оборудование->Radius->БД Provisioning
3. Оборудование->DHCP->БД Provisioning
Примечание: модуль Provisioning сейчас не полностью отвязан от биллинга и пока не может работать на отдельном сервере, работы по автономному Provisioning планируется закончить к 01.11.2015. Выделение БД Provisioning позволит полностью останавливать биллинг для любых профилактических и плановых работ, при этом абоненты не пострадают, а также это позволит упростить и улучшить схему работыс филиалами.
Состояния пользователей(Subscriber) и услуг
В рамках Provisioning и OSS под пользователем понимается пользователь на оборудовании, синонимы subscriber или session, его параметры заданы в учетной записи у абонента.
Схема управления оборудованием основывается на Услугах, а не на балансе абонента, как в простейших биллингах.е
Текущее Состояние абонента никак не влияет на оказание Услуги, влияет текущее Состояние Услуги.
Это значит если у абонента, нет денег, но услуга была ранее оплачена, то она будет оказана до исчерпания Услуги.(у каждой услуги абонента есть свой баланс свои блокировки и тд)
Для удобства управления и по историческим причинам, таблица услуг трафика выделена отдельно от остальных услуг(возможно в будущем это изменится).
Таблица Состояний пользователя(subscriber) для услуг трафика.
Состояние пользователя в БД Provisioning |
Описание |
Состояние на оборудовании |
OSS команда синхронизации |
---|---|---|---|
Создан |
Учетка существует в биллинге. |
Используется редко. На оборудовании должны быть созданы нужные постоянные VLAN, ACL, static clips и т.п. |
user_add |
Удален |
Учетка удалена в корзину в биллинге. |
На оборудовании должны быть удалены все записи о пользователе. Часто достаточно просто disconnect. |
user_del |
Не заблокирован админом |
Есть хоть одна услуга трафика без флага блокировки админом. |
На оборудовании должна быть сессия(subscriber) пользователя. Не должно быть redirect на страницу блокировки админом. Если оборудование без сессий, то добавлено правило в acl_accept |
user_accept |
Заблокирован админом |
Все услуги трафика заблокированы админом или самоблокировкой абонента. |
Означает, что пользователю(subscriber) нужно создать redirect на страницу блокировки админом. *Не рекомендуется при этом просто запрещать трафик, тк это снижает лояльность абонента. |
user_drop |
Баланс исчерпан |
Все услуги трафика исчерпали свой баланс. |
Означает, что пользователю(subscriber) нужно создать redirect на страницу превышен лимит. | user_negbal |
Баланс не исчерпан |
Есть хоть одна оплаченная услуга трафика или услуга трафика с постоплатой. |
Означает, что пользователю(subscriber) должен быть на оборудовании и у него нет редиректа на превышен лимит. | user_negbal_cance |
Полноценный Интернет будет у пользователя при наборе состояний Создан,Не заблокирован админом,Баланс не исчерпан.
Редирект будет при Не заблокирован админом или Баланс не исчерпан на свои страницы.
Таблица Состояний прочих услуг абонента.
Оборудование
1. Описание системы состояний абонентов и услуг
2. Описания скриптов
3. Описание OSS системы
4. Описание мастера создания типовых конфигураций
5. Как тюнить команды, и как добавлять новые.
6. Описание интеграции с не типовым оборудованием.