README-MODULES
1
2
3Kamailio modules
4==================
5
6This is a major release of the merged SIP Server - Kamailio and SER.
7
8In previous releases (v3.x) some modules where provided in two versions, in Kamailio
9and SER flavours. These are now merged. In some cases, the functionality has
10changed. You can still do the same operation, but how you do it may be different.
11
12Modules are found in the "modules" directory. After installation that can
13be /usr/local/lib/kamailio/modules or /usr/lib/kamailio/modules.
14
15In previous releases there was a "modules_k" and "modules_s" directory, but in
16this release these directories are empty.
17
18What is a module?
19=================
20A module consists of a lot of functions that enhance the core. Some of the modules
21depends on other modules. It's all properly documented in the README that belongs
22to each module (available as web pages on the kamailio.org web site).
23
24A module providers up to six different APIs:
25
26- Enhancements to the core Kamailio routing script (functions)
27- Commands for the management interfaces (MI and RPC)
28- Development interface for other modules
29- Pseudo-variables
30- Selects and config framework variables
31- Event-Routes
32
33A single module may provide a selection of this, maybe only one of them.
34
35Kamailio Modules
36----------------
37acc Accounting
38acc_radius Accounting with RADIUS backend
39alias_db Alias management in database modules
40app_java Lang :: Execute embedded Java applications
41app_lua Lang :: Execute embedded LUA scripts
42app_mono Lang :: Execute embedded MONO scripts (like C#, Java, javascript)
43app_perl Lang :: Embedded perl script support
44app_python Lang :: Execute embedded Python scripts
45async Asynchronus SIP request handling functions
46auth MD5 digest authentication support
47auth_db Authentication using a database module
48auth_diameter Authentication based on Diameter
49auth_ephemeral User authentication with ephemeral credentials
50auth_identity SIP Identity support (RFC 4474)
51auth_radius Radius authentication
52avp Collection of functions for handling AVP's (from SER)
53avpops Attribute-value pair operations ("variables")
54benchmark Development benchmark module
55blst Blacklisting API for configuration scripts
56call_control Call timeouts and management (depends on Dialog module)
57carrierroute A telephony routing module
58cdp C Diameter Peer - core communication engine
59cdp_avp C Diameter Peer - application extensions
60cfg_db Database driver for configuration API
61cfg_rpc Update core and module parameters from RPC
62cfgutils Various configuration utilities
63corex Core extensions
64counters Internal counter API for configuration
65cpl-c Implementation of SIP Call Processing Language (RFC 3880)
66ctl Control connector for RPC interface (fifo, unixsock, tcp, udp)
67db_berkeley Database :: Berkeley DB (Oracle)
68db_cluster Generic database connectors clustering and failover
69db_cassandra Database :: Cassandra database server connector
70db_flatstore Database :: Flatstore
71db_mongodb Database :: MongoDB
72db_mysql Database :: Mysql
73db_oracle Database :: Oracle support
74db_perlvdb Database :: Use perl database functions
75db_postgres Database :: PostgreSQL
76db_text Database :: Text support
77db_unixodbc Database :: Unix ODBC support
78db2_ldap DB2 :: Database connector to LDAP using the DB2 API
79db2_ops DB2 :: Database operations for DB API v2
80debugger Interactive configuration processing debugger
81dialog Dialog ("call") state module
82dialplan Dialplan management
83dialog_ng Dialog tracking module - next generation
84dispatcher Load balancing and failover
85diversion Call redirect support (SIP Diversion: header)
86dmq Distributed message queue system using SIP
87dnssec DNSsec support in the DNS resolver
88domain Proxy :: Multiple domain support using databases
89domainpolicy Proxy :: Obsolete module - This module is no longer maintained
90drouting Proxy :: Dynamic routing
91enum Enum support
92exec External exec module
93evapi Network event broadcast API
94geoip GeoIP API to configuration file
95group Utils :: Group membership checking
96gzcompress Compress and decompress SIP message body with zlib
97h350 LDAP/ITU H.350 multimedia schema support
98htable Utils :: Hash table support
99imc IM :: Instant messaging conference
100ims_auth IMS authentication module
101ims_charging IMS charging component module
102ims_icscf IMS ICSCF component module
103ims_isc IMS ISC component module
104ims_qos IMS Diameter Rx interface
105ims_registrar_pcscf IMS PCSCF registrar module
106ims_registrar_scscf IMS SCSCF registrar module
107ims_usrloc_pcscf IMS PCSCF usrloc module
108ims_usrloc_scscf IMS SCSCF usrloc module
109ipops IP and DNS related operations
110iptrtpproxy NAT traversal :: Kernel based RTP proxy
111jabber IM :: Jabber gateway
112json Access to JSON document attributes
113jsonrpc-c JSON-RPC client over netstrings protocol
114jsonrpc-s JSON-RPC interface to the Kamailio RPC API
115kazoo Middle layer connector for Kazoo VoIP platform
116kex Proxy :: Kamailio core functions (backwards compatibility)
117lcr Least cost routing
118ldap LDAP Directory access
119malloc_test Functions for stress-testing memory manager (from SER)
120mangler SIP message mangling functions (from SER)
121matrix Matrix operations
122maxfwd SIP loop detection prevention (max-forwards header - "ttl")
123mediaproxy Nat traversal :: Mediaproxy (AG projects)
124memcached Utils :: In-memory caching support (memcached)
125mi_datagram Management interface :: UDP
126mi_fifo Management Interface :: Unix FIFO
127mi_rpc Management Interface :: RPC support
128mi_xmlrpc Management Interface :: XML-rpc
129misc_radius Various Radius functions
130msilo Text message storage
131msrp Embedded MSRP relay (RFC 4975 and RFC 4976)
132mohqueue Music on hold queuing system
133mqueue Message queue system for configuration file
134nat_traversal NAT :: NAT traversal module
135nathelper NAT :: NAT traversal module :: RTPproxy (SIPPY software)
136ndb_cassandra Connector to Apache Cassandra
137ndb_mongodb Connector to MongoDB
138ndb_redis Connector to REDIS NoSQL Database engine
139nosip Handle non-sip messages received by SIP workers via event_route
140osp Open Settlement Protocol support
141outbound SIP Outbound Implementation
142p_usrloc Partitioned and distributed user location services
143path Path: header support
144pdb Number portability using external server
145pdt Proxy :: Routing based on numeric prefix
146peering SIP peering between service providers
147permissions Security :: TCP-wrapper-like ACL functions
148pike Security :: DOS-attack prevention
149pipelimit Traffic shaping policies
150prefix_route Execute config file route blocks based on prefix
151presence Presence :: Core presence module
152presence_conference Presence :: Conference events handling
153presence_dialoginfo Presence :: Dialog info
154presence_mwi Presence :: Message waiting indication
155presence_profile Presence :: User profile extensions (RFC 6080)
156presence_reginfo Presence :: Registration info (RFC 3680)
157presence_xml Presence :: XML handler
158print DEVEL :: Basic sample of a module
159print_lib DEVEL :: Basic sample of a module with dependency on other modules
160pua Presence :: Common module
161pua_bla Presence :: BLA
162pua_dialoginfo Presence :: Dialog Info support
163pua_mi Presence :: Management interface
164pua_reginfo Presence :: Registration information (RFC 3680)
165pua_usrloc Presence :: USRLOC integration
166pua_xmpp Presence :: XMPP/Jabber gateway
167purple Presence :: Libpurple support
168pv Pseudo-variable implementation
169qos Dialogs :: SDP management
170ratelimit Traffic shaping module
171regex Regular expression support
172registrar Registrar/location server support
173rls Presence :: Resource list server
174rr Proxy :: Record routing
175rtimer Utils :: Timer based routing script processing
176rtpengine NAT :: RTPEngine media relay control functions
177rtpproxy NAT :: Nat traversal module for RTPproxy control
178sanity Syntax checking for incoming SIP requests
179sca PRESENCE :: Shared call appearances
180sdpops SDP operations
181seas Application server interface
182sipcapture SIP Capture Server module (used in the Homer project)
183sipt SIP-T and SIP-I operations
184siptrace Store SIP messages in database
185siputils Various utilities for SIP call handling
186sl Proxy :: Stateless handling of SIP messages
187sms SMS gateway support
188snmpstats SNMP support (net-snmp agentx)
189speeddial Per-user speed-dial controller module
190sqlops SQL operations
191sst SIP Session Timers implementation
192statistics Script statistics support
193statsd Connector for statsd application
194textops Text operations
195textopsx Extra Text operations
196timer Execute routing blocks on core timers (From SER)
197tls SSL/TLS support
198tm Proxy :: SIP transaction support (stateful)
199tmx Proxy :: Kamailio transaction extensions (TM module)
200topoh Topology hinding
201uac UAC functions (From: mangling and UAC auth)
202uac_redirect UAC redirection support
203uid_auth_db Authentication module using unique IDs (from SER)
204uid_avp_db AVP Database operations using unique IDs (from SER)
205uid_domain Domain management using unique IDs (from SER)
206uid_gflags Global attributes and flags using Unique IDs (from SER)
207uid_uri_db Database URI operations using unique IDs (from SER)
208uri_db URI operation with database support
209userblacklist User-specific blacklists
210usrloc Proxy :: Location server
211utils Various utilities (http query, xcap status)
212uuid Unique string value generator using libuuid
213websocket HTTP :: Websocket transport layer for proxy
214xcap_client Presence :: XCAP support
215xcap_server Presence :: XCAP server implementation
216xhttp HTTP :: The server
217xhttp_pi HTTP :: Provisioning interface for Kamailio
218xhttp_rpc HTTP :: RPC Command support
219xlog Utils :: Extended logging support
220xmlops XML operations using XPath
221xmlrpc HTTP :: XMLrpc support
222xmpp Presence/IM :: XMPP/jabber gateway
223xprint Functions for printing messages with specifiers (from SER)
224
225