This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
devel:kamailio-5.0-design [2016/02/28 11:57] miconda [Build System] |
devel:kamailio-5.0-design [2016/03/01 09:25] miconda [Exporting Functions To Embedded Interpreters] |
||
---|---|---|---|
Line 29: | Line 29: | ||
==== Exporting Functions To Embedded Interpreters ==== | ==== Exporting Functions To Embedded Interpreters ==== | ||
- | * define and implement an export interface from modules to embedded interpreters to automatically add new functions to embedded interpreters, in a similar fashion as for adding functions to configuration file | + | * define and implement an export interface from modules to embedded interpreters to automatically add new functions to embedded interpreters |
+ | * it should be in a similar fashion as for adding functions to configuration file, but without fixup mechanism, so bare string/ | ||
+ | |||
+ | Interface fields: | ||
+ | |||
+ | * submodule name in embedded interpreter | ||
+ | * function name in embedded interpreter | ||
+ | * parameter types | ||
+ | * pointer to c function | ||
+ | |||
+ | Example: | ||
+ | |||
+ | <code c> | ||
+ | // export t_reply(200, | ||
+ | |||
+ | sr_exapi_t mod_exapi[] = { | ||
+ | { " | ||
+ | { 0, 0, {0}, 0} | ||
+ | }; | ||
+ | </ | ||
==== Routing Logic In Embedded Interpreters Scripting ==== | ==== Routing Logic In Embedded Interpreters Scripting ==== |