Generador de expresiones de normas SIP

El generador de subexpresiones sirve para generar condiciones complejas de normas utilizando AND, OR y NOT así como la agrupación con paréntesis. El generador de normas valida la norma al aplicar los cambios y avisa si hay paréntesis desemparejados u operadores lógicos a los que no se les da soporte.

Para ver esta página de la consola administrativa, pulse Servidores > Tipos de servidor > Direccionadores On Demand > nombre_odr > Valores del direccionador On Demand de SIP > Normas SIP de política de direccionamiento > Añadir > Generador de subexpresiones.

Hay que poseer privilegios administrativos de administrador para poder modificar normas con el generador de normas.

Seleccionar operando

Operandos de política de servicio y de direccionamiento

Dependiendo del protocolo seleccionado, se mostrarán distintos operandos. En la siguiente tabla se indican los nombres de los operandos tal como se muestran en la consola, el operando tal como aparecerá realmente en la expresión, los protocolos válidos para cada operando y la descripción de cada operando.

Tabla 1. Operandos La siguiente tabla describe los nombres de operandos visualizados en la consola
Operando Sintaxis Descripción
SIP method request.method

Método SIP para la solicitud. Los valores posibles son INVITE, TRYING, RINGING, ACK, OK y BYE. Si el mensaje no es una solicitud, este operando devuelve un valor nulo.

SIP response code response.code

Código de la respuesta. Si el mensaje no es una respuesta, este operando devuelve -1.

Scheme of To header to.uri.scheme

El esquema del campo A cabecera.

Scheme of URI request.uri.scheme

El esquema del URI.

Scheme of From header request.from.uri.scheme

El esquema del campo Desde cabecera.

Request URI request.uri

El URI de la solicitud.

To URI request.to.uri

El URI del campo A cabecera.

From URI request.from.uri

El URI del campo Desde cabecera.

From header request.from

El campo Desde cabecera.

To header request.to

El campo A cabecera.

To header display name request.to.display-name

El nombre de visualización en el campo A cabecera.

From header display name request.from.display-name

El nombre de visualización en el campo Desde cabecera.

To URI host request.to.uri.host

El puerto del URI del campo A cabecera.

Server host serverhost El nombre completo del host del servidor. Este operando no da soporte a operadores numéricos como >, >=, <, <=.
Port port El puerto de escucha en el que se ha recibido la solicitud.
Contact header request.contact

El campo Cabecera de contacto.

Contact URI request.contact.uri

El URI del campo Cabecera de contacto.

Client host clienthost El nombre completo del host del cliente. Éste es el valor del nombre del host de mandatos de protocolo de Internet (IP). Este operando no da soporte a operadores numéricos como >, >=, <, <=.
clientipv4 clientipv4 La dirección IP del sistema cliente utilizando el tipo de dirección cuádruple con puntos n.n.n.n de Internet Protocol versión 4 (IPv4).
clientipv6 clientipv6 El tipo de dirección de 128 bits x:x:x:x:x:x:x:x de Internet Protocol versión 6 (IPv6) que sigue a la solicitud de comentarios 1924 (RFC 1924) del sistema cliente.
serveripv4 serveripv4 La dirección IP del sistema servidor utilizando el tipo de dirección cuádruple con puntos IPv4 n.n.n.n.
serveripv6 serveripv6 El tipo de dirección de 128 bits de IPv6 x:x:x:x:x:x:x:x después de RFC 1924 del sistema servidor.
Request transport request.transport

El transporte de la solicitud.

Request URI user request.uri.user

El usuario en el URI de la solicitud.

From URI user request.from.uri.user

El usuario en el campo Desde cabecera.

To URI user request.to.uri.user

El usuario en el campo A cabecera.

Request URI host request.uri.host

El host en el URI de la solicitud.

From URI host request.from.uri.host

El host en el campo Desde cabecera.

Request URI port request.uri.port

El puerto en el URI de la solicitud.

From URI port request.from.uri.port

El puerto en el URI del campo Desde cabecera.

To URI host request.to.uri.host

Host en el campo A cabecera.

Header name header$<nombre> Un valor y nombre de cabecera. Por ejemplo, la expresión header$Host='localhost' comprueba si una solicitud contiene la cabecera de host HTTP con un valor de localhost. Para comprobar si falta o no la cabecera de host, utilice una de las siguientes expresiones:
header$Host IS NOT NULL
header$Host IS NULL
Time hora

Este operando se utiliza para definir la fecha y la hora del día en que debe satisfacerse una solicitud dada. Dos campos opcionales son Hora de inicio y Hora de finalización. Si se recibe una solicitud fuera de este intervalo definido, la solicitud no se procesará.

Los campos Hora de inicio y Hora de finalización tienen el siguiente formato: díadelasemana/díadelmes/mes/año::hora:minuto:segundo.

Por ejemplo, Jueves, 11 de abril, año 2007 a las 13:03:45 se especifica tal como se indica a continuación:

Jue/11/Abr/2007::13:03:45

Cualquier campo puede utilizar un comodín con el valor *. Por ejemplo, el primero de cada mes se especifica como */1.

Los valores díadelasemana son Lun, Mar, Mié, Jue, Vie, Sáb y Dom, y los valores de díadelmes oscilan entre 1 y 31.

