Операции, которые используются для конфигурации сервера OpenSER.
Начиная с версии 1.2.0, операции по присвоению значений переменных для строковых и числовых операций могут производиться непосредственно в файле конфигурации.
Операции присвоения.
Операции по присвоению переменной значения аналогичны языку C, оператор: ‘=’ (присвоение). Следующие псевдопеременные могут быть использованы в левой части операций присвоения:- AVP - для установки значения AVP.
- переменные скрипта - для установки значения переменных скрипта.
- $ru - для установки R-URI
- $rd - для установки домена в R-URI
- $rU - для установки пользовательской части R-URI
- $du - для установки поля назначения URI
- $var(a) = 123;
Операции со строками
Для строк можно использовать оператор ‘+’ для соединения двух подстрок в одну.
$var(a) = "test";
$var(b) = "sip:" + $var(a) + "@" + $fd;
Арифметические операции.
С числами можно производить следующие операции:
- + : сложение.
- - : вычитание.
- / : деление.
- * : умножение.
- % : модуль числа.
- | : побитовая операция OR.
- & : побитовая операция AND.
- ^ : побитовая операция XOR.
- ~ : побитовая операция NOT.
Пример:
$var(a) = 4 + ( 7 & ( ~2 ) );
Обратите внимание: для гарантии приоритета выполнения операций при расчете выражения используются круглые скобки.
Арифметическое выражение может использоваться в операциях выполнения по условию, с использованием оператора проверки: ' [ ... ] ‘.
if( [ $var(a) & 4 ] ) log("var a has third bit set\n");
Ссылки по теме
- OpenSER Документация (eng)
- Переменные OpenSER - Ключевые слова, экспортируемые ядром OpenSER.
- Константы OpenSER - Константы, определяемые ядром OpenSER.
- Параметры OpenSER - Параметры для ядра сервера OpenSER.
- Функции OpenSER - Функции ядра сервера OpenSER.
- Блоки маршрутизации OpenSER - Блоки маршрутизации сервера OpenSER.
- Конструкции OpenSER - Конструкции, используемые для конфигурации сервера OpenSER.
- SIP Express Router