Documentation -> Manuals -> Manual devel -> Management Interface
The Management Interface (or MI) is an OpenSIPS interface that allows external applications to trigger predefined commands inside OpenSIPS.
Such commands typically allows an external app to :
Several protocols are available in order to connect (from external apps) to the OpenSIPS MI . While the interface itself is provided by OpenSIPS core, each protocol is provided by a separate OpenSIPS module. You can load multiple MI modules in order to use multiple MI protocols in the same time.
Available protocols are :
All protocols do allow multiple applications (clients) to connect in the same time to the MI interface.
A simple example of interacting with OpenSIPS via MI interfaces is when using the opensipsctl utility - it uses FIFO or XMLRPC protocols to push MI commands into OpenSIPS.
The 'opensipsctl utility allows you explicitly run an MI command via the FIFO file:
opensipsctl fifo _mi_cmd_ opensipsctl fifo ps opensipsctl fifo debug 4
or it internally and transparently uses MI command them when providing different or more complex functionalities.
A simple program in Python to trigger to run a MI command in OpenSIPs via XMLRPC protocol:
#!/usr/bin/python import xmlrpclib opensips = xmlrpclib.ServerProxy('http://127.0.0.1:8080/RPC2') print opensips.ps();