Tvůrce výrazů pravidel SIP

Pomocí tvůrce podvýrazů je možné sestavovat z podvýrazů podmínky komplexních pravidel pomocí operátorů AND, OR, NOT a seskupování do závorek. Když změny použijete, nástroj pro tvorbu pravidel ověří pravidlo a upozorní vás na nesoulad mezi kulatými závorkami a nepodporovanými logickými operátory.

Chcete-li zobrazit tuto stránku administrativní konzoly, klepněte na volbu Servery > Typy serverů > Směrovače ODR > název_směrovače_odr > Nastavení směrovače ODR SIP > Pravidla protokolu SIP pro zásady směrování > Přidat > Tvůrce podvýrazů.

Chcete-li upravit pravidla pomocí nástroje pro tvorbu pravidel, musíte mít oprávnění k administraci pro roli administrátora.

Vybrat operand

Operandy zásad služeb a směrování

V závislosti na vybraném protokolu se zobrazí různé operandy. Následující tabulka zahrnuje názvy operandů zobrazené v konzole, skutečný operand, jak bude zobrazen ve výrazu, platné protokoly pro jednotlivé operandy a popis jednotlivých operandů.

Tabulka 1. Operandy. Následující tabulka popisuje názvy operandů v konzole
Proměnná požadavku Platné protokoly Popis

application

IIOP Název podnikové aplikace, která obsahuje daný objekt EJB.
clienthost

HTTP

SOAP

IIOP

SIP

Úplný název hostitele klienta. Jedná se o hodnotu názvu hostitele příkazů protokolu IP (Internet Protocol). Tento operand nepodporuje číselné operátory, jako jsou >, >=, <, <=.

clientport

IIOP Název portu klienta.
clientipv4

HTTP

SOAP

SIP

Adresa IP počítače klienta s použitím adresy protokolu IPv4 (Internet Protocol verze 4) čtyřmístného typu odděleného tečkami n.n.n.n.
clientipv6

HTTP

SOAP

SIP

Adresa IPv6 (Internet Protocol verze 6) 128bitového typu x:x:x:x:x:x:x:x následující po dokumentu RFC 1924 (Request for Comments 1924) počítače klienta.
Contact header

SIP

Pole záhlaví Kontakt.

Contact URI

SIP

Pole záhlaví Identifikátor URI kontaktu.

cookie$<name>

HTTP

SOAP

Název souboru cookie. Například výraz cookie$My_Cookie_Name='My_Cookie_Value' testuje, zda požadavek obsahuje soubor cookie nazvaný My_Cookie_Name s hodnotou My_Cookie_Value. Chcete-li otestovat přítomnost či nepřítomnost konkrétního souboru cookie, použijte jeden z těchto výrazů:
cookie$MyCookieName IS NOT NULL 
cookie$MyCookieName IS NULL

ejbmodule

IIOP Název modulu EJB.

ejbname

IIOP Název EJB.

ejbmethod

IIOP Název metody v rámci EJB.
From header

SIP

Pole záhlaví Od.

From header display name

SIP

Zobrazovaný název pole záhlaví Od.

From URI

SIP

Identifikátor URI pole záhlaví Od.

From URI host

SIP

Hostitel v poli záhlaví Od.

From URI port

SIP

Port v identifikátoru URI pole záhlaví Od.

From URI user

SIP

Uživatel v poli záhlaví Od.

header $<name>

HTTP

SOAP

SIP

Název a hodnota záhlaví. Například výraz header$Host='localhost' testuje, zda požadavek obsahuje záhlaví hostitele HTTP s hodnotou localhost. Chcete-li otestovat přítomnost či nepřítomnost záhlaví hostitele, použijte jeden z těchto výrazů:
header$Host IS NOT NULL 
header$Host IS NULL
HTTPMethod

HTTP

SOAP

Metoda HTTP pro požadavek. Možné hodnoty jsou POST, GET, PUT a DELETE.
MIMEType

