User Tools

Site Tools


features:new-in-4.2.x

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
features:new-in-4.2.x [2014/10/11 12:47]
miconda [pv]
features:new-in-4.2.x [2014/10/15 22:02] (current)
miconda
Line 15: Line 15:
  
   * push details of events to remote applications via tcp   * push details of events to remote applications via tcp
-  * http://kamailio.org/docs/modules/devel/modules/evapi.html+  * http://kamailio.org/docs/modules/4.2.x/modules/evapi.html
  
 ==== db_mongodb ==== ==== db_mongodb ====
  
   * DB APIv1 connector implementation for MongoDB NoSQL engine   * DB APIv1 connector implementation for MongoDB NoSQL engine
-  * http://kamailio.org/docs/modules/devel/modules/db_mongodb.html+  * http://kamailio.org/docs/modules/4.2.x/modules/db_mongodb.html
  
 ==== jsonrcp-s ==== ==== jsonrcp-s ====
  
   * implementation of JSONRPC server over HTTP   * implementation of JSONRPC server over HTTP
-  * http://kamailio.org/docs/modules/devel/modules/jsonrpc-s.html+  * http://kamailio.org/docs/modules/4.2.x/modules/jsonrpc-s.html
  
 ==== kazoo ==== ==== kazoo ====
  
   * middle layer communication message queue for Kazoo platform   * middle layer communication message queue for Kazoo platform
-  * http://kamailio.org/docs/modules/devel/modules/kazoo.html+  * http://kamailio.org/docs/modules/4.2.x/modules/kazoo.html
  
 ==== ndb_cassandra ==== ==== ndb_cassandra ====
  
   * configuration script connector for Cassandra NoSQL engine   * configuration script connector for Cassandra NoSQL engine
-  * http://kamailio.org/docs/modules/devel/modules/ndb_cassandra.html+  * http://kamailio.org/docs/modules/4.2.x/modules/ndb_cassandra.html
  
 ==== ndb_mongodb ==== ==== ndb_mongodb ====
  
   * configuration script connector for MongoDB NoSQL engine   * configuration script connector for MongoDB NoSQL engine
-  * http://kamailio.org/docs/modules/devel/modules/ndb_mongodb.html+  * http://kamailio.org/docs/modules/4.2.x/modules/ndb_mongodb.html
  
 ==== nosip ==== ==== nosip ====
  
   * allow handling non-sip traffic via event_route   * allow handling non-sip traffic via event_route
-  * http://kamailio.org/docs/modules/devel/modules/nosip.html+  * http://kamailio.org/docs/modules/4.2.x/modules/nosip.html
  
 ==== rtpengine ==== ==== rtpengine ====
Line 51: Line 51:
   * control rtpengine application for RTP relaying or WebRTC gatewaying   * control rtpengine application for RTP relaying or WebRTC gatewaying
   * successor of rtpproxy-ng   * successor of rtpproxy-ng
-  * http://kamailio.org/docs/modules/devel/modules/rtpengine.html+  * http://kamailio.org/docs/modules/4.2.x/modules/rtpengine.html
  
 ==== tsilo ==== ==== tsilo ====
  
   * attach attributes and add new branches to ongoing transaction   * attach attributes and add new branches to ongoing transaction
-  * http://kamailio.org/docs/modules/devel/modules/tsilo.html+  * http://kamailio.org/docs/modules/4.2.x/modules/tsilo.html
  
 ==== uuid ==== ==== uuid ====
  
   * variables returning unique variables using libuid   * variables returning unique variables using libuid
-  * http://kamailio.org/docs/modules/devel/modules/uuid.html+  * http://kamailio.org/docs/modules/4.2.x/modules/uuid.html
  
  
Line 95: Line 95:
   * new flag for auth_check() to skip caller id check for forwarding requests   * new flag for auth_check() to skip caller id check for forwarding requests
     * caller id check is skipped for INVITE, BYE, PRACK, UPDATE, MESSAGE -- these requests can come with an anonymous caller id     * caller id check is skipped for INVITE, BYE, PRACK, UPDATE, MESSAGE -- these requests can come with an anonymous caller id
 +  * load_credentials defaults now to empty list (null value)
  
 ==== carrierroute ==== ==== carrierroute ====
