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
Last revision Both sides next revision
features:new-in-4.2.x [2014/10/12 10:43]
miconda [Code]
features:new-in-4.2.x [2014/10/13 10:22]
miconda
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 447: Line 482:
   * 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 453: 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 462: 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.txt ยท Last modified: 2014/10/15 22:02 by miconda