Builder espressioni di regole SIP

Utilizzare il builder sottoespressioni per creare condizioni di regole complesse da sottoespressioni utilizzando AND, OR, NOT e il raggruppamento parentetico. Il builder delle regole convalida la regola quando si applicano le modifiche e segnala se sono presenti parentesi discordanti e operatori logici non supportati.

Per visualizzare questa pagina della console di gestione, fare clic su Server > Tipi di server > Router On demand > nome_odr > Impostazioni router On Demand SIP > Regole SIP delle politiche di instradamento > Aggiungi > Builder sottoespressioni.

Per modificare le regole con il builder delle regole, è necessario disporre dei privilegi di amministratore.

Seleziona operando

Operandi delle politiche di instradamento e di servizio

In base al protocollo selezionato, verranno visualizzati operandi diversi. La seguente tabella comprende i nomi degli operandi così come sono visualizzati nella console, l'operando effettivo come apparirà nell'espressione, i protocolli validi per operando e la descrizione di ciascun operando.

Tabella 1. Operandi. La seguente tabella descrive i nomi degli operandi visualizzati nella console
Operando Sintassi Descrizione
Metodo SIP request.method

Il metodo SIP per la richiesta. I possibili valori sono: INVITE, TRYING, RINGING, ACK, OK e BYE. Se il messaggio non è una richiesta, questo operando restituisce un valore nullo.

Codice di risposta SIP response.code

Il codice della risposta. Se il messaggio non è una risposta, questo operando restituisce -1.

Schema dell'intestazione A to.uri.scheme

Lo schema del campo di intestazione A.

Schema dell'URI request.uri.scheme

Lo schema dell'URI.

Schema dell'intestazione Da request.from.uri.scheme

Lo schema del campo di intestazione Da.

URI richiesta request.uri

L'URI della richiesta.

URI A request.to.uri

L'URI del campo di intestazione A.

URI Da request.from.uri

L'URI del campo di intestazione Da.

Intestazione Da request.from

Il campo di intestazione Da.

Intestazione A request.to

Il campo di intestazione A.

Nome di visualizzazione intestazione A request.to.display-name

Il nome di visualizzazione nel campo di intestazione A.

Nome di visualizzazione intestazione Da request.from.display-name

Il nome di visualizzazione nel campo di intestazione Da.

Host URI A request.to.uri.host

La porta nell'URI del campo di intestazione A.

Host server serverhost Il nome host completo del server. Questo operando non supporta operatori numerici come, ad esempio, >, >=, <, <=.
Porta port La porta in ascolto su cui è stata ricevuta la richiesta.
Intestazione contatto request.contact

Il campo di intestazione Contatto.

URI contatto request.contact.uri

L'URI del campo di intestazione Contatto.

Host client clienthost Il nome host completo del client. È il valore del nome host del comando del protocollo Internet (IP). Questo operando non supporta operatori numerici come, ad esempio, >, >=, <, <=.
clientipv4 clientipv4 L'indirizzo IP del computer client che utilizza il tipo di indirizzo separato da 4 punti IPv4 (Internet Protocol version 4), n.n.n.n.
clientipv6 clientipv6 Il tipo di indirizzo IPv6 (Internet Protocol versione 6) a 128 bit x:x:x:x:x:x:x:x successivo alla richiesta di commenti 1924 (RFC 1924) del computer client.
serveripv4 serveripv4 L'indirizzo IP del computer server che utilizza il tipo di indirizzo separato da 4 punti IPv4 n.n.n.n.
serveripv6 serveripv6 Il tipo di indirizzo IPv6 a 128 bit x:x:x:x:x:x:x:x che segue l'RFC 1924 del computer server.
Trasporto richiesta request.transport

Il trasporto della richiesta.

Utente URI della richiesta request.uri.user

L'utente nell'URI della richiesta.

Utente URI Da request.from.uri.user

L'utente nel campo di intestazione Da.

Utente URI A request.to.uri.user

L'utente nel campo di intestazione A.

Host URI della richiesta request.uri.host

L'host nell'URI della richiesta.

Host URI Da request.from.uri.host

L'host nel campo di intestazione Da.

Porta URI della richiesta request.uri.port

La porta nell'URI della richiesta.

Porta URI Da request.from.uri.port

La porta nell'URI del campo di intestazione Da.

Host URI A request.to.uri.host

L'host nel campo di intestazione A.

Nome intestazione header$<nome> Il nome ed il valore di un'intestazione. Ad esempio l'espressione header$Host='localhost' verifica una richiesta per vedere se contiene un'intestazione host HTTP con il valore localhost. Per verificare la presenza o l'assenza dell'intestazione host, utilizzare uno delle seguenti espressioni:
header$Host IS NOT NULL
header$Host IS NULL
Ora time

Questo operando viene utilizzato per definire la data e l'ora del giorno in cui è necessario soddisfare una determinata richiesta. Due campi facoltativi sono StartTime ed EndTime. Se una richiesta non viene ricevuta al di fuori di tale finestra definita, non verrà elaborata.

I campi Ora di inizio e Ora di fine hanno ciascuno il seguente formato: giorno_della_settimana/giorno_del_mese/mese/anno::ora:minuti:secondi.

Ad esempio, giovedì 11 Aprile 2007, alle 13:03:45 viene specificato come:

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

In qualsiasi campo è possibile utilizzare un carattere jolly con il valore *. Ad esempio, il primo giorno di ogni mese viene specificato come */1.

I valori giorno_della_settimana sono Lun, Mar, Mer, Gio, Ven, Sab, Dom; i valori di giorno_del_mese sono compresi tra 1 e 31.

