Search code examples
macossippjsipkamailio

Can not find mi_fifo.so and mi_rpc.so files while install Kamailio on Sierra


I try to start kamailio on Sierra OS. When I run kamailio with "/usr/local/sbin/kamailio -c" I get this error:

 0(49276) ERROR: <core> [core/sr_module.c:571]: load_module(): could not find module <mi_fifo> in </usr/local/lib64/kamailio/modules/>
 0(49276) CRITICAL: <core> [core/cfg.y:3401]: yyerror_at(): parse error in config file /usr/local/etc/kamailio/kamailio.cfg, line 219, column 12-23: failed to load module
 0(49276) ERROR: <core> [core/sr_module.c:571]: load_module(): could not find module <mi_rpc> in </usr/local/lib64/kamailio/modules/>
 0(49276) CRITICAL: <core> [core/cfg.y:3401]: yyerror_at(): parse error in config file /usr/local/etc/kamailio/kamailio.cfg, line 236, column 12-22: failed to load module
 0(49276) ERROR: <core> [core/modparam.c:152]: set_mod_param_regex(): No module matching <mi_fifo> found
 0(49276) CRITICAL: <core> [core/cfg.y:3404]: yyerror_at(): parse error in config file /usr/local/etc/kamailio/kamailio.cfg, line 290, column 54: Can't set module parameter
ERROR: bad config file (3 errors)
 0(49276) INFO: <core> [core/sctp_core.c:53]: sctp_core_destroy(): SCTP API not initialized

When I open /usr/local/lib64/kamailio/modules/ there are no mi_fifo.so and no mi_rpc.so files. Where can I get these files?


Solution

  • I guess you are running Kamailio v5.0.x. Starting with v5.0.0, the Management Interface (MI) was removed, being marked as deprecated for several years. With it, all modules prefixed with mi_ have been removed.

    The RPC Interface has to be used now. To get the equivalent of FIFO or Datagram Socket for controlling Kamailio, you have to use jsonrpcs module.

    In short, remove the lines related to loading mi_fifo and mi_rpc (respectively loadmodule and modparam lines) and load jsronrpcs.

    More details about what needs to be done when upgrading from Kamailio v4.4 to v5.0 are listed at: