Now that we understand the routes (or routing block), what they are good for, and how they are linked to the handling of the SIP traffic, it is time to look in the routes and see what the scripting capabilities offered by the OpenSIPS routing language are—capabilities in terms of functions, statements, variables, operators, and assignments.
There are two types of functions available in the OpenSIPS routing blocks: functions provided by the OpenSIPS core and functions provided by the modules.
The functions provided by the core are typically simple functions and they have a very flexible prototype; they can have any number of parameters, they can be called from any type of route, and they can accept parameters as string or integer values. This flexibility is because the core functions are not limited (as prototypes) by the interface between the OpenSIPS core and modules.
The following OpenSIPS online manual contains a list of all the functions offered...