El valor mes es un valor no numérico que representa los doce meses: Ene, Feb, Mar, Abr, May, Jun, Jul, Ago, Sep, Oct, Nov, Dec.

El valor año consta de los cuatro dígitos del año. Por ejemplo, 2007.

El valor hora es la hora del día en el reloj de 24 horas. Por ejemplo, 8:00 se representa como ::8. El minuto y segundo son enteros que oscilan entre 0 y 59.

La barra inclinada hacia delante (/) se utiliza para separar los parámetros de fecha, los dos puntos dobles (::) se utilizan para separar los valores de la fecha y la hora del día y los dos puntos (:) se utilizan para separar los parámetros de la hora del día. Tenga en cuenta que este es el resultado booleano de la norma completa en la que se utiliza el operando time que determina la acción de direccionamiento que se llevará a cabo.

Percentage percentage$<val> El porcentaje percentage se evalúa en true, un porcentaje fijo del tiempo. Por ejemplo, percentage$50 se evalúa en true de promedio el 50% del tiempo.
Ramp up rampup$<hora de inicio>

  $<hora de finalización>

El operando rampup evalúa en true un porcentaje variable del tiempo. Siempre se evalúa en false antes de <hora de inicio> y en true después de <hora de finalización>. A medida que el tiempo pasa de <hora de inicio> a <hora de finalización>, se evalúa en true, un porcentaje que aumenta de forma lineal.

El formato de <hora de inicio> y <hora de finalización> es día/mes/año::hora:min:seg.

donde día es el día del mes, mes es uno de los 12 meses: Ene, Feb, Mar, Abr, May, Jun, Jul, Ago, Sep, Oct, Nov, Dic, año es el año de cuatro dígitos, hora es la hora de dos dígitos del reloj de 24 horas, y min y seg son valores de 2 dígitos para minuto y segundo, respectivamente.

Por ejemplo,

rampup$01/Jan/2007::08:00:00$01/Jan/2007::17:00:00 empieza de vez en cuando a evaluarse en true a las 8:00 el 1 Ene, 2007 y siempre se evalúa en true por la hora de finalización de la devolución incremental a las 17:00 del mismo día.

Operador

Tabla 2. Operadores de especificación de rastreo
Operador Descripción
Equals Ignore Case (EQUALSIGNORECASE) Operador que equivale a ignorar la distinción mayúsculas/minúsculas. Se ignora la distinción mayúsculas/minúsculas. 'ABC' EQUALSIGNORECASE 'abc' es true. ('ABC' = 'abc') es false.
Not Equals (< >) El operador not equal expresa que el valor del operando no es igual al valor que especifique.
In (IN)
  • En la serie IN lista de series se evalúa en true si la serie a la izquierda coincide exactamente (sensible a las mayúsculas y minúsculas) con una serie que se lista a la derecha. Por ejemplo:
    • ’adrian’ in ('keith','eric','kalyan','david', 'adrian and etc') es false.
    • 'adrian' in ('tom','adrian') es true.
    • ’adrian’ in ('Tom','Adrian') es false.
  • entero IN lista de enteros :
    • 1 in (1,2,3,4,5) es true.
    • 6 in (1,2,3,4,5) es false.
Like (LIKE)

Expresa el patrón que coincide con los valores de operando de la serie. El valor debe contener el carácter comodín (%) en la posición donde se espera que empiece la coincidencia de patrón.

Por ejemplo, la expresión:
host LIKE %blanca
coincide con la palabra blanca y con cualquier palabra que finalice por blanca, mientras que la expresión
host LIKE blanca%
coincide con la palabra blanca y con cualquier otra palabra que empiece por blanca. La expresión:
host LIKE %blanca%
coincide con la palabra blanca y con cualquier palabra que contenga blanca.
Like Ignore Case (LIKEIGNORECASE) Este operador expresa la coincidencia de patrón para los valores de operando de serie. Se ignora la distinción mayúsculas/minúsculas.
Is Not Null (IS NOT NULL) Una validación de la consulta muestra que existe el parámetro requerido.
Concatenate (+) Este operador evalúa 'abc'+'def' como 'abcdef'.
Like In (LIKEIN) Este operador expresa que serie likein (serie1, serie2, serie3,...) se evalúa en true si la serie a la izquierda de likein coincide con una o varias series (stringN).
Is Null (IS NULL) Una validación de la consulta muestra que el parámetro requerido no existe. Busca un operando que tenga un valor NULL.
Equals ( = ) El operador de igualdad expresa una coincidencia de mayúsculas y minúsculas.
Greater Than (>) Se evalúa en el resultado lógico estándar.
Greater Than or Equals (>=) Se evalúa en el resultado lógico estándar.
Less Than (<) Se evalúa en el resultado lógico estándar.
Less Than or Equals (<=) Se evalúa en el resultado lógico estándar.
Between (BETWEEN) Se utiliza con AND para seleccionar un rango de valores incluyendo el primer valor (inferior) y el último (superior). Conjuntamente, operan en valores de fechas y números.

Valor

Dependiendo del valor elegido, escriba un valor para la subexpresión que ha elegido crear.

Generar subexpresión

Genera la subexpresión como un resultado del operando, el operador y los valores especificados.

Agregar

Pulse para agregar al recuadro en el panel de normas.



Nombre de archivo: sip_rulebuilder_detail.html