Child pages
  • XML интерфейс управления (XML API)

Skip to end of metadata
Go to start of metadata


В системе реализован XML интерфейс управления услугами и абонентами. Интерфейс находит по адресу WEB интерфейса. Оправка, получение данных производится по протоколу HTTP POST/GET. Для получения данных в XML к запросам добавляется параметр &xml=1. В системе есть возможность экспорта всех таблиц список в XML и CSV.

Пример:
Получить список абонентов 
Запрос

https://demo.abills.net.ua:9443/admin/index.cgi?index=11&EXPORT_CONTENT=USERS_LIST&xml=1&user=abills&passwd=demo

index=11

Номер функции. В системе существует динамическая нумерация функций в зависимости от настроек системы и настроек параметров доступа. По этому возможны ситуации, когда номера функций не будут отображать те же данные под разными аккаунтами. Для получения правильных номеров функции можно использовать параметр

get_index=[название функции] 

https://your.host:9443/admin/index.cgi?get_index=form_users&xml=1 

EXPORT_CONTENT=USERS_LISTЭкспортировать только данные таблицы USERS_LIST (список пользователей)
xml=1Отобразить исходные данные в формате XML


Дополнительные параметры

&show_columns=LOGIN,FIO,CONTRACT_ID,CONTRACT_DATE,BILL_IDОтображать только заданные колонки. Задаются через запятую без пробелов
&PAGE_ROWS=1000000Количество результатов вывода. По умолчанию 25
&sort=1Номер поля для сортировки
&desc=DESCПроизводить сортировку в обратном порядке

Ответ

<TABLE CAPTION="Пользователи - Все" ID="USERS_LIST">
<TITLE columns="8">
  <COLUMN_1 NAME="Логин" SORT="DESC"/>
  <COLUMN_2 NAME="ФИО"/><COLUMN_3 NAME="Депозит"/>
  <COLUMN_4 NAME="Кредит"/><COLUMN_5 NAME="Статус"/>
  <COLUMN_6 NAME="Дополнительный Депозит"/>
  <COLUMN_7 NAME="-"/>
  <COLUMN_8 NAME="-"/>
</TITLE>
<DATA><ROW>
  <TD>0</TD>
  <TD/>
  <TD>10.000000</TD>
  <TD>0.00</TD>
  <TD>Активно</TD>
  <TD>0.000000</TD>
  <TD><BUTTON VALUE="index=2&UID=108446">Оплаты</BUTTON></TD>
  <TD><BUTTON VALUE="index=3&UID=108446">Снятие денег</BUTTON></TD>
</ROW>
</TABLE>

Описание вывода:

<TABLE CAPTION="Пользователи - Все" ID="USERS_LIST">

Начало списка:

CAPTIONЗаголовок списка
IDИД списка
<TITLE columns="8">
  <COLUMN_1 NAME="Логин" SORT="DESC"/>
  <COLUMN_2 NAME="ФИО"/><COLUMN_3 NAME="Депозит"/>
...
</TITLE>

Описание и заголовки полей списка:

<DATA>
<ROW>
  <TD>0</TD>
  <TD/>
  <TD>10.000000</TD>
  ...
</ROW>
</DATA>

Секция данных:

<DATA>…</DATA>Маркер секции данных
<ROW>…</ROW>Маркер записи
<TD>…</TD>Маркер поля

Информационные Сообщения

<MESSAGE TYPE="info" CAPTION="Fees">Текст</MESSAGE>
MESSAGEИдентификатор сообщения
TYPE=«info»Тип сообщения 
info - успешное выполнение операции 
err - Ошибка при выполнении операции
CAPTIONЗаголовок сообщения

Примеры работы

Список доступных функций

