Management API's in Kamailio
------------------------------
Kamailio has an API based on RPC. This allows modules and core to expose commands that can be
issued by external applications. Commands can change states, read status variables or expose
internal structures.
There are multiple ways to integrate your application to this interface. By adding modules,
you can adapt the interface to one of several protocols supported:
- XML-rpc
- binrpc over various transports
- Kamailio's MI - the management interface
The MI interfaces can often run over Unix fifo sockets, UDP or TCP connections.
The "kamcmd" application is the command line tool used to connect to Kamailio
over the command line. Use it to discover available commands.
For backwards compatibilty, the kamctrl and kamdbctrl commands are still supported.
Detailed information about these interfaces are to be found on the main sip-router.org
web site in the wiki section.
Modules
-------
mi_rpc Exports Kamailio's MI interface over Kamailio's RPC interface
xmlrpc Exports the RPC interface using XML-rpc
ctl Implements the binrpc transport interface for SER rpcs
Also implements the old SER fifo-based management interface.
Kamailio modules (modules_k)
----------------------------
mi_datagram Kamailio MI interface- UDP version
mi_fifo Kamailio MI interface- FIFO version
mi_xmlrpc Kamailio MI interface- XML-rpc version
The Kamailio MI interface is considered deprecated and will be supported
only for backwards compatibility. New development is encouraged to use the
RPC interface through one of the modules used to connect to it.
The modules that currently only has MI interfaces will be changed to support
the RPC interface in a coming release.