RetrieveRadiusTariffListFreeSearch - Получить список тарифов по типу тарифа и гибкому фильтру
Общая информация
-
Команда актуальна, начиная с версии 1.22.
-
Команда позволяет получить список тарифов с фильтрацией по типу тарифа (ТД/PCRF) и полям tariffCode, tariffName, tariffDomain с помощью гибкого фильтра.
-
Команда позволяет отсортировать результат по полям таблицы radius.TARIFF в прямом и обратном лексикографическом порядке.
-
Команда возвращает данные с пагинацией. По умолчанию возвращаются первые 10 записей, подходящих под условие запроса. Если выполнить запрос с параметром
count = 0, то можно получить в поле detail количество тарифов, подходящих под условия запроса. -
С помощью этой команды можно получить количество пользователей, связанных с тарифами.
Входные параметры
| Параметр | Значение | Формат значения | Расшифровка формата | Обязательный параметр |
|---|---|---|---|---|
filter |
Гибкий фильтр по полям tariffCode, tariffName, tariffDomain |
String |
нет |
|
domains |
Список доменов, в которых находятся. Если список пуст, то домены будут взяты из роли. |
(?=^.{1,235}$)(^((?!-|_|.*(__|--).*)[a-zA-Z0-9_\-]{1,63}\.)*((?!-|_|.*(__|--).*)[a-zA-Z0-9_\-]{1,63})$) |
Текст длиной до 235 символов, удовлетворяющий правилам FQDN |
нет |
tariffType |
Тип тарифа (обязательный параметр) |
^(portal|pcrf)$ |
Portal - тарифы ТД, pcrf - тарифы pcrf и BRAS. |
да |
countUsers |
Считать количество пользователей, использующих тариф. Если параметр не будет указан, то пользователи не будут подсчитаны. |
^(true|false)$ |
true или false |
нет |
count |
Число тарифов, которые надо вернуть |
int |
Целое неотрицательное число. По умолчанию - 10. Параметр пагинации (число записей на одну страницу). |
нет |
skip |
Число тарифов, которые надо пропустить |
int |
Целое неотрицательное число. По умолчанию - 0. Параметр пагинации. |
нет |
orderBy |
Сортировать записи по указанному полю |
String |
Название поля таблицы radius.TARIFF (по умолчанию id) |
нет |
orderType |
Порядок сортировки (по умолчанию ASC) |
^(ASC|DESC)$ |
ASC или DESC |
нет |
Выходные параметры
| Параметр | Значение | Формат значения |
|---|---|---|
response |
||
code |
Код ответа |
int |
detail |
Пояснение к ответу |
String |
Примеры команд и кодов
| Код | Описание |
|---|---|
0 |
Успешно |
Запрос
<nbi:RetrieveRadiusTariffListFreeSearch>
<nbi:filter>test</nbi:filter>
<nbi:domains>.test.root</nbi:domains>
<nbi:domains>.nsk.root</nbi:domains>
<nbi:tariffType>portal</nbi:tariffType>
<nbi:countUsers>false</nbi:countUsers>
<nbi:count>10</nbi:count>
<nbi:skip>0</nbi:skip>
<nbi:orderBy>id</nbi:orderBy>
<nbi:orderType>ASC</nbi:orderType>
</nbi:RetrieveRadiusTariffListFreeSearch>
Ответ
<ns:RetrieveRadiusTariffListFreeSearchResponse xmlns:ns="http://nbi.radius.eltex.org">
<ns:return xsi:type="ax23:NbiCodeTariffWithPortalsResponse">
<ax21:code>0</ax23:code>
<ax21:detail>Success</ax23:detail>
<ax21:response xsi:type="ax23:NbiTariffArrayWithPortals">
<ax21:item xsi:type="ax21:NbiSingleTariffWithPortals">
<ax21:createDate>2021-06-22T16:34:47.000+07:00</ax21:createDate>
<ax21:deactivated>false</ax21:deactivated>
<ax21:tariffCode>test</ax21:tariffCode>
<ax21:tariffDescr/>
<ax21:tariffDomain>test.root</ax21:tariffDomain>
<ax21:tariffName>test</ax21:tariffName>
<ax21:users>0</ax21:users>
<ax21:check xsi:type="ax21:NbiAttrArray"/>
<ax21:groupcheck xsi:type="ax21:NbiAttrArray"/>
<ax21:groupreply xsi:type="ax21:NbiAttrArray">
<ax21:attr xsi:type="ax21:NbiAttr">
<ax21:name>Eltex-User-Create-Date</ax21:name>
<ax21:oper>=</ax21:oper>
<ax21:value>2021-06-22 09:34:46</ax21:value>
</ax21:attr>
</ax21:groupreply>
<ax21:portal xsi:type="ax21:NbiAttrArray">
<ax21:attr xsi:type="ax21:NbiAttr">
<ax21:name>Eltex-Tariff-Portal-Only</ax21:name>
<ax21:oper>=</ax21:oper>
<ax21:value>false</ax21:value>
</ax21:attr>
</ax21:portal>
<ax21:reply xsi:type="ax21:NbiAttrArray"/>
<ax21:portals xsi:type="ax21:NbiNameArray"/>
</ax21:item>
<ax21:item xsi:type="ax21:NbiSingleTariffWithPortals">
<ax21:createDate>2022-03-18T21:44:00.000+07:00</ax21:createDate>
<ax21:deactivated>false</ax21:deactivated>
<ax21:tariffCode>bestTariffEver</ax21:tariffCode>
<ax21:tariffDescr/>
<ax21:tariffDomain>nsk.root</ax21:tariffDomain>
<ax21:tariffName>best test tariff</ax21:tariffName>
<ax21:users>0</ax21:users>
<ax21:check xsi:type="ax21:NbiAttrArray"/>
<ax21:groupcheck xsi:type="ax21:NbiAttrArray"/>
<ax21:groupreply xsi:type="ax21:NbiAttrArray">
<ax21:attr xsi:type="ax21:NbiAttr">
<ax21:name>Eltex-User-Create-Date</ax21:name>
<ax21:oper>=</ax21:oper>
<ax21:value>2022-03-18 21:43:59</ax21:value>
</ax21:attr>
</ax21:groupreply>
<ax21:portal xsi:type="ax21:NbiAttrArray">
<ax21:attr xsi:type="ax21:NbiAttr">
<ax21:name>Eltex-Tariff-Portal-Only</ax21:name>
<ax21:oper>=</ax21:oper>
<ax21:value>false</ax21:value>
</ax21:attr>
</ax21:portal>
<ax21:reply xsi:type="ax21:NbiAttrArray"/>
<ax21:portals xsi:type="ax21:NbiNameArray"/>
</ax21:item>
</ax21:response>
</ns:return>
</ns:RetrieveRadiusTariffListFreeSearchResponse>
| Код | Описание ошибки |
|---|---|
2 |
Ошибка обращения к БД MySQL |
7 |
Некорректный домен |
8 |
Домен не удовлетворяет правилам FQDN |
10 |
У роли нет прав на указанный домен |
62 |
Несуществующий домен |
114 |
Некорректное значение поля "orderBy" |
281 |
Не указан один из обязательных параметров запроса |
312 |
Некорректное значение для параметра 'tariffType' |
441 |
Не настроен Elvis |
494 |
Ошибка авторизации |
506 |
Ошибка DOORS-NBI |
999 |
Системная ошибка |
Пример использования
См. также
Вернуться к списку команд
Версия 1.24-2769
Дата публикации 18-10-2022 03:26:05