... Черновик документации по интеграции Carbon Reductor DPI X с биллингами. h1. REST-API У Carbon Reductor DPI X есть REST-API для управления абонентами. Грубо говоря, это позволяет отправлять команды с помощью curl. В текущей версии управление строится на добавлении и снятии политик для абонентов. Абоненты идентифицируются по IP адресу, поэтому в случае снятия зеркала после NAT управление абонентами работать не будет. h2. Как работает API Схема REST API: {code} http://адрес-carbon-reductor-dpi-x:порт/api/v1/policy/название-политики/ip-адрес-абонента {code} Поддерживается 4 вида политики: * auth - абонент авторизован * negbal - абонент в отрицательном балансе * blocked - абонент заблокирован администратором
|
* notify - абоненту будет один раз показано уведомление
|
Действие с политикой зависит от HTTP-метода: * GET - узнать применена ли сейчас эта политика к абоненту * POST - применить политику к абоненту * DELETE - прекратить применять политику к абоненту
|
h2. Примеры команд для управления абонентами
|
Пусть веб-интерфейс Carbon Reductor DPI X доступен по адресу [http://10.30.40.1:8083].
|
|
... Авторизовать абонента 10.30.40.50 {code} curl -XPOST http://10.30.40.1:8083/api/v1/policy/auth/10.30.40.50 {code} Проверить, перенаправляется ли абонент 10.30.40.50 на страницу отрицательного баланса {code} curl http://10.30.40.1:8083/api/v1/policy/negbal/10.30.40.50 {code} Перестать блокировать абонента 10.30.40.50 {code} curl -XDELETE http://10.30.40.1:8083/api/v1/policy/blocked/10.30.40.50 {code} Показать абоненту 10.30.40.50 уведомление один раз: {code} curl -XPOST http://10.30.40.1:8083/api/v1/policy/notify/10.30.40.50 {code}
|