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
On Wednesday 24 March 2010, marius zbihlei wrote:
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. [..]
Hello,
any other opinions on this proposal? No oposition agaisnt the removal of the common functionality in kamctl and promoting of serctl as the main server control tool?
Best regards,
Henning
If the goal is to merge both 'ser' and 'kamailio' under the 'sip-router' name, then perhaps the common control tool should be 'srctl'.
Regards, Ovidiu Sas
On Thu, Apr 1, 2010 at 1:56 PM, Henning Westerholt henning.westerholt@1und1.de wrote:
On Wednesday 24 March 2010, marius zbihlei wrote:
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. [..]
Hello,
any other opinions on this proposal? No oposition agaisnt the removal of the common functionality in kamctl and promoting of serctl as the main server control tool?
Best regards,
Henning
sr-dev mailing list sr-dev@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
On Thursday 01 April 2010, Ovidiu Sas wrote:
If the goal is to merge both 'ser' and 'kamailio' under the 'sip-router' name, then perhaps the common control tool should be 'srctl'.
Hello Ovidiu,
good point, i just wanted to refer to the existing command here. The name 'srctl' is perfectly fine with me. For e.g. compability reasons one could just use the 'old' name in his own particular build, this should be also easily adaptable in the XML template for the module READMEs.
Cheers,
Henning
Henning Westerholt writes:
any other opinions on this proposal? No oposition agaisnt the removal of the common functionality in kamctl and promoting of serctl as the main server control tool?
fine with me, but i would be nice to go even further and convert all modules to use rpc instead of mi management interface.
-- juha
On Apr 01, 2010 at 18:56, Henning Westerholt henning.westerholt@1und1.de wrote:
On Wednesday 24 March 2010, marius zbihlei wrote:
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. [..]
Hello,
any other opinions on this proposal? No oposition agaisnt the removal of the common functionality in kamctl and promoting of serctl as the main server control tool?
I think it's a good idea, but you probably mean sercmd and not serctl. serctl is the old obsolete fifo based ser administration tool. To further increase confusion ser_ctl is the current ser administration tool :-)
It might be a good idea to have a look at ser_ctl too. It uses XML-RPC to communicate (it duplicates sercmd functionality, but AFAIK without the interactive tab-completion and history mode) and it can handle all the other DB based management stuff (add users, ACLs a.s.o.). It's written in python and it should be easily extensible to handle kamailio DB format (so it has the potential of being the universal SR management tool, switching DB modes based, for example on a conf value). Unfortunately it lived in the same CVS repository as ser, but in a separate directory (which was not imported in sip-router), making it close to invisible.
More information: http://git.sip-router.org/cgi-bin/gitweb.cgi?p=ser;a=blob;f=ser_ctl/README;h... http://lists.iptel.org/pipermail/serusers/2007-January/031869.html Repository: http://cvs.berlios.de/cgi-bin/viewvc.cgi/ser/serctl/ http://git.sip-router.org/cgi-bin/gitweb.cgi?p=ser;a=tree;f=ser_ctl;hb=HEAD
Andrei
Not sure if I understood all correctly, but having common sip-router controlling tasks in srctl tool, and Kamailio specific provisioning (user provisioning, ...) tasks in kamctl is IMO a good idea.
regards klaus
Am 24.03.2010 13:12, schrieb marius zbihlei:
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)
- 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
sr-dev mailing list sr-dev@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
Klaus Darilion wrote:
Not sure if I understood all correctly, but having common sip-router controlling tasks in srctl tool, and Kamailio specific provisioning (user provisioning, ...) tasks in kamctl is IMO a good idea.
Hello Klaus,
This is exactly what I mean.
Cheers,
Marius