[AIX Solaris HP-UX Linux Windows][z/OS]

Intelligent Management : opérandes SIP

Vous pouvez utiliser les opérandes SIP et les protocoles associés dans le générateur de sous-expression, outil disponible en option permettant de générer des conditions de règle complexes à partir de sous-expressions avec AND, OR, NOT et le regroupement entre parenthèses.

Utilisez les liens des sous-rubriques suivantes pour rechercher des informations spécifiques :

Règles

Chaque classe de travail contient une liste ordonnée et facultative de règles qui sont évaluées pour une demande particulière afin de déterminer la stratégie à lui appliquer. Chaque règle se compose d'une expression booléenne et d'une valeur de stratégie. Si l'expression renvoie la valeur true pour une demande particulière, la stratégie associée à cette règle est utilisée.

La syntaxe et la sémantique d'une expression booléenne d'une règle sont similaires à celles de la clause WHERE d'une expression SQL (Structured Query Language). Plus précisément, la syntaxe d'une expression est définie par la spécification Java™ Message Service (JMS) 1.1. Pour plus d'informations sur la syntaxe et la sémantique des expressions, consultez la rubrique relative à la classification des demandes basées sur des règles.

Dans la spécification JMS, les identificateurs font référence à différents attributs pouvant être associés à une demande, par exemple, un paramètre de demande, un cookie ou un en-tête HTTP spécifique. Un identificateur JMS peut être considéré comme une variable de demande ou opérande. Ces opérandes peuvent être propres à un protocole. Par exemple, le nom de service SOAP est un opérande qui n'est valide que dans une classe de travail SOAP.

Etant donné que SOAP se trouve au-dessus de HTTP, les opérandes HTTP sont également valides dans une demande SOAP. La spécification JMS utilise des littéraux pour indiquer une valeur spécifique à employer dans une comparaison de variable de demande. Par exemple, dans l'expression :
clienthost LIKE '%.ibm.com'
'%.ibm.com' est un littéral utilisé pour comparer le nom d'hôte client pour une demande. Cette expression est vraie pour toutes les demandes qui émanent d'un ordinateur du domaine ibm.com. Placez les littéraux chaîne entre guillemets simples. Ne placez pas les littéraux numériques entre guillemets simples. Utilisées avec les opérateurs AND, OR et NOT, les parenthèses permettent de former des expressions booléennes complexes. La spécification JMS 1.1 propose une description détaillée de ces éléments.

Opérandes SIP

Tableau 1. Opérandes dans le générateur de sous-expression
Opérande Syntaxe Description

Hôte client

clienthost Nom d'hôte complet du client. Il s'agit de la valeur du nom d'hôte de la commande IP. Cet opérande ne prend pas en charge les opérateurs numériques tels que >, >=, <, <=.

IPV4 client

clientipv4 clientipv4 – Adresse IP du client dans le format Internet Protocol version 4 (IPv4) à quatre éléments séparés par des points n.n.n.n.

IPV6 client

clientipv6 Adresse Internet Protocol version 6 (IPv6) 128 bits du type x:x:x:x:x:x:x:x conforme au protocole RFC 1924 de l'ordinateur client.

En-tête de contact

request.contact

Zone de l'en-tête de contact

URI de contact

request.contact.uri

Zone de l'URI de l'en-tête de contact

En-tête d'origine

request.from

Zone de l'en-tête d'origine.

Nom affiché d'en-tête d'origine

request.from.display-name

Zone du nom affiché de l'en-tête d'origine.

URI d'origine

request.from.uri

Zone de l'URI de l'en-tête d'origine.

Hôte URI d'origine

request.from.uri.host

Zone de l'hôte de l'en-tête d'origine.

Port URI d'origine

request.from.uri.port

Zone du port de l'URI de l'en-tête d'origine.

Utilisateur URI d'origine

request.from.uri.user

Zone de l'utilisateur de l'en-tête d'origine.

Nom d'en-tête

header $<nom> Nom et valeur de l'en-tête.
Par exemple, l'expression header$Hote='localhost' permet de vérifier qu'une demande contient un en-tête hôte HTTP avec la valeur localhost. Pour vérifier la présence ou l'absence de l'en-tête d'hôte, utilisez l'une des expressions suivantes :
header$Host IS NOT NULL 
header$Host IS NULL

Pourcentage

percentage$<val> L'opérande de pourcentage a pour valeur true pour un pourcentage fixe du temps.

Par exemple, percentage$50 a pour valeur true 50 % du temps.

port

port Port d'écoute sur lequel la demande a été reçue.

Augmentation progressive

rampup$<heure_début>

  $<heure_fin>

L'opérande d'augmentation progressive a pour valeur true pour un pourcentage variable du temps. Il est toujours associé à la valeur false avant <heure_début> et à la valeur true avant <heure_fin>. Au fur et à mesure que l'heure se rapproche de la valeur <heure_fin>, il prend la valeur true pour un pourcentage du temps qui augmente de façon linéaire.

Le format de <heure_début> et <heure_fin> est jour/mois/année::hour:min:sec.

jour est le jour du mois, mois est l'un des douze mois (Jan, Fév, Mar, Avr, Mai, Jui, Juil, Aoû, Sep, Oct, Nov, Déc), année est une année composée de 4 chiffres, heure est l'heure militaire à 2 chiffres et mn et s sont des valeurs à 2 chiffres pour les minutes et les secondes, respectivement.

