Operador script
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");