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
Last revision Both sides next revision
features:new-in-4.2.x [2014/10/13 10:08]
miconda [usrloc]
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 405: Line 433:
     * the change to the type of columns has to be done manually to the database server     * 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)     * 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 452: 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 458: 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 467: 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