|
|
|
@ -1,58 +1,9 @@ |
|
|
|
// Формат общения NAS с базой |
|
|
|
[ |
|
|
|
{ |
|
|
|
"toa": 1, /* Тип события: |
|
|
|
0 - ничего не надо (пустое) |
|
|
|
1 - Создать абонента |
|
|
|
2 - Изменилась инфа об абоненте, обновить его |
|
|
|
3 - Удалить абонента |
|
|
|
4 - Создать тариф |
|
|
|
5 - Изменилась инфа о тарифе обновить её |
|
|
|
6 - Удалить тариф |
|
|
|
7 - Перечитать всю инфу (полная перезагрузка NAS) |
|
|
|
*/ |
|
|
|
"id": 12, // ID объекта о котором событие (абонент там, или тариф) |
|
|
|
"dt": "data" // Разная инфа, содержимое зависит от поля 'toa' |
|
|
|
}, |
|
|
|
{ |
|
|
|
"id": 13, |
|
|
|
"toa": 3 |
|
|
|
} |
|
|
|
] |
|
|
|
|
|
|
|
// Формат передачи инфы об абонентах |
|
|
|
{ |
|
|
|
"subscribers": [ |
|
|
|
{ |
|
|
|
"is_active": true, // Активен-ли абонент |
|
|
|
"ip": 168558850, // Его ip |
|
|
|
"tarif_id": 1 // id тарифа |
|
|
|
}, |
|
|
|
{ |
|
|
|
"is_active": true, |
|
|
|
"ip": 168558850, |
|
|
|
"tarif_id": 1 |
|
|
|
} |
|
|
|
], |
|
|
|
"tariffs": [ |
|
|
|
{ |
|
|
|
"tid": 1, // id тарифа |
|
|
|
"speedOut": 0.0, // Исходящая скорость |
|
|
|
"speedIn": 0.0 // Входящая скорость |
|
|
|
} |
|
|
|
] |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
------------------------------- |
|
|
|
Состояние оплаты абонента определяется на основе присутствия у него тарифного плана, |
|
|
|
если тариф есть - то значит всё оплачено (абонент его купил) и может пользоваться услугами. |
|
|
|
Тарифный план имеет срок действия и стоимость. Его можно купить как билет :) |
|
|
|
|
|
|
|
|
|
|
|
ТАРИФНЫЙ ПЛАН С НАИМЕНЬШИМ ЧИСЛОМ ПРИОРИТЕТА ИМЕЕТ НАИВЫСШИЙ ПРИОРИТЕТ |
|
|
|
В общем чем ближе приоритет к 0 тем он выше |
|
|
|
0 - текущий тариф |
|
|
|
Тарифный план, у которого есть дата начала является активным |
|
|
|
|
|
|
|
|
|
|
|
Свою логику расчёта по тарифу можно добавить в файле tariff_app/custom_tariffs.py |
|
|
|
|