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

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

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

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

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

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

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

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

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

100

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

107

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

112

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

113

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

114

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

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

См. также

Вернуться к списку команд
Версия 1.23-2588
Дата публикации 15-07-2022 10:13:12