On 19.01.22 17:17, Juha Heinanen wrote:
Daniel-Constantin Mierla writes:
However, I would recommend to use kamcli instead
of kamcmd, the
binrpc protocol and kamcmd are not really maintained.
Should it have been kamctl
instead?
by functionality, kamcli replaces kamctl as well, but in this case I
meant indeed kamcmd, because kamcmd uses a custom binary rpc protocol
(aka binrpc) designed by SER developers during 2005-2008, without much
documentation around it.
I had to dig in it recently to add support for 'long' values, given the
overflow of integer in statistics related to shared memory size and it
is not something I would invest time again in it (e.g., if it requires
coding for making it work with newer libreadline). The ctl module is the
one getting kamcmd commands.
kamctl and kamcli use jsonrpc (via jsonrpcs module), which is well known
(and widely accepted) standard, with proper docs and libraries out there.
kamctl can also replace kamcmd for rpc command execution from terminal,
practically "kamcmd RPC_COMMAND" can be done with "kamctl rpc
RPC_COMMAND", but kamctl does not have tab completion and no internal
shell. Then kamctl has the various shells compatibility issues, input
validation limitations ...
The kamcli has tab completion and internal shell, plus more convenient
features, such as completion from history, highlighting, formatting
output, etc ...
In other words, kamcli can replace kamctl and kamcmd.
Cheers,
Daniel
--
Daniel-Constantin Mierla --
www.asipto.com
www.twitter.com/miconda --
www.linkedin.com/in/miconda
Kamailio Advanced Training - Online
Feb 21-24, 2022 (America Timezone)
*
https://www.asipto.com/sw/kamailio-advanced-training-online/