Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Формат вызоваОписаниеПримеры использования

<value>.empty?()

Является ли значение <value> «пустым»? Пустыми считаются:

  • None;
  • Пустая строка;
  • 0.
  • $customer_profile.attributes.Static-IP.empty?()
  • $request.RAD_REQUEST.try("DHCP-Relay-Circuit-Id").empty?()

<string>.ends_with?(<suffix>[, <start_position>[, <end_position>]])

Заканчивается ли <string> строкой <suffix>? Если указаны опциональные аргументы, то проверяется не всё значение, а подстрока c символа <start_position> до символа <end_postion>. Символы нумеруются с нуля, верхняя граница интервала не включается.

$response.RAD_REPLY.DHCP-Subnet-Mask.ends_with?("/32")

<dictionary>.has_field?(<field_name>)

Имеется ли ключ <field_name> в словаре <dictionary>?$response.RAD_REPLY.has_filed?("DHCP-Flags")

$context.has_tag?(<tag_name>)

Присвоен ли тег запросу? Применяется только к переменной $context.
  • $context.has_tag?("accounting")
  • $context.has_tag?("auth-isg-service")

<substring>.in?(<string>)

 <value>.in?(<list_of_values>)

Содержится ли строка <substring> в строке <string>?

Входит ли значение <value> в список <list_of_values>?

  • $var.Separator.in?($request.RAD_REQUEST.User-Name)
  • $request.RAD_REQUEST.try("Session-Error-Msg").in?("Radius test by administrator;Authentication failure".split(";"))

<string>.ip4?()

Является ли <string> IPv4-адресом?$request.RAD_REQUEST.Agent-Remote-Id.ip4?()

<string>.ip4_mask?()

Является ли <string> маской IPv4-подсети?$request.RAD_REQUEST.DHCP-Subnet-Mask.ip4_mask?() 

<string>.like?(<pattern>)

Соответствует ли <string> регулярному выражению <pattern>? Синтаксис регулярных выражений идентичен библиотеке re в Python.

$request.RAD_REQUEST.Agent-Circuit-Id.like?("^0x(.+)$")

<string>.mac?()

Является ли <string> MAC-адресом?$request.RAD_REQUEST.Agent-Remote-Id.mac?()

<dictionary>.null?()

Пуст ли словарь <dictionary>?$customer_profile.null?()

<value>.present?()

Заполнен ли словарь или задано ли значение?
  • $bind_id.present?()
  • $customer_profile.present?()

<string>.private_ip4?()

Принадлежит ли IPv4-адрес <string> к одной из локальных подсетей:

  • 10.0.0.0/8;
  • 172.16.0.0/12;
  • 192.168.0.0/16?
$request.RAD_REQUEST.Agent-Remote-Id.private_ip4?()

<string>.starts_with?(<prefix>[, <start_position>[, <end_position>]])

Начинается ли <string> строкой <prefix>? Если указаны опциональные аргументы, проверяется подстрока c символа <start_position> до символа <end_postion>. Символы нумеруются с нуля, верхняя граница интервала не включается.

$request.RAD_REQUEST.User-Name.starts_with?("Tester", 4, 16) 

...