SIREMIS (starting with version 0.9.1) is able to send MI commands to Kamailio, receive and display the response.
In your Kamailio configuration file you have to load mi_datagram module:
loadmodule "mi_datagram.so"
and configure it to listen on an UDP port:
modparam("mi_datagram", "socket_name", "udp:127.0.0.1:8033")
At this time you are set with Kamailio configuration file, just restart it.
The configuration related to MI for SIREMIS resides in file:
siremis/metadata/service/siremisMICommands.xml
The content can look like:
<?xml version="1.0" standalone="no"?> <PluginService Name="siremisMICommands" Package="asipto" Class="siremisMICommands"> <MIConfig name="MIConfig" type="udpsocket"> <Local name="local" data="127.0.0.1:8044"/> <Remote name="remote" data="127.0.0.1:8033"/> <MICommands> <cmd name="ps" title="List Processes" command="ps"/> <cmd name="uptime" title="Show Uptime" command="uptime"/> <cmd name="getstatsall" title="Get All Statistics" command="get_statistics all"/> <cmd name="which" title="Get All MI Commands" command="which"/> </MICommands> </MIConfig> </PluginService>
There are two UDP sockets you have to set:
In case you want to have a drop-down menu with MI commands, fill in new ‘cmd’ tags in ‘MICommands’ node.