Par exemple,

rampup$01/Jan/2007::08:00:00$01/Jan/2007::17:00:00 est parfois associé à la valeur true à 8 heures le 1er janvier 2007 et est toujours associé à la valeur true à 17 heures le même jour, une fois l'heure de fin atteinte progressivement.

Transport de demande

request.transport

Le transport de la demande.

URI de la demande

request.uri

L'URI de la demande.

Hôte de l'URI de la demande

request.uri.host

Hôte de l'URI de la demande

Port de l'URI de la demande

request.uri.port

Port de l'URI de la demande.

Utilisateur de l'URI de la demande

request.uri.user

L'utilisateur de l'URI de la demande.

Schéma de l'en-tête d'origine

request.from.uri.scheme

Zone du schéma de l'en-tête d'origine.

Schéma de l'en-tête de destination

to.uri.scheme

Zone du schéma de l'en-tête de destination

Schéma de l'URI

request.uri.scheme

Schéma de l'URI.

Hôte serveur

serverhost Nom d'hôte complet du serveur. Cet opérande ne prend pas en charge les opérateurs numériques tels que >, >=, <, <=.

IPV4 serveur

serveripv4 Adresse IP de l'ordinateur serveur au format IPv4 à quatre éléments séparés par des points n.n.n.n.

IPV6 serveur

serveripv6 Adresse IPv6 128 bits du type x:x:x:x:x:x:x:x conforme au document RFC 1924 de l'ordinateur serveur.

Méthode SIP

request.method

Méthode SIP de la demande. Valeurs admises : INVITE, TRYING, RINGING, ACK, OK et BYE. Si le message n'est pas une demande, cet opérande renvoie la valeur null.

Code de réponse SIP

response.code

Code de la réponse. Si le message n'est pas une réponse, cet opérande renvoie la valeur -1.

Hôte client de l'en-tête de destination

clienthost

Zone de l'hôte client de l'en-tête de destination.

En-tête de destination

request.to

Zone de l'en-tête de destination.

Nom affiché d'en-tête de destination

request.to.display-name

Zone du nom affiché de l'en-tête de destination.

URI de destination

request.to.uri

Zone de l'URI de l'en-tête de destination

Hôte URI de destination

request.to.uri.host

Zone du port de l'URI de l'en-tête de destination

Utilisateur URI de destination

request.to.uri.user

Zone de l'utilisateur de l'en-tête de destination

Opérateurs

La fonction Gestion intelligente prend en charge les opérateurs dans les expressions de règles. Ces opérateurs sont également appelés prédicats dans la terminologie SQL car ils figurent dans une clause WHERE ou HAVING. La distinction entre les minuscules et les majuscules n'est pas nécessaire pour les opérateurs.

Tableau 2. Opérateurs de classification de demande
Opérateur Description
OR Opérateur logique OR (ou).
AND Opérateur logique AND (et).
NOT Opérateur logique de négation.
IN Exprime un opérande avec des valeurs multiples dans une même expression. Sa signification est conforme à la spécification SQL de l'opérateur.
Par exemple, si vous souhaitez indiquer que le port peut avoir pour valeur 9080, 9090 et/ou 9091, utilisez le fragment d'expression suivant :
port IN (9080,9090,9091)
Dans SQL, la façon dont les valeurs à l'intérieur des parenthèses sont exprimées dépend du type de données de port. Cela signifie que si le port est de type entier, la syntaxe des valeurs sans apostrophes est correcte. Si le port est de type chaîne, l'expression correcte est :
port IN ('9080','9090','9091')
LIKE

Exprime une correspondance de masque pour les valeurs d'opérande chaîne. La valeur doit contenir le caractère générique (%) à la position où la correspondance de masque est censée débuter.

Par exemple, l'expression
host LIKE %blanca
permet de rechercher les occurrences du terme blanca et tout autre terme se terminant par blanca, alors que l'expression
host LIKE blanca%
permet de rechercher les occurrences du terme blanca et tout autre terme commençant par blanca. L'expression
host LIKE %blanca%
permet de rechercher les occurrences du terme blanca et tous les termes comportant la chaîne blanca.

La classe java.util.regex.Pattern est utilisée.

= Opérateur d'égalité utilisé pour exprimer une correspondance différenciant les minuscules et les majuscules.
> Opérateur supérieur à, qui doit être utilisé avec des opérandes numériques.
>= Opérateur supérieur ou égal à, qui doit être utilisé avec des opérandes numériques.
< Opérateur inférieur à, qui doit être utilisé avec des opérandes numériques
<= Opérateur inférieur ou égal à, qui doit être utilisé avec des opérandes numériques.
< > Opérateur logique de négation.
BETWEEN Cet opérateur est utilisé conjointement avec l'opérateur AND pour sélectionner un intervalle de valeurs comprenant la première valeur (la plus basse) et la dernière valeur (la plus haute). Ensemble, ils agissent sur des nombres et des dates.
IS NULL Teste un opérande dont la valeur est NULL.
IS NOT NULL Teste un opérande dont la valeur est autre que NULL.

Icône indiquant le type de rubrique Rubrique de référence



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rwve_odrsip
Nom du fichier : rwve_odrsip.html