Construtor de Expressões de Regras de SIP

Utilize o construtor de subexpressões para construir condições de regras complexas de subexpressões utilizando AND, OR, NOT e agrupamento parentético. O construtor de regras valida a regra quando você aplica as alterações e o alerta para os parênteses não correspondidos e os operadores de lógica não suportados.

Para visualizar essa página de console administrativo, clique em Servidores > Tipos de Servidor > On Demand Routers > odr_name > Configurações SIP On Demand Router > Regras de SIP de Política de Roteamento > Incluir > Construtor de Subexpressão.

Para modificar regras com o construtor de regras, você deve ter privilégios administrativos de administrador.

Selecionar Operando

Operandos de Política de Roteamento e Serviço

Dependendo do protocolo selecionado, são exibidos operandos diferentes. A tabela a seguir inclui os nomes dos operandos, como exibidos no console, o operando real como aparecerá na expressão, os protocolos válidos por operando e a descrição para cada operando.

Tabela 1. Operandos. A tabela a seguir descreve os nomes de operando exibidos no console
Operando Sintaxe Descrição
método SIP request.method

O método SIP do pedido. Os valores possíveis são INVITE, TRYING, RINGING, ACK, OK e BYE. Se a mensagem não for um pedido, esse operando retornará nulo.

Código de resposta do SIP response.code

O código da resposta. Se a mensagem não for uma resposta, esse operando retornará -1.

Esquema do cabeçalho de Destino to.uri.scheme

O esquema do campo Cabeçalho de Destino.

Esquema da URI request.uri.scheme

O esquema do URI.

Esquema do cabeçalho de Origem request.from.uri.scheme

O esquema do campo Cabeçalho de Origem.

Pedir URI request.uri

O URI do pedido.

Para URI request.to.uri

O URI do campo Cabeçalho de Destino.

Da URI request.from.uri

O URI do campo Cabeçalho de Origem.

Cabeçalho de request.from

O campo Cabeçalho de Origem.

Cabeçalho de Destino request.to

O campo Cabeçalho de Destino.

Nome de Exibição do Cabeçalho de Destino request.to.display-name

O nome de exibição no campo Cabeçalho de Destino.

Nome de Exibição do Cabeçalho de Origem request.from.display-name

O nome de exibição no campo Cabeçalho de Origem.

Para o Host do URI request.to.uri.host

A porta no URI do campo Cabeçalho de Destino.

Host do Servidor serverhost O nome completo do host do servidor. Esse operando não suporta operadores numéricos, como >, >=, <, <=.
Porta port A porta de atendimento na qual o pedido foi recebido.
Cabeçalho de Contato request.contact

O campo Cabeçalho de Contato.

URI de Contato request.contact.uri

O URI do campo Cabeçalho de Contato.

Host Cliente clienthost O nome completo do host cliente. Este é o valor do nome do host do comando IP (Internet Protocol). Esse operando não suporta operadores numéricos, como >, >=, <, <=.
clientipv4 clientipv4 O endereço IP do computador cliente que utiliza o tipo de endereço quadrangular pontilhado IPv4 (Internet Protocol version 4) n.n.n.n.
clientipv6 clientipv6 O tipo de endereço IPv6 (Internet Protocol version 6) de 128 bits de x:x:x:x:x:x:x:x seguindo o RFC 1924 (Pedido de Comentários 1924) do computador cliente.
serveripv4 serveripv4 O endereço IP do computador servidor que utiliza o tipo de endereço quadrangular pontilhado IPv4 n.n.n.n.
serveripv6 serveripv6 O tipo de endereço IPv6 de 128 bits de x:x:x:x:x:x:x:x seguindo o RFC 1924 do computador servidor.
Transporte de solicitação request.transport

O transporte do pedido.

Usuário do URI da solicitação request.uri.user

O usuário no URI do pedido.

Do Usuário do URI request.from.uri.user

O usuário no campo Cabeçalho de Origem.

Para o Usuário do URI request.to.uri.user

O usuário no campo Cabeçalho de Destino.

Host do URI do Pedido request.uri.host

O host no URI do pedido.

Do Host do URI request.from.uri.host

O host no campo Cabeçalho de Origem.

Porta do URI do Pedido request.uri.port

A porta no URI do pedido.

Da Porta do URI request.from.uri.port

A porta no URI do campo Cabeçalho de Origem.

Para o Host do URI request.to.uri.host

O host no campo Cabeçalho de Destino.

Nome do Cabeçalho header$<name> O nome e o valor de um cabeçalho. Por exemplo, a expressão header$Host='localhost' testa um pedido para ver se ele contém um cabeçalho do host HTTP com um valor de host local. Para testar a presença ou ausência do cabeçalho do host, utilize uma das seguintes expressões:
header$Host IS NOT NULL
header$Host IS NULL
Tempo time

Esse operando é utilizado para definir a data e a hora do dia que um determinado pedido deve ser cumprido. Dois campos adicionais são StartTime e EndTime. Se um pedido for recebido fora daquela janela definida, o pedido não será processado.

Os campos Start Time e End Time têm o seguinte formato: dayOfWeek/dayOfMonth/month/year::hour:minute:second.

Por exemplo, Quinta-feira, 11 de abril de 2007 às 13:03:45 é especificado como:

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

Qualquer campo pode utilizar um curinga com o valor *. Por exemplo, o primeiro dia de cada mês é especificado como */1.

