This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | Next revision Both sides next revision | ||
features:new-in-5.2.x [2018/11/27 08:27] miconda |
features:new-in-5.2.x [2018/11/27 09:41] miconda |
||
---|---|---|---|
Line 40: | Line 40: | ||
* LUAJIT variable to build agains LuaJIT compiler | * LUAJIT variable to build agains LuaJIT compiler | ||
+ | * defaut value for reload parameter set to 1 | ||
+ | * reload feature enabbled by default, set to 0 to disable | ||
==== app_python ==== | ==== app_python ==== | ||
Line 46: | Line 48: | ||
* kamctl rpc app_python.api_list | * kamctl rpc app_python.api_list | ||
* rpc command to reload the routing script | * rpc command to reload the routing script | ||
+ | |||
+ | ==== benchmark ==== | ||
+ | |||
+ | * new RPC commands timer_list and timer_name_list | ||
+ | |||
==== cfg_rpc ==== | ==== cfg_rpc ==== | ||
Line 59: | Line 66: | ||
* options to set send and recv sockets with parameters containing variables | * options to set send and recv sockets with parameters containing variables | ||
* added set_source_address() function | * added set_source_address() function | ||
+ | * added via_add_srvid() function | ||
+ | * new function via_add_xavp_params(flags) | ||
+ | * control the flag for adding xavp fields to via params | ||
+ | * added sendx(uri, socket, data) | ||
+ | * send data to destination uri by using local socket | ||
+ | * send() renamed to send_udp() | ||
+ | * reflect better that it uses UDP always, similar to send_tcp() | ||
Line 79: | Line 93: | ||
* allow ' | * allow ' | ||
* added ds_list_exists() as alias to ds_list_exist() | * added ds_list_exists() as alias to ds_list_exist() | ||
+ | * congestion detection load balancing | ||
+ | * new param ds_attrs_none | ||
+ | * if set to 1, " | ||
+ | * use xavps instead of avps | ||
+ | * removed avp names parameters | ||
+ | * new parameters: | ||
+ | * xavp_dst - name of the xavp to store destination records | ||
+ | * xavp_dst_mode - control the fields added to xavp_dst | ||
+ | * xavp_ctx - name of the xavp to store context attributes | ||
+ | * xavp_ctx_mode - control the fields added to xavp_ctx | ||
+ | * added ds_set_dst() and dst_set_domain() | ||
+ | * unlike the ds_next_...() variants, these functions just push to destination the current xavp_dst, without consuming it | ||
+ | * new paraemter ds_db_extra_attrs | ||
+ | * allow specifying database table columns to be loaded in the attrs field | ||
+ | * new function ds_select_routing(rules, | ||
+ | * select target addresses from a combination of groups and algorithms, control where the first destination is pushed and optionally set a limit | ||
+ | |||
+ | ==== htable ==== | ||
+ | |||
+ | * added parameter event_callback_mode | ||
+ | * control when event_route[htable: | ||
+ | |||
+ | ==== ims_diameter_server ==== | ||
+ | |||
+ | * handle binary data in json/ | ||
+ | |||
+ | ==== ims_registrar_pcscf ==== | ||
+ | |||
+ | * update security on sec-agree | ||
==== ipops ==== | ==== ipops ==== | ||
Line 88: | Line 131: | ||
* new transformation to access json fields | * new transformation to access json fields | ||
* new function json_get_string() to return string value without quotes | * new function json_get_string() to return string value without quotes | ||
+ | |||
+ | ==== jsonrpcs ==== | ||
+ | |||
+ | * set pretty_format param to 1 by default | ||
==== nathelper ==== | ==== nathelper ==== | ||
* allow variable for flags parameter of fix_nated_sdp(), | * allow variable for flags parameter of fix_nated_sdp(), | ||
+ | |||
+ | ==== p_usrloc ==== | ||
+ | |||
+ | * new parameter " | ||
==== phonenum ==== | ==== phonenum ==== | ||
Line 97: | Line 148: | ||
* new function phonenum_match_cn(...) | * new function phonenum_match_cn(...) | ||
* match a phone number within a specific country provided by country code two letter | * match a phone number within a specific country provided by country code two letter | ||
+ | * added ccname attribute - get code for country name | ||
==== presence ==== | ==== presence ==== | ||
Line 108: | Line 160: | ||
* added pua.send_publish rpc command | * added pua.send_publish rpc command | ||
* send a PUBLISH request without waiting for response | * send a PUBLISH request without waiting for response | ||
+ | |||
+ | ==== pv ==== | ||
+ | |||
+ | * new config variable $sas - return source address in socket format (proto: | ||
+ | * added new transformation {uri.tosocket} | ||
+ | * converts a sip uri to socket address format | ||
+ | * from sip: | ||
+ | * new function - xavp_params_implode(xname, | ||
+ | * serialize the subbfields of $xavp(xname) in params format (name=value; | ||
+ | * new variable $mbu - the message buffer after applying changes, but the original buffer stays unchanged | ||
+ | * pv: new class of variables - $ksr(attr) | ||
+ | * get attributes of kamailio sip router instance | ||
+ | * implemented attributes: | ||
+ | * ver - return version string | ||
+ | * verval - return version value | ||
+ | |||
==== rr ==== | ==== rr ==== | ||
Line 121: | Line 189: | ||
* UDP/ | * UDP/ | ||
* explicitly handle new option flags (transcoding) | * explicitly handle new option flags (transcoding) | ||
+ | |||
+ | ==== sipcapture ==== | ||
+ | |||
+ | * added sip_capture_forward(uri) | ||
+ | * forward the hep packet to another address | ||
+ | * the address has to bbe provided as parameter in sip uri format | ||
+ | * the function should be used inside event_route[sipcapture: | ||
+ | <code c> | ||
+ | event_route[sipcapture: | ||
+ | if(src_ip==1.2.3.4) { | ||
+ | sip_capture_forward(" | ||
+ | return 0; | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ==== sipt ==== | ||
+ | |||
+ | * added functions to work with forwarding info | ||
+ | * new variables as part of $sipt(...) | ||
+ | |||
+ | ==== stun ==== | ||
+ | |||
+ | * catch udp ping 0000 when trying to parse stun headers | ||
==== tcpops ==== | ==== tcpops ==== | ||
Line 127: | Line 219: | ||
* tcp_get_connid(hostport, | * tcp_get_connid(hostport, | ||
* connection id is set in pvar paraemter | * connection id is set in pvar paraemter | ||
+ | |||
+ | ==== topos ==== | ||
+ | |||
+ | * execute event_route[topos: | ||
+ | * if drop is used, then the message processing with topos is skipped | ||
+ | * event route is executed after event_route[topos: | ||
+ | * new parameter event_mode to control what event_route blocks are executed | ||
==== tls ==== | ==== tls ==== | ||
Line 154: | Line 253: | ||
* make processing of event routes for local requests reentrant | * make processing of event routes for local requests reentrant | ||
* rpc tm.t_uac_start option to work with From and To headers only | * rpc tm.t_uac_start option to work with From and To headers only | ||
+ | * added t_send_reply(code, | ||
+ | * create the transaction if it doesn' | ||
+ | * addes relay_100 config parameter to support stateless operations | ||
==== tmx ==== | ==== tmx ==== | ||
* added t_flush_xflags() function | * added t_flush_xflags() function | ||
+ | |||
+ | ==== uac ==== | ||
+ | |||
+ | * remote registrations - added uac_reg_enable() and uac_reg_disable() | ||
+ | * alternatives to the RPC commands to enable/ | ||
+ | * exported cfg function uac_reg_refresh(luuid) | ||
==== usrloc ==== | ==== usrloc ==== | ||
Line 164: | Line 272: | ||
* new parameter rm_expired_delay - set how many seconds to delay the removal of an expired record (DB_ONLY mode) | * new parameter rm_expired_delay - set how many seconds to delay the removal of an expired record (DB_ONLY mode) | ||
* execute cleanup by server_id | * execute cleanup by server_id | ||
+ | * new parameter version_table | ||
+ | * set it to 0 to disable checking the version for location table | ||
+ | |||
===== New in Core ===== | ===== New in Core ===== | ||
Line 170: | Line 281: | ||
* unified from Kamailio and SER module exports interfaces | * unified from Kamailio and SER module exports interfaces | ||
* locking - added api functions for recursive lock sets | * locking - added api functions for recursive lock sets | ||
- | * added xflags field to sip_msg_t - holds extended flags - 64 new flags in addition to the old 32 flags | + | * added xflags field to sip_msg_t - holds extended flags - 64 new flags in addition to the old 32 flags |
+ | * new internal msg flag to add srvid param to local via | ||
+ | * added internal flag for adding xavp fields to via params | ||
+ | * parser - assign ids for more methods | ||
+ | * KDMQ and HTTP method types GET, POST, PUT and DELETE | ||
+ | * pv - default number of buffer slots set to 40 | ||
+ | * new rpc command - core.ppdefines_full | ||
+ | * print preprocess defines with their details | ||
+ | * xavp - extended to hold a bare void pointer value | ||
+ | * useful to link data that doesn' | ||
+ | * added config defines for application version | ||
+ | * three tokens are defined for version X.Y.Z: KAMAILIO_X, KAMAILIO_X_Y, | ||
==== Interpreter ==== | ==== Interpreter ==== | ||
Line 205: | Line 326: | ||
* callback function receives a string parameter with the name of the event | * callback function receives a string parameter with the name of the event | ||
* execute kemi event callback for " | * execute kemi event callback for " | ||
+ | * new core parameter xavp_via_params | ||
+ | * set the name of the xavp whose subfields will be added as via params | ||