index.cgi?xml=1
<INFO>
    <TITLE_TEXT/>
    <BODY>
        <INFO>
            <TIME>15:51:32</TIME>
            <DATE>2016-04-22</DATE>
            <LOGIN>test</LOGIN>
            <IP>192.168.0.107</IP>
            <STATE>Активно</STATE>
            <STATE_CODE>0</STATE_CODE>
            <MENU>
                <SID>aV6x4cz9PC9jzVJ1</SID>
                <MENU NAME="iptv_user_info" ID="64" EX_ARGS="&sid=aV6x4cz9PC9jzVJ1" DESCRIBE="Телевидение" TYPE="MAIN"/>
                <MENU NAME="iptv_user_chg_tp" ID="65" EX_ARGS="&sid=aV6x4cz9PC9jzVJ1" DESCRIBE="Тарифный план"
                      TYPE="SUB" PARENT="64"/>
                <MENU NAME="ashield_user" ID="63" EX_ARGS="&sid=aV6x4cz9PC9jzVJ1" DESCRIBE="Антивирус Dr.Web"
                      TYPE="MAIN"/>
                <MENU NAME="cards_user_payment" ID="60" EX_ARGS="&sid=aV6x4cz9PC9jzVJ1" DESCRIBE="Интернет карточки"
                      TYPE="MAIN"/>
                <MENU NAME="sharing_user_info" ID="58" EX_ARGS="&sid=aV6x4cz9PC9jzVJ1" DESCRIBE="Sharing" TYPE="MAIN"/>
                <MENU NAME="sharing_user_stats" ID="59" EX_ARGS="&sid=aV6x4cz9PC9jzVJ1" DESCRIBE="Статистика" TYPE="SUB"
                      PARENT="58"/>
                <MENU NAME="ipn_user_activate" ID="55" EX_ARGS="&sid=aV6x4cz9PC9jzVJ1" DESCRIBE="IP Net" TYPE="MAIN"/>
                <MENU NAME="ipn_getnet" ID="57" EX_ARGS="&sid=aV6x4cz9PC9jzVJ1" DESCRIBE="Тарифы трафика" TYPE="SUB"
                      PARENT="55"/>
                <MENU NAME="ipn_sessions2" ID="56" EX_ARGS="&sid=aV6x4cz9PC9jzVJ1" DESCRIBE="Статистика" TYPE="SUB"
                      PARENT="55"/>
                <MENU NAME="msgs_user" ID="54" EX_ARGS="&sid=aV6x4cz9PC9jzVJ1" DESCRIBE="Техническая Поддержка"
                      TYPE="MAIN"/>
                <MENU NAME="mail_users_list" ID="53" EX_ARGS="&sid=aV6x4cz9PC9jzVJ1" DESCRIBE="E-MAIL" TYPE="MAIN"/>
                <MENU NAME="docs_invoices_list" ID="52" EX_ARGS="&sid=aV6x4cz9PC9jzVJ1" DESCRIBE="Документы"
                      TYPE="MAIN"/>
                <MENU NAME="voip_user_info" ID="49" EX_ARGS="&sid=aV6x4cz9PC9jzVJ1" DESCRIBE="VoIP" TYPE="MAIN"/>

Информация об абоненте

https://demo.abills.net.ua:9443/admin/index.cgi?qindex=15&UID=2396&xml=1&header=1&user=abills&passwd=demo

qindex=15Номер функции информации и изменения данных абонента
UID=4884UID абонента
xml=1флаг xml вывода
header=1заголовок для браузеров

Отображает список параметров абонента.

Управление абонентом

Каждый из отображаемых параметров абонента можно изменить отправив

change=1&НАЗВАНИЕ_ПАРАМЕТРА=Значение параметра

Пример

Изменить кредит на значение 35

https://demo.abills.net.ua:9443/admin/index.cgi?qindex=15&UID=4884&xml=1&header=1&change=1&CREDIT=35

1. Управление состоянием абонента (активно, приостановлен, отключен и.т.д.)

Поиск абонента

Формат запроса

qindex=7&search_form=1&search=1&type=11&header=1&xml=1&[параметры поиска]

Пример 
Поиск по номеру контракта. контракт номер 3333

https://demo.abills.net.ua:9443/admin/index.cgi?qindex=7&search_form=1&search=1&type=11&header=1&xml=1&CONTRACT_ID=3333

Поиск по телефону

https://demo.abills.net.ua:9443/admin/index.cgi?qindex=7&search_form=1&search=1&type=11&header=1&xml=1&PHONE=1234321

Пополнение депозита

С помощь XML интерфейса можно пополнять счёт абонента

Пример

https://demo.abills.net.ua:9443/admin/index.cgi?qindex=2&UID=4884&xml=1&header=1&SUM=100&add=1
qindex=2Номер функции
UID=4884ID абонента
xml=1флаг xml вывода
header=1заголовок для браузеров
SUM=100Сумма пополнения
add=1Флаг добавления денег

Дополнительные параметры:

DESCRIBEОписание платежа
INNER_DESCRIBEКомментарий для администратора
ERКурс обмена. Указывается номер курса
METHODМетод оплаты
EXT_IDВнешний идентификатор
BILL_IDДенежный счёт. Если не указан, используется основной
DATE=YYYY-MM-DDДата платежа
CHECK_EXT_ID=xxxПроверка на существование оплаты с таким же идентификатором

Отображение информации по абоненту

Отображение общей информации

https://demo.abills.net.ua:9443/admin/index.cgi?qindex=11&header=1&UID=1091111056&xml=1&EXPORT_CONTENT=form_pi

