[sr-dev] kamctl and sercmd unification proposal

marius zbihlei marius.zbihlei at 1and1.ro
Wed Mar 24 13:12:36 CET 2010


Hello,

As kamailio and ser get more and more unified, sharing common modules 
and core, one of the last remaining points is the intermixed usage of 
kamctl and sercmd to setup specific parameters. One example is the cfg 
framework  changes (from ser) that Kamailio 3.1.0 will bring, that will 
require the use of "sercmd" on setting specific module config params. 
The issue is that the documentation also references the "kamctl" utility 
to specify reload actions etc.

What I suggest is that we strip kamctl with its fifo capabilities and 
leave it only with DB, ACL management and such(that sercmd doesn't 
provide), and use only sercmd on examples in the documentation files. 
This will require no changes to code (well some features from kamctl 
will be deprecated), but only documentation changes. This will ensure 
that documentation is kept well organized and coherent across modules.

These are the modules required to use sercmd (based on functionality), 
the 4th case being the one that I am mostly interested (offers full 
access to Kamailio commands)

1. basic (required for every case - basic ser commands) : 
modules/ctl/ctl.so
2. configuration framework change  : modules/cfg_rpc/cfg_rpc.so
3. fifo comands (kamctl fifo) : modules/mi_rpc/mi_rpc.so (does not 
require modules_k/mi_fifo/mi_fifo.so) In this case no kamailio core 
commands are available (like kamctl debug, kamctl uptime, kamctl which) 
Because readline is based on the which command (lists all available 
commands),  no tab completion is available
4. all K commands : along with mi_rpc, module_k/kex/kex.so is required. 
In this case sercmd has tab completion (because core commands like  
which are available)

Of course the removal of kamctl fifo commands will mean that 
module_k/mi_fifo/mi_fifo.so module will not be required anymore(But I 
strongly suggest that we keep it to allow backwards compatibility)

Suggestions?!

Cheers
Marius



More information about the sr-dev mailing list