HTTP

SOAP

Typ MIME požadavku.
operation SOAP Název operace webové služby.
percentage$<val>

HTTP

SOAP

IIOP

SIP

Operand percentage se vyhodnotí jako true v pevně určené procentní části případů. Například percentage$50 se vyhodnotí jako true v průměru v 50 % případů.
port

HTTP

SOAP

IIOP

SIP

Port naslouchání, na kterém byl přijat požadavek.
protocol

HTTP

SOAP

Komunikační protokol, který přenáší požadavek. V současné době jsou podporované protokoly HTTP, HTTPS, SOAP a SOAPS.
queryparm$<name>

HTTP

SOAP

Název a hodnota záhlaví. Například výraz queryparm$timezone='EST' testuje, zda požadavek obsahuje název parametru dotazu HTTP nazvaný timezone s hodnotou EST. Chcete-li otestovat přítomnost či nepřítomnost parametru dotazu, použijte jeden z následujících způsobů:
queryparm$timezone IS NOT NULL 
queryparm$timezone IS NULL
rampup$<startTime>$<completionTime>

HTTP

SOAP

IIOP

SIP

Operand rampup se vyhodnotí jako true v proměnné procentní části případů. Vždy se vyhodnotí jako false před časem zahájení <startTime> a jako true po čase dokončení <completionTime>. Jak plyne čas od času zahájení <startTime> k času dokončení <completionTime>, vyhodnocuje se jako true s lineárně rostoucí pravděpodobností.

Formát času zahájení <startTime> a času dokončení <completionTime> je den/měsíc/rok::hodina:minuta:sekunda.

kde den je den v měsíci, měsíc je jeden z dvanácti měsíců: Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec, rok je čtyřciferný rok, hodina je dvouciferná hodina na 24hodinové časomíře a minuta a sekunda jsou dvouciferné hodnoty minut a sekund.

Příklad:

rampup$01/Jan/2007::08:00:00$01/Jan/2007::17:00:00 začíná občasným vyhodnocením jako true v 8 hodin ráno 1. ledna 2007 a vždy se vyhodnotí jako true od času dokončení náběhu v 5 hodin odpoledne téhož dne.
Request transport

SIP

Přenos požadavku.

Identifikátor URI požadavku

SIP

Identifikátor URI požadavku.

Request URI host

SIP

Hostitel v identifikátoru URI požadavku.

Request URI port

SIP

Port v identifikátoru URI požadavku.

Request URI user

SIP

Uživatel v identifikátoru URI požadavku.

Scheme of From header

SIP

Schéma pole záhlaví Od.

Scheme of To header

SIP

Schéma pole záhlaví Komu.

Scheme of URI

SIP

Schéma identifikátoru URI.

serverhost

HTTP

SOAP

IIOP

SIP

Úplný název hostitele serveru. Tento operand nepodporuje číselné operátory, jako jsou >, >=, <, <=.
serveripv4

HTTP

SOAP

SIP

Adresa IP počítače serveru s použitím adresy protokolu IPv4 čtyřmístného typu odděleného tečkami n.n.n.n.
serveripv6

HTTP

SOAP

SIP

Adresa IPv6 128bitového typu x:x:x:x:x:x:x:x následující po dokumentu RFC 1924 počítače serveru.
service

SOAP

Název webové služby.
SIP method

SIP

Metoda protokolu SIP pro daný požadavek. Přípustné hodnoty jsou INVITE, TRYING, RINGING, ACK, OK a BYE. Pokud zpráva není požadavek, vrací tento operand hodnotu Null.

Kód odpovědi protokolu SIP

SIP

Kód odpovědi příčiny. Pokud zpráva není odpověď, vrací tento operand hodnotu -1.

time

HTTP

SOAP

IIOP

