On January 11, 2010, Kamailio 3.0.0 was released.
On July 28, 2008, OPENSER was renamed to KAMAILIO
Roadmap to the 1.5 release
Code Frozen: Jan 29, 2009
Release 1.5.0: End Of Feb, 2009
New in 1.5.0: [http://www.kamailio.org/dokuwiki/doku.php/features:new-in-1.5.x]
Note: This roadmap is really incomplete and does not mirror entirely the actual progress. It is provided for informative purposes. If you want to propose a new feature, please use project's tracker:
http://sourceforge.net/tracker/?group_id=139143
Developers are encouraged to add here as soon as they start to work on new task or complete them.
- TLS support for server_name extension (aka SNI=server name indication)
- status: done (klaus)
- Refurbishment of RADIUS modules
- several radius modules that share lot of code merged in misc_radius module
- status: done (juha)
- carrierroute module
- fetch support to load database records
- status: done (henning)
- pv module
- new module to collect Pseudo-variables available in configuration file
- $branch(name) - provides access to branch attributes
- status: done (miconda)
- migrate PVs from core to pv module
- daemontools support
- added support for running kamailio (openser) with daemon tools (new core parameter for “no-daemon” mode)
- status: done
- Presence Server: Dialog-Info support
- two new modules: presence_dialoginfo and pua_dialoginfo
- implementation of RFC4235
- status: done (klaus)
- memory management
- better startup performance for FAST MALLOC memory manager
- status: done (henning)
- better debug mechanisms
- de-fragmentation of memory
- status: work in progress (miconda)
- continue the cleanup of fixup functions used by modules
- the functions that are duplicated in several modules must be migrated to core in mod_fix.{c,h}
- the naming format of fixup functions must have a suggestive pattern
- status: work in progress (miconda)
- continue cleanup of PV handler functions
- add helper functions to be used by PV handlers for better consistency and duplicates removal
- status: done (miconda)
- generic shared hash table system
- shared container for config file: new module htable
- status: done (ramona)
- MI commands to get/set items in HT
- ability to save/load in/from database
- ability to init items at startup
- auto-expire time for items
- status: done (ramona)
- testing suite
- add regression test capabilities to existing testing suite, new tests
- status: work in progress (henning)
- doxygen documentation in code
- migrate existing comments to doxygen format to be easy to browse
- add documentation for important API functions
- check it at http://devel.kamailio.org/doxygen/
- status: work in progress (all)
- consolidation of modules
- migration of gflags functionality into cfgutils
- status: done (henning)
- migration of options and uri module to siputils
- status: done (henning)
- evaluate further integration of small modules, e.g. xlog, benchmark, maxfwd..
- status: work in progress (henning)
- abstraction of common datastructures in userblacklist and carrierroute
- move trie like structure to core, change userblacklist to use this
- status: done (henning)
- change carrierroute to use this
- status: done (henning)
- usage of a regular expression library across the modules
- there are couple of modules that need regexp with shared memory manager (lcr, dialplan)
- options
- trex library (used by dialplan) moved to core
- PCRE (http://www.pcre.org/)
- status: done - dialplan and lcr modules have been converted to use PCRE (juha)
- enhancements to registrar server
- function to unregister all contacts for an AoR - unregister() in registrar module
- save() with flags 0x04 stores and maintain single contact per AoR
- fetch contacts and export them via pseudo-variables
- status: done (miconda)
- unregister() to be enhanced to unregister a specific contact address
- status: work in progress (miconda)
- enhancements to textops module
- insert_body(“text”, “content-type”) - add body to a SIP message
- status: done (miconda)
- allow dynamic values in parameters
- case sensitive operations
- some parts in SIP messages are case sensitive, some are not
- special functions are required to handle these cases properly
- AVPs
- allow named-field values
- status: proposed (miconda)