Operador script

De opensipsbrasil - wiki
Ir para navegação Ir para pesquisar

Atribuições , operações aritimeticas ou de string podem ser diretamente realizadas através do arquivo de configuração


Operação de Atribuição

Atribuiçòes podem ser realizada como em programação em C, através do operador '=', observe que nem todas as variáveis podem ser escritos , existem algumas que são apenas leitura, você pode verificar as Variaveis de Core para saber quais podem ser escritas


$var(a) = 123;
$ru = "sip:user@domain";


Existe um operadora especial para atribuição ':=' que pode ser utilizado com AVP's , se o valor da direita é null, todos os AVP's com aquele nome serão deletados, se for diferente, o novo valor irá substituir qualquer valor existente para o AVP com aquele nome ( em outras palavras, deleta AVPS's com aquele nome e adiciona um novo com o valor da direita) .


$avp(val) := 123;


Operações com String

Para string o caractere '+' está disponível para concatenação


$var(a) = "test";
$var(b) = "sip:" + $var(a) + "@" + $fd;


Operações Aritméticas e bit a bit

Para números podemos usar:

  • + : mais
  • - : menos
  • / : divisão
  • * : multiplicação
  •  % : módulo
  • | : bitwise OR
  • & : bitwise AND
  • ^ : bitwise XOR
  • ~ : bitwise NOT
  • << : bitwise left shift
  • >> : bitwise right shift


$var(a) = 4 + ( 7 & ( ~2 ) );


Nota: Para garantir a prioridade dos operadoras utilize parenteses.

Expressões Aritméticas podem ser ser utilizadas em expressões de condição via operadora de teste ' [ ... ] '


if( [ $var(a) & 4 ] )
   log("var a has third bit set\n");


Voltar