Line 133: Line 134:
  
   * implemented async raw query and async insert - both use the core async framework   * implemented async raw query and async insert - both use the core async framework
 +
 +==== db_text ====
 +
 +  * refactoring to store result in private container, instead of connection structure
  
 ==== debugger ==== ==== debugger ====
Line 180: Line 185:
   * added function to broadcast message from config file   * added function to broadcast message from config file
   * added RPC interface to query the nodes in the cluster   * added RPC interface to query the nodes in the cluster
 +  * new function: dmq_t_replicate() - replicates current SIP message to all active DMQ nodes. Includes built-in loop detection which can be skipped with optional parameter
 +  * new function: dmq_is_from_node() - Checks whether current message has come from another node, based on source IP
  
 ==== htable ==== ==== htable ====
Line 187: Line 194:
     * pseudo-vars $shtrecord(key) and $shtrecord(value) access the expired content     * pseudo-vars $shtrecord(key) and $shtrecord(value) access the expired content
   * new config function sht_reset("tname") - remove all items in the hash table   * new config function sht_reset("tname") - remove all items in the hash table
 +  * iterator implementation for hash tables
 +    * new functions:
 +      * sht_iterator_start(iname, hname)
 +      * sht_iterator_next(iname)
 +      * sht_iterator_end(iname)
 +    * the current item in the iterator is accessible via:
 +      * $shtitkey(iname)
 +      * $shtitval(iname)
  
 ==== ims_auth ==== ==== ims_auth ====
Line 208: Line 223:
   * new module parameter force_icscf_uri - if set we use it as the ICSCF next hop - if not set (default) we use DNS SRV to find ICSCF next hop   * new module parameter force_icscf_uri - if set we use it as the ICSCF next hop - if not set (default) we use DNS SRV to find ICSCF next hop
   * new module function lookup_transport() - this allows terminating P-CSCF to check(and possibly) change the transport for the request before relaying/fwding to terminating UE   * new module function lookup_transport() - this allows terminating P-CSCF to check(and possibly) change the transport for the request before relaying/fwding to terminating UE
 +  * option to ignore "REGISTERED STATE", when checking for a registered client
  
 ==== ims_registrar_scscf ==== ==== ims_registrar_scscf ====
Line 217: Line 233:
   * use p_asserted_identity as default subscription-id for AAR requests   * use p_asserted_identity as default subscription-id for AAR requests
   * allow E164 to be used as subscription type for AAR requests   * allow E164 to be used as subscription type for AAR requests
 +  * store AAR flow descriptions in CDP session
 +  * new parameter: authorize_video_flows - a flag that specifies whether or not to authorize video flows
  
 ==== ims_usrloc_pcscf ==== ==== ims_usrloc_pcscf ====
Line 284: Line 302:
     * default is 6 (2^6 = 64 slots)     * default is 6 (2^6 = 64 slots)
   * option disable database loading - if db url or table name are empty, skip loading pipes from db   * option disable database loading - if db url or table name are empty, skip loading pipes from db
 +
 +==== presence ====
 +
 +  * new parameter local_log_level - control verbosity of some log messages, default value: L_INFO
  
 ==== presence_dialoginfo ==== ==== presence_dialoginfo ====
Line 308: Line 330:
  
   * new parameter expire_range: allow randomization of expire value coming from UA   * new parameter expire_range: allow randomization of expire value coming from UA
 +  * new api function lookup_to_dset()
  
 ==== rr ==== ==== rr ====
Line 374: Line 397:
   * rebuild local Via when force socket is changed in event_route[tm:local-request] - new forced socket is also set for sending out   * rebuild local Via when force socket is changed in event_route[tm:local-request] - new forced socket is also set for sending out
   * rebuild the local request if uri was changed in event route   * rebuild the local request if uri was changed in event route
 +  * new api function t_append_branches()
  
 ==== tmx ==== ==== tmx ====