Os valores dayofWeek são dom, seg, ter, qua, qui, sex, sáb e os valores dayOfMonth variam de 1 a 31.

O valor month é um valor não-numérico que representa os doze meses: Jan, Fev, Mar, Abr, Mai, Jun, Jul, Ago, Set, Out, Nov, Dez.

O valor year é composto de quatro dígitos do ano. Por exemplo, 2007.

O valor hour é a hora do dia no relógio de 24 horas. Por exemplo, 8h é representado como ::8. O minute e second são representados como inteiros que variam de 0-59.

A barra (/) é utilizada para separar parâmetros de data, os dois-pontos duplos (::) são utilizados para separar os valores de data e hora, e os dois-pontos (:) são utilizados para separar a hora dos parâmetros do dia. Observe que esse é o resultado booleano da regra inteira no qual o operando time é utilizado para determinar a ação de roteamento adotada.

Porcentagem percentage$<val> O operando de porcentagem é avaliado como true, uma porcentagem fixa do tempo. Por exemplo, percentage$50 é avaliado como true na média de 50% do tempo.
Aumentar rampup$<startTime>

  $<completionTime>

O operando rampup é avaliado como true em uma porcentagem variável de tempo. Ele é sempre avaliado como false antes de <startTime> e como true depois de <completionTime>. Conforme o tempo progride de <startTime> para <completionTime>, ele é avaliado como true, uma porcentagem de aumento linear.

O formato de <startTime> e <completionTime> é day/month/year::hour:min:sec.

em que day é o dia do mês, month é um dos 12 meses: jan, fev, mar, abr, mai, jun, jul, ago, set, out, nov, dez, year é o ano com 4 dígitos, hour é a hora com 2 dígitos do formato de 24 horas e min e sec são valores com 2 dígitos para minuto e segundo, respectivamente.

Por exemplo,

rampup$01/Jan/2007::08:00:00$01/Jan/2007::17:00:00 começa a ser avaliado ocasionalmente como true às 8h de 1 de jan de 2007 e é sempre avaliado como true pela hora de conclusão de ramp up às 17h do mesmo dia.

Operador

Tabela 2. Operadores de especificação de rastreio
Operador Descrição
Igual a Ignora Maiúsculas e Minúsculas (EQUALSIGNORECASE) Operador de igualdade que ignora maiúsculas e minúsculas. As maiúsculas e minúsculas das sequências são ignoradas. 'ABC' EQUALSIGNORECASE 'abc' é verdadeiro. ('ABC' = 'abc') é falso.
Diferente de (< >) O operador 'diferente de' expressa que o valor do operando não é igual ao valor inserido.
Em (IN)
  • A expressão sequência IN lista de sequências é avaliada como verdadeira se a sequência à esquerda corresponder exatamente (com distinção entre maiúsculas e minúsculas) à sequência listada à direita. Por exemplo:
    • ’adrian’ in ('keith','eric','kalyan','david', 'adrian e etc') é falso.
    • 'adrian' in ('tom','adrian') é verdadeiro.
    • ’adrian’ in ('Tom','Adrian') é falso.
  • inteiro IN lista de números inteiros:
    • 1 in (1,2,3,4,5) é verdadeiro.
    • 6 in (1,2,3,4,5) é falso.
Semelhante (LIKE)

Expressa a correspondência de padrão dos valores do operando da sequência. O valor deve conter o caractere curinga (%) na posição onde se espera que a correspondência padrão seja iniciada.

Por exemplo, a expressão:
host LIKE %blanca
corresponde à palavra blanca e a qualquer outra palavra que termine em blanca, enquanto que a expressão:
host LIKE blanca%
corresponde à palavra blanca e a qualquer outra palavra que inicie com blanca. A expressão:
host LIKE %blanca%
corresponde à palavra blanca e a qualquer outra palavra que tenha o símbolo blanca integrado nela.
Semelhante Ignora Maiúsculas e Minúsculas (LIKEIGNORECASE) Este operador expressa a correspondência de padrão para valores do operando da sequência. As maiúsculas e minúsculas das sequências são ignoradas.
Não É Nulo (IS NOT NULL) Uma validação da consulta mostra que o parâmetro solicitado existe.
Concatenar (+) Este operador avalia 'abc'+'def' como 'abcdef'.
Semelhante Em (LIKEIN) Este operador expressa que sequência likein (string1, string2, string3,...) é avaliado como verdadeiro se a sequência à esquerda de likein corresponder a uma ou mais das sequências (stringN).
É Nulo (IS NULL) Uma validação da consulta mostra que o parâmetro solicitado não existe. Testa por um operando que tenha um valor NULL.
É Igual a ( = ) O operador de igualdade expressa uma correspondência que faz distinção entre maiúsculas e minúsculas.
Maior que (>) É avaliado como o resultado lógico padrão.
Maior que ou Igual a (>=) É avaliado como o resultado lógico padrão.
Menor que (<) É avaliado como o resultado lógico padrão.
Menor que ou Igual a (<=) É avaliado como o resultado lógico padrão.
Entre (BETWEEN) Usado com AND para selecionar um intervalo de valores incluindo o primeiro (baixo) e o último (alto) valores. Juntos, eles operam em números e valores de datas.

Valor

Dependendo do operador escolhido, digite um valor para a subexpressão que você optar por criar.

Gerar Subexpressão

Gere a subexpressão como resultado do operando, operador e valores especificados.

Anexar

Clique para anexar na caixa no painel de regras.



Nome do Arquivo: sip_rulebuilder_detail.html