====== New Features in OpenSER 1.3.x ====== ===== New in OpenSER core ===== * [b]pseudo-variable (PV)[/b] refurbishment -- modules can add now writable PVs * [b]SCTP[/b] protocol support * [b]AVPs and HDRs[/b] can be accessed via dynamic index * [b]while[/b] statement support * [b]modules[/b] can register to core to fork new processes for own usage, cleaner server initialization * [b]modules[/b] can fork their own timer process for better performance * [b]cleanups[/b] in utility functions and database API -- integrate common functionality into the core, removal redundant code * [b]bugs[/b] -- more then 160 bugs reported from the community were fixed * [b]patches[/b] -- more then 60 community created patches were integrated * [b]GNU/kFreeBSD support[/b] for systems with a FreeBSD kernel and a GNU userland * [b]redesign of logging functions[/b] -- the debugging output has a more consistent and syslog-like format even for stderror * [b]documentation[/b] -- many errors in module documentation and code comments were fixed * [b]new assign operator for avps ":="[/b] -- $avp(name) := value will overwrite the value of any exiting $avp(name), resulting in a new single $avp(name) (delete all $avp(name), add $avp(name)). In addition, $avp(name) := null will delete all existing $avp(name) * [b]configurable debug level[/b] at runtime * [b]unix socket server[/b] implementation removed; the functionality is now provided by the [b]mi_datagram[/b] module * [b]several new pseudo variables[/b] ===== New OpenSER modules ===== * [b]benchmark[/b] - config file benchmarking * [b]carrierroute[/b] - routing extension suitable for carriers * [b]cfgutils[/b] - config file utilities * [b]db_berkeley[/b] - Berkeley DB backend support * [b]h350[/b] - H350 LDAP implementation * [b]ldap[/b] - LDAP connector * [b]mi_datagram[/b] - datagram transport for management interface (MI) * [b]perlvdb[/b] - Perl virtual database engine * [b]presence_mwi[/b] - Extension to Presence server for Message Waiting Indication * [b]presence_xml[/b] - SIMPLE Presence extension * [b]pua_bla[/b] - Brigded line appearance extension for PUA * [b]pua_xmpp[/b] - SIMPLE-XMPP Presence gateway * [b]rls[/b] - Resource List Service implementation (beta -- not fully released) All modules in OpenSER 1.3: http://www.openser.org/docs/modules/1.3.x/ ===== New in OpenSER modules ===== * [b]auth[/b] ** ability to perform authentication taking username and password from pseudo-variables ** together with LDAP module can perform now user authentication against LDAP servers [[http://www.openser.org/dokuwiki/doku.php/tutorials:openser-auth-ldap|see here]] * [b]dbtext[/b] ** ability to reload content from files if this has changed * [b]dialog[/b] ** the module stores many more details specific for dialogs, making possible to build requests in dialog ** support for dialog persistence across openser restart * [b]dispatcher[/b] ** ability to use database as backend for the destinations list ** ability to auto-detect recovered destinations ** new selection algorithms * [b]lcr[/b] ** many parameters can be given as pseudo-variables, allowing dynamic values at runtine * [b]mi_xmlrpc[/b] ** ability to work with both 0.9.x and 1.0.x versions of libxmlrpc * [b]mysql[/b] ** allows MySQL stored procedures and multiple statements calls from OpenSER ** extension to return the last inserted ID of * [b]nathelper[/b] ** ability to do load balancing within a set of RTPProxies ** ability to spoof source IP of NAT ping packets ** SIP NAT pings follow PATH array ** NAT pings sending is distributed over the natping interval, instead of sending all at once ** usage of special timer process to send NAT pings ** new flag in force_rtp_proxy() to force a symmetric rtp session ** removed the "rtpproxy_disable" string - you can achive the same by either not defining "rtpproxy_sock" (default NULL) or setting it to empty string * [b]pdt[/b] * ability to define the set of characters allowed in prefix * support to reload rules from database via MI command * [b]siptrace[/b] ** intercept and store hop-by-hop ACK ** coherence for source and destination IP addresses * [b]tm[/b] ** new error code E_NO_DESTINATION was added to report when there are no available branch to forward to. ** t_relay returns now: -1 : generic internal error -2 : bad message (parsing errors) -3 : no destination available (no branches were added or request already cancelled) -4 : bad destination (unresolvable address) -5 : destination filtered (black listed) -6 : generic send failed * [b]uac[/b] ** ability to do qop authentication * [b]xlog[/b] ** color PV moved in xlog module ===== New in additional tools ===== *[b]database setup[/b] is done from one source for all databases *[b]openserdbctl[/b] integrates now the different db specific scripts for database maintainance *[b]cleanups[/b] in openserdbctl and openserctl -- removal of redundant code *[b]tests[/b] for basic functionality in the core and essential modules