Tento operand je používá k definování data a času, kdy musí být daný požadavek splněn. Dvě optimální pole jsou Čas zahájení a Čas ukončení. Pokud je požadavek přijat mimo toto definované časové okno, nebude zpracován.

Pole Čas zahájení a Čas ukončení mají následující formát: den_v_týdnu/den_v_měsíci/měsíc/rok::hodina:minuta:sekunda.

Například čtvrtek 11. dubna roku 2007 ve 13:03:45 bude uveden takto:

Thu/11/Apr/2007::13:03:45

V libovolném poli lze použít zástupný znak s hodnotou *. Například 1. den každého měsíce je určen jako */1.

Hodnota pro den_v_týdnu jsou Sun, Mon, Tue, Wed, Thu, Fri, Sat a pro den_v_měsíci 1-31.

Hodnota pole měsíc je nečíselná hodnota představující dvanáct měsíců: Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec.

Hodnota pole rok je tvořena čtyřmi číslicemi daného roku. Například 2007.

Hodnota pole hodina je hodina dne na 24hodinové časomíře. Například 8 hodin ráno představuje hodnota ::8. Minuta a sekunda jsou celá čísla v rozsahu 0-59.

Dopředné lomítko (/) se používá k oddělení parametrů data, dvojitá dvojtečka (::) k oddělení hodnot data a času a dvojtečka (:) k oddělení parametrů času. Všimněte si, že akci směrování, která se provede, určuje logický výsledek celého pravidla, v němž se používá operand time.

To client host

SIP

Hostitel klienta v poli záhlaví Komu.

To header

SIP

Pole záhlaví Komu.

To header display name

SIP

Zobrazovaný název v poli záhlaví Komu.

To URI

SIP

Identifikátor URI pole záhlaví Komu.

To URI host

SIP

Port v identifikátoru URI pole záhlaví Komu.

To URI user

SIP

Uživatel v poli záhlaví Komu.

virtual host

HTTP

SOAP

Virtuální portály jsou vytvářeny na serveru WebSphere® Portal Server a produkt WebSphere Extended Deployment podporuje tento operand pro lepší integraci se serverem WebSphere Portal Server. Virtuální port je adresa URL požadavku bez kontextového kořenového adresáře pro webový modul aplikace portálu WebSphere Portal. Pokud daný požadavek odpovídá definovanému virtuálnímu portálu, provede se akce směrování definovaná pro toto pravidlo.
xpathexpr

SOAP

Řetězcový výraz XPath má povinné pole, které obsahuje výraz XPath, a volitelné pole pro definování lokálních oborů názvů. Pokud jsou všechny obory názvů obsažené ve výrazu XPath standardní, může být druhé pole volitelné. Pokud existuje více lokálních oborů názvů, oddělujte je čárkami (,). Následuje příklad operandu xpathexpr s jednou definicí lokálního oboru názvů:
xpathexpr$/soap:Envelope/soap:Body/m:getTimeZone/n:clientId$m\\=http://test.classify.ws.ibm.com,n\\=http://test2.classify.ws.ibm.com
= \\'1000\\' or operation IS NOT NULL

V předchozím výrazu je výraz XPath /soap:Envelope/soap:Body/n:getTimeZone/n:clientId. Obsahuje lokální obor názvů n. Proto je druhé pole operandu xpathexpr definováno jako n \\=http://test.classify.ws.ibm.com. Znak dolaru ($) se používá k označení začátku definice pole. Dvojitá zpětná lomítka jsou v tomto příkladě řídicí posloupností. První znak rovnítka (=) má změněný význam, protože je součástí definice lokálního oboru názvů, zatímco druhý znak rovnítka (=) je operátorem v klasifikačním výrazu a jeho význam změněn být nesmí.

Následuje příklad operandu xpathexpr se dvěma lokálními obory názvů:

xpathexpr$/soap:Envelope/soap:Body/m:getTimeZone/n:clientId$m\\=http://test.classify.ws.ibm.com,n\\=http://test2.classify.ws.ibm.com
= \\'1000\\' or operation IS NOT NULL