Il valore mese è un valore non numerico che rappresenta i dodici mesi: Gen, Feb, Mar, Apr, Mag, Giu, Lug, Ago, Set, Ott, Nov, Dic.

Il valore anno è composto da quattro cifre dell'anno. Ad esempio, 2007.

Il valore ora è l'ora del giorno, utilizzando il formato 24 ore. Ad esempio, 8:00 viene rappresentato come ::8. I campi minuti e secondi sono numeri interi compresi tra 0 e 59.

La barra (/) viene utilizzata per separare i parametri della data, i doppi due punti (::) vengono utilizzati per separare i valori della data e dell'ora, mentre i due punti (:) vengono utilizzati per separare i parametri ora del giorno. Si noti che si tratta del risultato booleano dell'intera regola in cui viene utilizzato l'operando time che determina l'azione di instradamento intrapresa.

Percentuale percentage$<val> L'operando relativo alla percentuale assume il valore true, una percentuale fissa del valore temporale. Ad esempio percentage$50 assume il valore true su un 50% di media del tempo.
Incrementa progressivamente rampup$<startTime>

  $<completionTime>

L'operando rampup assume il valore true, una percentuale variabile del valore temporale. Assume sempre il valore false prima di <startTime> e diventa true dopo <completionTime>. Man mano che il tempo passa da <startTime> a <completionTime>, assume il valore true, ovvero una percentuale in aumento lineare.

Il formato di <startTime> e <completionTime> è giorno/mese/anno::ora:min:sec.

dove giorno è il giorno del mese; mese è uno dei 12 mesi: Gen, Feb, mar, Apr, Mag, Giu, Lug, Ago, Set, Ott, Nov, Dic; anno è l'anno di 4 cifre; ora è l'ora di due cifre in un orologio di 24 ore e min e sec sono valori di due cifre rispettivamente per minuti e secondi.

Ad esempio,

rampup$01/Jan/2007::08:00:00$01/Jan/2007::17:00:00 inizia ad assumere il valore true alle 8 del 1 Gennaio 2007 e diventa sempre true fino a raggiungere l'ora di completamento alle 17 dello stesso giorno.

Operatore

Tabella 2. Operatori della specifica di traccia
Operatore Descrizione
Uguale, ignora maiuscolo/minuscolo (EQUALSIGNORECASE) Operatore Uguale, ignora maiuscolo/minuscolo. I caratteri delle stringhe sono ignorati. 'ABC' EQUALSIGNORECASE 'abc' è true. ('ABC' = 'abc') è false.
Non uguale (< >) L'operatore di disuguaglianza esprime che il valore dell'operando non è uguale al valore immesso.
In (IN)
  • Per stringa IN elenco di stringhe è true se la stringa a sinistra corrisponde esattamente (maiuscolo/minuscolo) a una stringa elencata sulla destra. Ad esempio:
    • ’adrian’ in ('keith','eric','kalyan','david', 'adrian e ecc') è false.
    • 'adrian' in ('tom','adrian') è true.
    • ’adrian’ in ('Tom','Adrian') è false.
  • numero IN elenco di numeri :
    • 1 in (1,2,3,4,5) è true.
    • 6 in (1,2,3,4,5) è false.
Come (LIKE)

Esprime il pattern corrispodente per valori operando stringa. Il valore deve contenere il carattere jolly (%) nella posizione in cui è previsto che inizi la corrispondenza del pattern.

Ad esempio, l'espressione:
host LIKE %blanca
trova corrispondenza con la parola blanca e in qualsiasi altra parola che termina con blanca, mentre l'espressione:
host LIKE blanca%
trova corrispondenza con la parola blanca e qualsiasi altra parola che inizia con blanca. L'espressione:
host LIKE %blanca%
trova corrispondenza con la parola blanca e qualsiasi altra parola che ha il token blanca in essa.
Come, ignora maiuscolo/minuscolo (LIKEIGNORECASE) Questo operatore esprime un pattern che corrisponde ai valori dell'operando di una stringa. I caratteri delle stringhe sono ignorati.
Non è null (IS NOT NULL) Una convalida di una query mostra che il parametro richiesto esiste.
Concatena (+) Questo operatore valuta 'abc'+'def' come 'abcdef'.
Come in (LIKEIN) Questo operatore esprime stringa likein (stringa1, stringa2, stringa3,...) e calcola come true se la stringa a sinistra di likein corrisponde a una o più delle stringhe (stringaN).
È null (IS NULL) Una convalida di una query mostra che il parametro richiesto non esiste. Controlla la presenza di un operando che ha un valore NULL.
Uguale ( = ) L'operatore di uguaglianza esprime una corrispondenza sensibile al maiuscolo/minuscolo.
Maggiore di (>) Calcola il risultato logico standard.
Maggiore di o Uguale a (>=) Calcola il risultato logico standard.
Minore di (<) Calcola il risultato logico standard.
Minore di o Uguale a (<=) Calcola il risultato logico standard.
Tra (BETWEEN) Utilizzato con AND per selezionare una scala di valori che includono il primo valore (basso) e l'ultimo valore (alto). Insieme, operano sui valori numeri e date.

Valore

In base all'operatore scelto, immettere il valore per la sottoespressione che si desidera creare.

Genera sottoespressione

Generare la sottoespressione come risultato dell'operando, dell'operatore e dei valori specificati.

Aggiungi

Fare clic per allegare alla casella nel pannello delle regole.



Nome file: sip_rulebuilder_detail.html