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