Mercurial > libervia-backend
diff doc/libervia-cli/debug.rst @ 3488:c80a0f864b5d
doc: updated doc following global renaming
author | Goffi <goffi@goffi.org> |
---|---|
date | Sun, 21 Mar 2021 18:23:58 +0100 |
parents | doc/jp/debug.rst@cf843dd7c345 |
children | 4705f80b6e23 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/libervia-cli/debug.rst Sun Mar 21 18:23:58 2021 +0100 @@ -0,0 +1,93 @@ +===================================================== +debug: tools to help debugging/monitoring Salut à Toi +===================================================== + +``debug`` groups commands to monitor or manipulate SàT and XMPP stream. + +.. _libervia-cli_debug_bridge_method: + +bridge method +============= + +Call a method of the bridge. You have to provide the name of the method and the arguments +as positional arguments. Arguments are evaluated as Python code (using ``eval``), so you +need to properly escape them (for your shell **and** Python). You can either split your +Python arguments as many shell arguments, or put them in a single shell argument. + +You profile is automatically set if the method requires it (using the value of ``-p +PROFILE, --profile PROFILE``), so you must not specify it as an extra argument. + +You can refer to `Bridge API documentation`_ to get core methods signatures + +.. _Bridge API documentation: https://wiki.goffi.org/wiki/Bridge_API + + +examples +-------- + +Send a message using a single shell arguments for all Python arguments. We +use first the method name (``messageSend``), then the required arguments (see `Bridge +API documentation`_ for details), without the profile as it is automatically set. We +specify them as Python in one shell argument, so we use single quote (``\```)first for +s hell string, and inside it we use double quote (``"``) for Python strings:: + + $ li debug bridge method messageSend '"louise@example.org", {"": "test message"}, {}, "auto", {}' + +.. note:: + + This is for debugging only, if you want to send message with li, use :ref:`libervia-cli_message_send`. + +Get version string of SàT:: + + $ li debug bridge method getVersion + + +bridge signal +============= + +Send a fake signal. This is specially useful to test behaviour of a frontend when a +specific event happens. To use is you just need to specify the name of the signal and the +arguments to use (using Python eval in the same way as for libervia-cli_debug_bridge_method_). + +example +------- + +Send a note with ``info`` level and hand written XMLUI. Here me use a shell variable to +store the level, so we can easily change it if we want to use an other level for tests. +Note the use of quotes (to escape both for shell and Python):: + + $ LEVEL='info'; li debug bridge signal -c actionNew '{"xmlui": '"'"'<?xml version="1.0" ?><sat_xmlui title="test title" type="dialog"><dialog level="'$LEVEL'" type="note"><message>test message\non\nseveral\nlines</message></dialog></sat_xmlui>'"'"'}' '""' -1 + + +monitor +======= + +Show raw XML stream. By default, output is pretty formatted/highlighted and you get all +streams in both direction. You can filter the direction using ``-d {in,out,both}, +--direction {in,out,both}``. + +For this to work, you need to set the option ``Activate XML log`` in the ``Debug`` section +of your parameters. + +Verbosity is used, to print details on the direction of a stanza, use ``--verbose, -v`` + +example +------- + +Monitor raw XML stream:: + + $ li debug monitor -v + +theme +===== + +Show the colour constants in their respective colour, according to background (``light`` +or ``dark``). If backround option is not set in ``sat.conf``, it will be autodetected, and +colour theme will be modified accordingly. + +example +------- + +Show colours with the set background:: + + $ li debug theme