Отображение персональной информации

https://demo.abills.net.ua:9443/admin/index.cgi?qindex=11&header=1&UID=1091111056&xml=1&EXPORT_CONTENT=user_pi

Начисления

Список начислений

список начислений за определенный период

https://demo.abills.net.ua:9443/admin/index.cgi?qindex=3&EXPORT_CONTENT=FEES&header=1&xml=1&PAGE_ROWS=1000000&user=abills&passwd=demo&search=1&TO_DATE=2018-01-31&FROM_DATE=2018-01-01

Начисления

С помощь XML интерфейса можно производить начисления

Пример

index.cgi?qindex=3&UID=4884&xml=1&header=1&SUM=100&take=1
qindex=3Номер функции
UID=4884ID абонента
xml=1Флаг xml вывода
header=1Заголовок для браузеров
SUM=100Сумма пополнения
take=1Флаг начисления (снятия со счета)

Дополнительные параметры:


DESCRIBEОписание платежа
INNER_DESCRIBEКомментарий для администратора
ERКурс обмена. Указывается номер курса
METHODТип снятия

Изменении параметров услуг

Изменение дополнительных данных абонента из модулей расширения (Internet+, Voip, IPTV). Данными для изменения могут быть

  • IP Адрес

  • Тарифный план

  • Статус сервиса

Информация о сервисе Internet

index.cgi?get_index=dv_user&xml=1&header=1&UID=4884 
get_index=dv_userИнформация по услуге Internet
UID=4884ID абонента
xml=1Флаг xml вывода
header=1Заголовок для браузеров

Изменении Тарифного плана и статуса для сервиса сервисе Internet 

index.cgi?get_index=dv_user&xml=1&header=1&UID=4884&TP_ID=21&STATUS=5&change=1 
get_index=internet_userПолучить индекс функции за ее названием
UID=4884ID абонента
xml=1Флаг xml вывода
header=1Заголовок для браузеров
TP_ID=21Номер нового тарифного палана
STATUS=4Установить статус услуги 5 (слишком маленький депозит) 
Статусы: 
0 Активно 
1 Отключено 
2 Не активизирован 
3 Приостановление 
4 Отключено: Неуплата 
5 Cлишком маленький депозит
change=1Применить изменения

Установка изменения тарифного плана по расписанию

UID=4889&Shedule=status&get_index=dv_form_shedule&xml=1&header=1&Shadule=status&DATE=2012-11-01&ACTION=3&add=1
get_index=dv_form_sheduleУправление расписанием
Shedule=statusИзменение статуса учётной записи
DATEДата когда надо изменить в формате (YYYY-MM-DD)
ACTIONНомер статуса для изменения
addПрименить действия


Управление точками подключения

Добавление домов 
(add=1)

index.cgi?get_index=form_streets&BUILDS=5261&NUMBER=69&STREET_ID=5261&add=1&xml=1&header=1

Параметры

BUILDSНомер улицы для идентификации прикреплённых домов
STREET_IDНомер улицы для дома. Если дом переносится на другую улицу этот номер будет отличатся от BUILDS. Если не переносится номера идентичны
ENTRANCESПодъездов
FLORSЭтажей
FLATSКвартир
CONTRACT_IDНомер контракта
COMMENTSКомментарий
COORDXКоординаты для google map
COORDYКоординаты для google map

Изменение параметров точки подключения (дома) 

(change=1)

index.cgi?get_index=form_streets&BUILDS=5261&LOCATION_ID=3618&COMMENTS=test&change=1&xml=1&header=1
IDУникальный номер дома в системе

Управление серверами доступа

Добавление сервера доступа 

index.cgi?get_index=form_nas&add=1&header=1&NAS_NAME=test_geo2&IP=22.11.11.11
IPIP адрес
NAS_NAMEНазвание
TYPEТип
NAS_ALIVEВремя подтверждения активности
NAS_DISABLEСтатус 
0 - Активен 
1 - Выключен 
2 - В ремонте
NAS_MNG_IP_PORTIP/Port управления
NAS_MNG_USERПользователь для управления
NAS_MNG_PASSWORDПароль управления
NAS_DESCRIBEОписание устройства
NAS_IDID устройства
NAS_IDENTIFIERДополнительный идентификатор
MACMAC устройства
GIDГруппа
LOCATION_IDПривязка к адресу

JSON интерфейс

В системе реализирован JSON интерфейс управления услугами и абонентами. Интерфейс находит по адресу WEB интерфейса. Оправка получение данных производится по протоколу HTTP POST/GET. Для получения данных в JSON формате к запросам добавляется параметр &json=1.

  • No labels