RetrieveRadiusUserListV3 - Запрос списка аккаунтов Wi-Fi клиентов из базы RADIUS с фильтром по произвольному атрибуту и времени

Общая информация

  1. Команда актуальна, начиная с версии 1.7.

  2. Команда предназначена для получения списка аккаунтов Wi-Fi клиентов из базы RADIUS с фильтром по произвольному атрибуту и времени.

Входные параметры

Параметр Значение Формат значения Расшифровка формата Ссылка

username

Логин клиента, если установлен, то выдается список аккаунтов, логин которых содержит значение данного поля. Используйте специальные символы ? (один символ) и % (неограниченное кол-во символов).

^.{1,64}$

Текст до 64-х символов.

Wi-Fi пользователь

domain

Домен клиента, может быть пустым.

(?=^.{1,235}$)(^((?!-|_|.*(__|--).*)[a-zA-Z0-9_\-]\{1,63}\.)*((?!-|_|.*(__|--).*)[a-zA-Z0-9_\-]{1,63})$)

Текст длиной до 235 символов, удовлетворяющий правилам FQDN.

Domain

tariffCode

Фильтр по коду тарифного плана. Может отсутствовать.

^.{1,64}$

Текст до 64-х символов.

timeStart

Поле для поиска по времени активности в формате «yyyy-MM-ddTHH:mm:ss±HH:MM». Время окончания сессии не может быть раньше этого параметра. Может быть пустым.

.*

Время по стандарту "ISO 8601" в формате «yyyy-MM-ddTHH:mm:ss±HH:MM», например "2008-11-15T22:52:58+03:00"

timeStop

Поле для поиска по времени активности в формате «yyyy-MM-ddTHH:mm:ss±HH:MM». Время начала сессии не может быть позже этого параметра. Может быть пустым.

.*

Время по стандарту "ISO 8601" в формате «yyyy-MM-ddTHH:mm:ss±HH:MM», например "2008-11-15T22:52:58+03:00"

attrFilter

NbiAttr Фильтрация по произвольному атрибуту в БД RADIUS.

.*

NbiAttr

count

Кол-во выводимых элементов, обязательно.

^[1-9][0-9]*$

Целое положительное число

page

Номер страницы, порции выдаваемых элементов, обязательно.

^[1-9][0-9]*$

Целое положительное число

orderBy

Поле, определяющее, по какому элементу сортировать выдаваемые данные.

.*

username, domain или имя любого атрибута (при условии, что атрибут будет указан в списке attributeName)

orderType

Поле определяющее тип сортировки. (По умолчанию ASC)

^(ASC|DESC)$

ASC или DESC

attributeName

0 или более строковых элементов, определяющий имена атрибутов, которые нужно вернуть. Если не задано ни одного, то возвращаются все атрибуты, но тогда нельзя использовать сортировку по атрибуту.

.*

Атрибуты пользователя, ожидается один или больше объект NbiAttr.

Выходные параметры

Параметр Значение Формат значения

response

Массив объектов NbiRadiusUserItemSingle.

NbiRadiusUserItemArray

code

Код ответа

int

detail

Пояснение к ответу. При успешном выполнении команды содержит суммарное количество пользователей, которые удовлетворяют условиям выборки.

Текст английскими буквами с пробелами и спецсимволами.

Примеры команд и кодов

Код Описание

0

Успешно

Запрос
      <nbi:RetrieveRadiusUserListV3>
         <nbi:username>%user3%</nbi:username>
         <nbi:domain>root</nbi:domain>
         <nbi:tariffCode>100mb</nbi:tariffCode>
         <nbi:timeStart>2020-11-28T07:31:28</nbi:timeStart>
         <nbi:timeStop>2020-12-01T07:31:28</nbi:timeStop>
         <nbi:attrFilter>
            <xsd:name>Eltex-User-Category</xsd:name>
            <xsd:oper>=</xsd:oper>
            <xsd:value>enterprise</xsd:value>
         </nbi:attrFilter>
         <nbi:count>10</nbi:count>
         <nbi:page>1</nbi:page>
         <nbi:orderBy></nbi:orderBy>
         <nbi:orderType></nbi:orderType>
         <nbi:attributeName>TLS-Client-Cert-Serial</nbi:attributeName>
      </nbi:RetrieveRadiusUserListV3>
