Просмотр Исходного

h3. Введение

*Биллинг* рассчитывает состояние абонентов и его услуг в реальном времени.

Состояния абонентов и услуг синхронизируются из биллинга в мини *БД* модуля *Provisioning*, который управляет оборудованием.

*БД Provisioning* \- это эталонное состояние в которое нужно привести оборудование.


Если состояние абонента или услуги изменилось в Биллинге, то такая запись синхронизируется в БД Provisioning и помечается как грязная Dirty.
По всем Dirty записям производится отправка команд на оборудование, после успешной отправки флаг Dirty сбрасывается, при неудачно отправка повторится в будущем.

*Демоны* модуля Provisioning производят синхронизацию с оборудованием, через *oss скрипт подсистему* \- скрипты расположенные в  /var/lib/oss/core/имя_оборудования/


В поставку входят полностью готовые *Схемы управления* и файлы для управления Redback, Cisco, Mikrotik и ряда других производителей.

*Схема управления* \- это один из вариантов автоматической типовой интеграции, включает в себя все настройки биллинга, radius, dhcp, скрипты, а также {color:#ff0000}new2015\*{color} возможность автоматического создания и заливки конфигурации на оборудование.


Провайдер может неограниченно настраивать скритпы управления под свои нужды, через hook, либо создать пользовательскую схему под свои требования. При желании, можно работать напрямую с БД Provisioning своими средствами.



*Последовательность взаимодействий:*



1. Биллинг->БД Provisioning->OSS Скрипты конкретного оборудования->CoA/Telnet/SSH/SNMP \->Оборудование

2. Оборудование->Radius->БД Provisioning

3. Оборудование->DHCP->БД Provisioning

*Примечание:* модуль Provisioning сейчас не полностью отвязан от биллинга и пока не может работать на отдельном сервере, работы по автономному Provisioning планируется закончить к 01.11.2015. Выделение БД Provisioning позволит полностью останавливать биллинг для любых профилактических и плановых работ, при этом абоненты не пострадают, а также это позволит упростить и улучшить схему работыс филиалами.

----
h3. Состояния пользователей(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. Описание интеграции с не типовым оборудованием.