![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
Intelligent Management: operandos SIP
Puede utilizar los operandos SIP y sus protocolos asociados en el generador de programas de utilidad de subexpresiones, una herramienta opcional que le ayuda a generar condiciones de reglas complejas a partir de subexpresiones utilizando AND, OR, NOT y la agrupación de paréntesis.
Reglas
Cada clase de trabajo contiene una lista opcional ordenada de reglas que se evalúan para una solicitud concreta para determinar la política de dicha solicitud. Cada regla está formada por una expresión booleana y un valor de política. Si la expresión se evalúa en true (verdadero) para una solicitud determinada, se utiliza la política asociada a dicha regla.
La sintaxis y la semántica de una expresión booleana para una regla son similares a la cláusula WHERE de una expresión de lenguaje de consulta estructurado (SQL). De forma más precisa, la sintaxis de una expresión se define mediante la especificación JMS (Java™ Message Service 1.1). Para obtener más información sobre la sintaxis y la semántica de expresiones, consulte el tema sobre la clasificación de solicitudes basadas en reglas.
En la especificación JMS, los identificadores hacen referencia a distintos atributos que se pueden asociar a una solicitud, por ejemplo, un parámetro de consulta específico, una cookie o una cabecera HTTP. Un identificador JMS se puede considerar como una variable de solicitud, u operando. Estos operandos pueden ser específicos para un protocolo. Por ejemplo, el nombre de servicio SOAP es un operando que sólo es válido en una clase de trabajo SOAP.
clienthost LIKE '%.ibm.com'
'%.ibm.com' es un literal que se utiliza para comparar con el nombre de host cliente para una solicitud. Esta expresión es true para todas las solicitudes que se originan a partir de un sistema del dominio ibm.com. Indique estos literales de serie entre comillas simples.
No indique los literales numéricos entre comillas simples. Los paréntesis junto con los operadores AND, OR y NOT también se pueden utilizar para formar expresiones booleanas compuestas. Consulte la especificación JMS 1.1 para ver una descripción detallada.Operandos SIP
Operando | Sintaxis | Descripción |
---|---|---|
Host de cliente |
clienthost | El nombre de host cliente plenamente cualificado. Este es el valor del nombre de host del mandato del protocolo Internet (IP). Este operando no admite operadores numéricos como >, >=, <, <=. |
IPV4 de cliente |
clientipv4 | La dirección IP de cliente que utiliza el tipo de dirección de cuatro elementos con puntos del Protocolo Internet de versión 4 (IPv4) n.n.n.n. |
IPV6 de cliente |
clientipv6 | El tipo de dirección de 128 bits x:x:x:x:x:x:x:x del Protocolo Internet versión 6 (IPv6) según la RFC (Request for Comments) 1924 del sistema cliente. |
Cabecera Contacto |
request.contact | El campo de cabecera Contacto. |
URI de contacto |
request.contact.uri | El URI del campo de cabecera Contacto. |
Cabecera Desde |
request.from | El campo de cabecera Desde. |
Nombre de visualización de cabecera Desde |
request.from.display-name | El nombre de visualización del campo de cabecera Desde. |
URI de Desde |
request.from.uri | El URI del campo de cabecera Desde. |
Host de URI de Desde |
request.from.uri.host | El host del campo de cabecera Desde. |
Puerto de URI de Desde |
request.from.uri.port | El puerto en el URI del campo de cabecera Desde. |
Usuario de URI de Desde |
request.from.uri.user | El usuario del campo de cabecera Desde. |
Nombre de cabecera |
header $<nombre> | Nombre de cabecera y el valor. Por ejemplo, la expresión
header$Host='localhost' prueba una solicitud para ver si contiene
una cabecera de host HTTP con un valor de localhost.
Para probar la presencia o ausencia de la cabecera de host, utilice una de las siguientes expresiones:
|
Porcentaje |
percentage$<val> | El operando de porcentaje se evalúa en true un
porcentaje fijo de tiempo. Por ejemplo, percentage$50 se evalúa en true el 50% del tiempo aproximadamente. |
Puerto |
port | El puerto de escucha en el cual se recibió la solicitud. |
Rampup |
rampup$<horaInicio> $<horaFinalización> |
El operando rampup se evalúa en true un porcentaje
variable de tiempo. Siempre se evalúa en false antes de la
<horaInicio> y en true después de la
<horaFinalización>.
Cuando la hora avanza de la <horaInicio> hasta la
<horaFinalización>, se evalúa en true, un
porcentaje linealmente en aumento. El formato de <horaInicio> y <horaFinalización> es día/mes/año::hora:min:seg. donde día es el día del mes, mes es uno de los doce meses: Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec, año es el año de 4 dígitos, hora es la hora de 2 dígitos del reloj de 24 horas, y min y seg son los valores de 2 dígitos para los minutos y los segundos, respectivamente.Por ejemplo, rampup$01/Ene/2007::08:00:00$01/Ene/2007::17:00:00 empieza a evaluarse ocasionalmente en true a las 8 AM del 1 Ene 2007 y siempre se evalúa en true según la hora de finalización de rampup a las 5 PM del mismo día. |
Transporte de solicitud |
request.transport | El transporte de la solicitud. |
URI de solicitud |
request.uri | El URI de la solicitud. |
Host de URI de solicitud |
request.uri.host | El host del URI de la solicitud. |
Puerto de URI de solicitud |
request.uri.port | El puerto del URI de la solicitud. |
Usuario de URI de solicitud |
request.uri.user | El usuario del URI de la solicitud. |
Esquema de cabecera Desde |
request.from.uri.scheme | El esquema del campo de cabecera Desde. |
Esquema de cabecera Para |
to.uri.scheme | El esquema del campo de cabecera Para. |
Esquema de URI |
request.uri.scheme | El esquema del URI. |
Host de servidor |
serverhost | El nombre de host totalmente calificado del servidor. Este operando no admite operadores numéricos como >, >=, <, <=. |
IPV4 de servidor |
serveripv4 | La dirección IP del sistema servidor utilizando el tipo de dirección de cuatro elementos con puntos IPv4 n.n.n.n. |
IPV6 de servidor |
serveripv6 | El tipo de dirección de 128 bits de IPv6 x:x:x:x:x:x:x:x indicado a continuación de RFC 1924 del sistema servidor. |
Método SIP |
request.method | El 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 nulo. |
Código de respuesta SIP |
response.code | El código de respuesta de la respuesta. Si el mensaje no es una respuesta, este operando devuelve -1. |
Host de cliente de Para |
clienthost | El host de cliente del campo de cabecera Para. |
Cabecera Para |
request.to | El campo de cabecera Para. |
Nombre de visualización de cabecera Para |
request.to.display-name | El nombre de visualización del campo de cabecera Para. |
URI de Para |
request.to.uri | El URI del campo de cabecera Para. |
Host de URI de Para |
request.to.uri.host | El puerto en el URI del campo de cabecera Para. |
Usuario de URI de Para |
request.to.uri.user | El usuario del campo de cabecera Para. |
Operadores
Intelligent Management soporta los operadores en la tabla siguiente en las expresiones de reglas. También se hace referencia a estos operadores como predicados en la terminología SQL porque aparecen dentro de una cláusula WHERE o HAVING. Los operadores no distinguen entre mayúsculas y minúsculas.
Operador | Descripción |
---|---|
OR | El operador OR lógico. |
AND | El operador AND lógico. |
NOT | El operador de negación. |
IN | Expresa un operando con varios valores en una sola expresión.
Su significado es coherente con el significado estándar SQL del operador.
Por ejemplo, si desea expresar que el valor de puerto
podría ser cualquier valor o todos los valores como, por ejemplo, 9080, 9090,
9091, utilice el fragmento de expresión:
En
SQL, la forma como se expresan los valores dentro de los paréntesis depende del tipo de datos del puerto. Si el puerto es un entero, los valores sin los símbolos de comillas sencillas son correctos sintácticamente. Si el puerto es una serie, la expresión correcta es:
|
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 %blancacoincide 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 tenga la señal blanca incorporada. Se utiliza la clase java.util.regex.Pattern. |
= | El operador de igualdad expresa una coincidencia de mayúsculas y minúsculas. |
> | El operador mayor que se utiliza con operandos numéricos. |
>= | El operador mayor o igual que se utiliza con operandos numéricos. |
< | El operador menor que se utiliza con operandos numéricos. |
<= | El operador menor o igual que se utiliza con operandos numéricos. |
< > | Operador no es igual a. |
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. |
IS NULL | Comprueba si un operando tiene un valor NULL. |
IS NOT NULL | Comprueba si un operando tiene un valor que no sea NULL. |