Line 382: Line 406:
   * t_precheck_tran() - lightweight filtering of retransmissions - keep track of processed messages per process to catch retransmissions in early phase, to avoid simultaneous processing until transaction is     created   * t_precheck_tran() - lightweight filtering of retransmissions - keep track of processed messages per process to catch retransmissions in early phase, to avoid simultaneous processing until transaction is     created
   * precheck_trans - new parameter to enable/disable pre-transaction check - enable/disable usage of t_precheck_trans() - don't init internal structures   * precheck_trans - new parameter to enable/disable pre-transaction check - enable/disable usage of t_precheck_trans() - don't init internal structures
 +
 +==== topoh ====
 +
 +  * allow server ip to be used as mask ip
  
 ==== uac ==== ==== uac ====
Line 400: Line 428:
  
   * generate callid at startup and increase cseq for records added via mi/rpc commands   * generate callid at startup and increase cseq for records added via mi/rpc commands
 +  * option to set datetime columns as bigint
 +    * should handle better daylight shifting
 +    * new parameter expires_type - if set to 1, it expects expires and last modified columns to be bigint
 +    * the change to the type of columns has to be done manually to the database server
 +    * default values is 0, expecting to work with datetime columns (existing behavior)
 +  * new parameter db_raw_fetch_type - specify what type of query should be used in DB-only mode for retrieving contacts for specific needs (e.g., sending NAT keepalives)
 +  * option to control if the null fields should be in insert statement
  
 ==== utils ==== ==== utils ====
Line 443: Line 478:
   * lib/srutils: add sruid_next_safe() function - checks to see if the sruid was initialized by same process and if not, triggers a reinit - pid is stored inside the sruid struct   * lib/srutils: add sruid_next_safe() function - checks to see if the sruid was initialized by same process and if not, triggers a reinit - pid is stored inside the sruid struct
   * call onsend_route for replies   * call onsend_route for replies
 +    * onsend_route_reply - parameter to control if onsend_route is executed for forwarded replies
   * return OK as string for a successful dns.delete rpc command   * return OK as string for a successful dns.delete rpc command
   * new internal msg flag - FL_UAC_AUTH - to mark requests that had local uac authentication done (e.g., via uac_auth() from uac module) - it is an indication that cseq should be increased   * new internal msg flag - FL_UAC_AUTH - to mark requests that had local uac authentication done (e.g., via uac_auth() from uac module) - it is an indication that cseq should be increased
   * allow up to three callback functions for net_data_in and net_data_out   * allow up to three callback functions for net_data_in and net_data_out
 +  * new parameter - log_prefix
 +    * can be used to set what prefix to be printed for each log message while processing a SIP message
 +    * can contain variables
 +    * example: log_prefix="[$mt $hdr(CSeq) $ci]"
 +  * add received parameter to via if rport parameter is present - required by RFC3581, section 4
  
 ==== Default Config ==== ==== Default Config ====
Line 452: Line 493:
   * enable_full_lr set to 0   * enable_full_lr set to 0
   * use t_precheck_trans() to catch retransmissions faster   * use t_precheck_trans() to catch retransmissions faster
 +  * NAT OPTIONS keepalive can be enabled with define WITH_NATSIPPING
  
 ===== Tools ===== ===== Tools =====
Line 461: Line 503:
   * new command 'trap' - useful to get a full bt dump of all kamailio processes   * new command 'trap' - useful to get a full bt dump of all kamailio processes
   * db connect - new command for db management subset - execute to command line client tool and stay connected using the attributes from kamctlrc   * db connect - new command for db management subset - execute to command line client tool and stay connected using the attributes from kamctlrc
 +  * address dump command to list subnets
features/new-in-4.2.x.1413024441.txt.gz ยท Last modified: 2014/10/11 12:47 by miconda