Ответ
      <ns:RetrieveRadiusUserListV3Response>
         <ns:return>
            <ax21:code>0</ax21:code>
            <ax21:detail>1</ax21:detail>
            <ax21:response xsi:type="ax21:NbiRadiusUserItemArray">
               <ax21:item xsi:type="ax21:NbiRadiusUserItemSingle">
                  <ax21:clientCrtLink/>
                  <ax21:domain>root</ax21:domain>
                  <ax21:name>crtOlduser3</ax21:name>
                  <ax21:password/>
                  <ax21:tariffCode>100mb</ax21:tariffCode>
                  <ax21:check xsi:type="ax21:NbiAttrArray">
                     <ax21:attr xsi:type="ax21:NbiAttr">
                        <ax21:name>TLS-Client-Cert-Serial</ax21:name>
                        <ax21:oper>:=</ax21:oper>
                        <ax21:value>0f</ax21:value>
                     </ax21:attr>
                  </ax21:check>
                  <ax21:common xsi:type="ax21:NbiAttrArray">
                     <ax21:attr xsi:type="ax21:NbiAttr">
                        <ax21:name>Eltex-User-Category</ax21:name>
                        <ax21:oper>=</ax21:oper>
                        <ax21:value>enterprise</ax21:value>
                     </ax21:attr>
                  </ax21:common>
                  <ax21:reply xsi:type="ax21:NbiAttrArray">
                     <ax21:attr xsi:type="ax21:NbiAttr">
                        <ax21:name>Eltex-User-Create-Date</ax21:name>
                        <ax21:oper>=</ax21:oper>
                        <ax21:value>2020-09-09 17:50:25</ax21:value>
                     </ax21:attr>
                  </ax21:reply>
                  <ax21:verificationWay xsi:nil="true"/>
               </ax21:item>
               <ax21:item xsi:type="ax21:NbiRadiusUserItemSingle">
                  <ax21:clientCrtLink>http://127.0.0.1:8080/eltex-radius-nbi/certificates/root/user3.zip</ax21:clientCrtLink>
                  <ax21:domain>root</ax21:domain>
                  <ax21:name>user3</ax21:name>
                  <ax21:password/>
                  <ax21:tariffCode>100mb</ax21:tariffCode>
                  <ax21:check xsi:type="ax21:NbiAttrArray">
                     <ax21:attr xsi:type="ax21:NbiAttr">
                        <ax21:name>TLS-Client-Cert-Serial</ax21:name>
                        <ax21:oper>:=</ax21:oper>
                        <ax21:value>5f</ax21:value>
                     </ax21:attr>
                  </ax21:check>
                  <ax21:common xsi:type="ax21:NbiAttrArray">
                     <ax21:attr xsi:type="ax21:NbiAttr">
                        <ax21:name>Eltex-User-Category</ax21:name>
                        <ax21:oper>=</ax21:oper>
                        <ax21:value>enterprise</ax21:value>
                     </ax21:attr>
                  </ax21:common>
                  <ax21:reply xsi:type="ax21:NbiAttrArray">
                     <ax21:attr xsi:type="ax21:NbiAttr">
                        <ax21:name>Eltex-User-Create-Date</ax21:name>
                        <ax21:oper>=</ax21:oper>
                        <ax21:value>2020-10-02 15:38:46</ax21:value>
                     </ax21:attr>
                  </ax21:reply>
                  <ax21:verificationWay xsi:nil="true"/>
               </ax21:item>
               <ax21:item xsi:type="ax21:NbiRadiusUserItemSingle">
                  <ax21:clientCrtLink/>
                  <ax21:domain>root</ax21:domain>
                  <ax21:name>user33</ax21:name>
                  <ax21:password/>
                  <ax21:tariffCode>100mb</ax21:tariffCode>
                  <ax21:check xsi:type="ax21:NbiAttrArray">
                     <ax21:attr xsi:type="ax21:NbiAttr">
                        <ax21:name>TLS-Client-Cert-Serial</ax21:name>
                        <ax21:oper>:=</ax21:oper>
                        <ax21:value>1e</ax21:value>
                     </ax21:attr>
                  </ax21:check>
                  <ax21:common xsi:type="ax21:NbiAttrArray">
                     <ax21:attr xsi:type="ax21:NbiAttr">
                        <ax21:name>Eltex-User-Category</ax21:name>
                        <ax21:oper>=</ax21:oper>
                        <ax21:value>enterprise</ax21:value>
                     </ax21:attr>
                  </ax21:common>
                  <ax21:reply xsi:type="ax21:NbiAttrArray">
                     <ax21:attr xsi:type="ax21:NbiAttr">
                        <ax21:name>Eltex-User-Create-Date</ax21:name>
                        <ax21:oper>=</ax21:oper>
                        <ax21:value>2020-09-10 14:43:44</ax21:value>
                     </ax21:attr>
                  </ax21:reply>
                  <ax21:verificationWay xsi:nil="true"/>
               </ax21:item>
            </ax21:response>
         </ns:return>
      </ns:RetrieveRadiusUserListV3Response>

Код Описание ошибки

8

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

10

Домен роли не имеет прав на домен пользователя или домен тарифного плана

62

Домен клиента не зарегистрирован

100

Тарифного плана с таким кодом не существует

107

Время начала активности не должно превышать время конца активности

112

Не установлен параметр в поле count

113

Не установлен параметр в поле page

114

Некорректное значение поля orderBy

Пример использования

См. также

Вернуться к списку команд
Версия 1.19-67
Дата публикации 07-05-2021 17:25:19