Následuje seznam standardních oborů názvů pro operand xpathexpr:

Tabulka 1. Obory názvů. Standardní obory názvů jsou popsány v následující tabulce
Obor názvů Adresa URL
soap http://schemas.xmlsoap.org/soap/envelope/
soap-env http://schemas.xmlsoap.org/soap/envelope/
soapenc http://schemas.xmlsoap.org/soap/encoding/
soapbind http://schemas.xmlsoap.org/wsdl/soap/
xsd http://www.w3.org/2001/XMLSchema
xsi http://www.w3.org/2001/XMLSchema-instance
xsi http://ws-i.org/schemas/conformanceClaim/
wsdl http://schemas.xmlsoap.org/wsdl/

Operátor

  • = Operátor rovnosti vyjadřuje shodu s rozlišováním malých a velkých písmen.
  • <> Operátor nerovnosti vyjadřuje, že se hodnota operandu nerovná vámi zadané hodnotě.
  • > Operátor větší než je určen pro použití s čísly.
  • >= Operátor větší než nebo rovno je určen pro použití s čísly.
  • < Operátor menší než je určen pro použití s čísly.
  • <= Operátor menší než nebo rovno je určen pro použití s čísly.
  • AND: V konstrukci xx AND yy vyjadřuje shodu zahrnující jak xx, tak yy.
  • BETWEEN: Tento operátor se používá společně s operátorem AND k výběru rozsahu hodnot včetně první (nejnižší) a poslední (nejvyšší) hodnoty. Společně se používají pro čísla a kalendářní data.
  • EXISTS: Tento logický operátor kontroluje výskyt operandu nebo výsledku složeného podvýrazu, například při kontrole určitých atributů prvku záhlaví HTTP.
  • IN: Tento operátor vyjadřuje operand s více hodnotami v jednom výrazu. Pokud například chcete pro operand s názvem port vyjádřit, že hodnotou portu může být kterákoli (nebo všechny) z hodnot 9080, 9090 a 9091, fragment výrazu je port IN (9080,9090,9091). Způsob vyjádření hodnot v závorkách závisí na datovém typu portu. Pokud je port celé číslo, správnou syntaxí jsou hodnoty bez apostrofů. Pokud je port řetězec, správná syntaxe je port IN (‘9080’,‘9090’,‘9091’).
  • IS NULL: Tento operátor vyjadřuje, že ověření dotazu ukazuje neexistenci požadovaného parametru.
  • IS NOT NULL: Tento operátor vyjadřuje, že ověření dotazu zobrazí, že požadovaný parametr existuje.
  • LIKE: Tento operátor vyjadřuje vzorek hledající shodu s hodnotou operandu typu řetězec. Hodnota musí obsahovat zástupný znak procento (%) na pozici, kde začíná porovnání vzorků. Například výraz host LIKE %blanca odpovídá slovu blanca nebo jakémukoli jinému slovu, které končí řetězcem blanca, zatímco výraz host LIKE blanca% odpovídá slovu blanca nebo jakémukoli jinému slovu, které začíná řetězcem blanca, a výraz host LIKE %blanca% odpovídá slovu blanca nebo jakémukoli jinému slovu, které obsahuje řetězec blanca.
  • NOT: V konstrukci NOT xx tento operátor vyjadřuje shodu neobsahující xx.
  • OR: V konstrukci xx OR yy tento operátor vyjadřuje shodu zahrnující xx nebo yy.

Hodnota

V závislosti na vámi zvoleném operátoru zadejte hodnotu podvýrazu, který jste se rozhodli vytvořit.

Generovat podvýraz

Generovat podvýraz jako výsledek vámi zadaného operandu, operátoru a hodnot.

Připojit

Klepnutím připojíte do rámečku na panelu pravidel.



Název souboru: sip_rulebuilder_detail.html