doc: updated doc following global renaming
This commit is contained in:
parent
8768429efc
commit
6d15e23a31
40 changed files with 400 additions and 395 deletions
|
|
@ -4,7 +4,7 @@
|
|||
Configuration
|
||||
=============
|
||||
|
||||
Salut à Toi main configuration is set in a file named ``sat.conf`` (which may be prefixed
|
||||
Libervia main configuration is set in a file named ``libervia.conf`` (which may be prefixed
|
||||
by a ``.`` if you want to hide it on suitable platforms). It is a common file used both by
|
||||
backend and all frontends (and even related project like SàT Pubsub).
|
||||
|
||||
|
|
@ -12,18 +12,18 @@ This file can be located in the following paths (in order of parsing):
|
|||
- ``/etc``
|
||||
- ``~`` (``$HOME`` or your home directory)
|
||||
- XDG directory for configuration (most of time it is
|
||||
``~/.config/sat/``)
|
||||
``~/.config/libervia/``)
|
||||
- the parent directory of SàT installation path
|
||||
|
||||
If several configurations files are found, they are merged. In case of conflict, the
|
||||
option parsed last is the one used (in other words: if you have an option set in
|
||||
``/etc/sat.conf`` and the same one set in ``~/.sat.conf``, the one from ``~/.sat.conf``
|
||||
``/etc/libervia.conf`` and the same one set in ``~/.libervia.conf``, the one from ``~/.libervia.conf``
|
||||
will be used because it is parsed after ``/etc``).
|
||||
|
||||
Format
|
||||
======
|
||||
|
||||
``sat.conf`` is using the `INI`_ file format as understood by Python's `SafeConfigParser`_
|
||||
``libervia.conf`` is using the `INI`_ file format as understood by Python's `SafeConfigParser`_
|
||||
(meaning that you can use interpolation).
|
||||
|
||||
The ``DEFAULT`` section is used for global options, this is where you specify where are
|
||||
|
|
@ -35,17 +35,17 @@ sensitive), and some backend plugin can use specific sections too (usually named
|
|||
have the name of a web site used with Libervia web framework.
|
||||
|
||||
|
||||
To recapitulate, you can have the following sections in your ``sat.conf``:
|
||||
To recapitulate, you can have the following sections in your ``libervia.conf``:
|
||||
|
||||
``[DEFAULT]``
|
||||
the main, global section
|
||||
frontend name (in lower case)
|
||||
frontend specific settings. Some examples:
|
||||
|
||||
- ``[cagou]``
|
||||
- ``[jp]``
|
||||
- ``[primitivus]``
|
||||
- ``[libervia]``
|
||||
- ``[desktop]``
|
||||
- ``[cli]``
|
||||
- ``[tui]``
|
||||
- ``[web]``
|
||||
``[plugin <plugin name>]``
|
||||
backend plugin specific settings. Some examples:
|
||||
|
||||
|
|
@ -116,7 +116,7 @@ the comments to get the meaning of each option.
|
|||
; default room to use in the "Join room" menu
|
||||
default_muc = sat@chat.jabberfr.org
|
||||
|
||||
[primitivus]
|
||||
[tui]
|
||||
log_level = debug
|
||||
; how the logs are formatted
|
||||
; note that "%" must be doubled here
|
||||
|
|
@ -124,15 +124,15 @@ the comments to get the meaning of each option.
|
|||
; use bracketed paste mode
|
||||
bracketed_paste = true
|
||||
|
||||
[jp]
|
||||
; how to use xdotool to refresh Firefox when doing "jp blog edit"
|
||||
[cli]
|
||||
; how to use xdotool to refresh Firefox when doing "li blog edit"
|
||||
blog_preview_open_cmd = firefox -new-tab {url}
|
||||
blog_preview_update_cmd = /bin/sh -c "WID=$(xdotool search --name 'Mozilla Firefox' | head -1); xdotool windowactivate $WID; xdotool key F5"
|
||||
; and below the equivalent with Konqueror
|
||||
# blog_preview_open_cmd = konqueror {url}
|
||||
# blog_preview_update_cmd = /bin/sh -c "qdbus $(qdbus org.kde.konqueror\*) /konqueror/MainWindow_1 reload"
|
||||
|
||||
[libervia]
|
||||
[web]
|
||||
; do we want "http", "https" or "both"?
|
||||
connection_type = both
|
||||
port = 8080
|
||||
|
|
|
|||
|
|
@ -26,8 +26,8 @@ You can follow this documentation to learn more on it, or join our official XMPP
|
|||
installation.rst
|
||||
overview.rst
|
||||
configuration.rst
|
||||
/jp/index.rst
|
||||
/primitivus/index.rst
|
||||
/libervia-cli/index.rst
|
||||
/libervia-tui/index.rst
|
||||
/contribuing/index.rst
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ example
|
|||
Create account for the new user Nestor at ``nestor@example.org`` and associate it with the
|
||||
SàT profile ``nestor``::
|
||||
|
||||
$ jp account create nestor@example.org some_password -p nestor
|
||||
$ li account create nestor@example.org some_password -p nestor
|
||||
|
||||
|
||||
modify
|
||||
|
|
@ -38,7 +38,7 @@ given profile.
|
|||
|
||||
Only the XMPP password on the server is changed, not the one registered in the
|
||||
parameter of SàT. You may have to update the parameter of your profile if the new
|
||||
password doesn't correspond to your parameters one (you can do that with jp param set
|
||||
password doesn't correspond to your parameters one (you can do that with li param set
|
||||
or with most SàT frontends in parameters).
|
||||
|
||||
example
|
||||
|
|
@ -46,7 +46,7 @@ example
|
|||
|
||||
Change the XMPP password of the XMPP account of the default profile::
|
||||
|
||||
$ jp account modify new_password
|
||||
$ li account modify new_password
|
||||
|
||||
|
||||
delete
|
||||
|
|
@ -72,4 +72,4 @@ example
|
|||
|
||||
Delete the XMPP account of Pierre, which is not on the local server anymore::
|
||||
|
||||
$ jp account delete -p pierre
|
||||
$ li account delete -p pierre
|
||||
|
|
@ -34,7 +34,7 @@ examples
|
|||
|
||||
Get a list of available commands on your server to launch a command::
|
||||
|
||||
$ jp ad-hoc run
|
||||
$ li ad-hoc run
|
||||
|
||||
If your server supports `XEP-0133`_ and you're an admin on it, you can send announcements
|
||||
to online users. This can be useful to notify an imminent maintenance of the server. Here
|
||||
|
|
@ -42,20 +42,20 @@ we notify online users that the server will be shutdown in 30 min, using a shell
|
|||
substitution capabilities with a pre-registered message in the file
|
||||
``~/announces/maintenance_30.txt``, then we submit it::
|
||||
|
||||
$ jp ad-hoc run "http://jabber.org/protocol/admin#announce" -f subject "Maintenance in 30 min" -f announcement "$(<~/announces/maintenance_30.txt)" -S
|
||||
$ li ad-hoc run "http://jabber.org/protocol/admin#announce" -f subject "Maintenance in 30 min" -f announcement "$(<~/announces/maintenance_30.txt)" -S
|
||||
|
||||
Get your server uptime (if supported by your server)::
|
||||
|
||||
$ jp ad-hoc run uptime
|
||||
$ li ad-hoc run uptime
|
||||
|
||||
Run the commands available at the service with the jid ``someservice.example.org``::
|
||||
|
||||
$ jp ad-hoc run -s someservice.example.org
|
||||
$ li ad-hoc run -s someservice.example.org
|
||||
|
||||
Run you server commands with verbosity so you get the name of the fields that you can fill
|
||||
automatically later::
|
||||
|
||||
$ jp ad-hoc run -v
|
||||
$ li ad-hoc run -v
|
||||
|
||||
.. _XEP-0133: https://xmpp.org/extensions/xep-0133.html
|
||||
|
||||
|
|
@ -69,11 +69,11 @@ examples
|
|||
|
||||
List ad-hoc commands available at your server::
|
||||
|
||||
$ jp ad-hoc list
|
||||
$ li ad-hoc list
|
||||
|
||||
List ad-hoc commands available at a chat service::
|
||||
|
||||
$ jp ad-hoc list -j conference.example.org
|
||||
$ li ad-hoc list -j conference.example.org
|
||||
|
||||
remote
|
||||
======
|
||||
|
|
@ -112,9 +112,9 @@ examples
|
|||
|
||||
Create a remote control for a running VLC instance::
|
||||
|
||||
$ jp ad-hoc remote vlc -l
|
||||
$ li ad-hoc remote vlc -l
|
||||
|
||||
Create a remote control for a running SMPlayer instance, and allowing anybody from your
|
||||
``housemates`` group to use it::
|
||||
|
||||
$ jp ad-hoc remote smplayer -g housemates -l
|
||||
$ li ad-hoc remote smplayer -g housemates -l
|
||||
|
|
@ -17,8 +17,8 @@ read-only access, or copy it if you want to modify the image.
|
|||
|
||||
You may use the ``-s, --show`` argument to display the found avatar. The software used to
|
||||
display the image can be specified in SàT configuration (cf. :ref:`configuration`), in the
|
||||
``[jp]`` section: the ``image_cmd`` setting let you specify the path to the software. If
|
||||
``image_cmd`` is not used, ``jp`` will try some common software, and if none is found, it
|
||||
``[li]`` section: the ``image_cmd`` setting let you specify the path to the software. If
|
||||
``image_cmd`` is not used, ``li`` will try some common software, and if none is found, it
|
||||
will try to open the image in a browser (which may sometimes result in using the default
|
||||
image software of the platform).
|
||||
|
||||
|
|
@ -30,7 +30,7 @@ example
|
|||
|
||||
Get the avatar of ``louise@example.org`` and display it::
|
||||
|
||||
$ jp avatar get --show louise@example.org
|
||||
$ li avatar get --show louise@example.org
|
||||
|
||||
|
||||
set
|
||||
|
|
@ -44,4 +44,4 @@ example
|
|||
|
||||
Set the avatar of the default profile::
|
||||
|
||||
$ jp avatar set ~/photos/some_photo.jpg
|
||||
$ li avatar set ~/photos/some_photo.jpg
|
||||
|
|
@ -21,11 +21,11 @@ examples
|
|||
|
||||
Create a blog post with a body, a subject, 2 tags, and with comments allowed::
|
||||
|
||||
$ echo "This is post body" | jp blog set -T "This is a test message" -t test -t jp -C
|
||||
$ echo "This is post body" | li blog set -T "This is a test message" -t test -t li -C
|
||||
|
||||
Create a blog post with rich content using `markdown` syntax, and no subject::
|
||||
|
||||
$ echo "This is a **rich** body" | jp blog set -S markdown
|
||||
$ echo "This is a **rich** body" | li blog set -S markdown
|
||||
|
||||
get
|
||||
===
|
||||
|
|
@ -37,7 +37,7 @@ output can be customised to only retrieve some keys, or to use a specific templa
|
|||
instance, the following command retrieves only the title and publication date of the
|
||||
personal blog of the profile::
|
||||
|
||||
$ jp blog get -k title -k published
|
||||
$ li blog get -k title -k published
|
||||
|
||||
:ref:`pubsub_common` commands are used to specify the blog location.
|
||||
|
||||
|
|
@ -47,19 +47,19 @@ examples
|
|||
Retrieve personal blog of the profile using `fancy` output with a verbosity of 1 (to show
|
||||
publication date)::
|
||||
|
||||
$ jp blog get -O fancy -v
|
||||
$ li blog get -O fancy -v
|
||||
|
||||
Retrieve *title* and *publication date* of last 3 blog posts from the blog at
|
||||
https://www.goffi.org::
|
||||
|
||||
$ jp blog get -m 3 -u https://www.goffi.org -k title -k published
|
||||
$ li blog get -m 3 -u https://www.goffi.org -k title -k published
|
||||
|
||||
Retrieve last 2 posts of personal blog, and output them in browser using default
|
||||
template::
|
||||
|
||||
$ jp blog get -m 2 -O template --oo browser
|
||||
$ li blog get -m 2 -O template --oo browser
|
||||
|
||||
.. _jp-blog_edit:
|
||||
.. _libervia-cli_blog_edit:
|
||||
|
||||
edit
|
||||
====
|
||||
|
|
@ -82,7 +82,7 @@ case, when you'll save your modification and quit your editor, the blog post wil
|
|||
published but saved locally in a draft. To continue your work later, just start your
|
||||
edition with the ``-D, --current`` option like this::
|
||||
|
||||
$ jp blog edit -D
|
||||
$ li blog edit -D
|
||||
|
||||
Note that item location must be re-specified if it has been used to create the draft, so
|
||||
you'll have to reproduce the arguments to specify service, node or item (or the URL),
|
||||
|
|
@ -100,7 +100,7 @@ configuration <edit_preview_>`_ below to see how to do.
|
|||
|
||||
.. note::
|
||||
|
||||
If --preview doesn't work, use ``jp blog preview`` (see below) to get error messages.
|
||||
If --preview doesn't work, use ``li blog preview`` (see below) to get error messages.
|
||||
On GNU/Linux, Be sure that inotify Python module is installed correctly.
|
||||
|
||||
examples
|
||||
|
|
@ -108,24 +108,24 @@ examples
|
|||
|
||||
Edit a new blog post with comments on your personal blog, using default syntax and preview::
|
||||
|
||||
$ jp blog edit -P --comments
|
||||
$ li blog edit -P --comments
|
||||
|
||||
Modifiy a draft previously saved using the ``"publish": false`` metadata::
|
||||
|
||||
$ jp blog edit -D
|
||||
$ li blog edit -D
|
||||
|
||||
Correct a typo in your last published blog post::
|
||||
|
||||
$ jp blog edit --last-item
|
||||
$ li blog edit --last-item
|
||||
|
||||
Edit the blog item at an HTTPS URL using XHTML syntax::
|
||||
|
||||
$ jp blog edit -u https://www.example.net/some_xmpp_blog_article.html -S xhtml
|
||||
$ li blog edit -u https://www.example.net/some_xmpp_blog_article.html -S xhtml
|
||||
|
||||
Create a new blog post on a XMPP blog node using its HTTPS URL (supposing here that
|
||||
https://example.net is a XMPP blog node)::
|
||||
|
||||
$ jp blog edit -u https://www.example.net
|
||||
$ li blog edit -u https://www.example.net
|
||||
|
||||
.. _edit_metadata:
|
||||
|
||||
|
|
@ -180,7 +180,7 @@ editor
|
|||
|
||||
Local editor used is by default the one set in ``$EDITOR`` environment variable, but you
|
||||
can specify one in ``sat.conf``. To do so, you have to set the name of an editor
|
||||
executable in the ``editor`` option in ``[jp]`` section.
|
||||
executable in the ``editor`` option in ``[li]`` section.
|
||||
|
||||
You can specify the args to use by using ``blog_editor_args`` option. Use
|
||||
``{content_file}`` to get the path of the main content file (the body of the blog post),
|
||||
|
|
@ -188,7 +188,7 @@ and ``{metadata_file}`` to get the path of the json metadata.
|
|||
|
||||
.. sourcecode:: cfg
|
||||
|
||||
[jp]
|
||||
[li]
|
||||
editor = kate
|
||||
blog_editor_args = {content_file} {metadata_file}
|
||||
|
||||
|
|
@ -198,7 +198,7 @@ preview
|
|||
^^^^^^^
|
||||
|
||||
To set the preview, you can use the options ``blog_preview_open_cmd`` and
|
||||
``blog_preview_update_cmd`` in your ``[jp]`` section. the former is the command to use to
|
||||
``blog_preview_update_cmd`` in your ``[li]`` section. the former is the command to use to
|
||||
open your browser when edition starts, and the later is the command to use when a
|
||||
modification is saved. In both cases you may use ``{url}`` to set the location of local HTML file.
|
||||
|
||||
|
|
@ -209,7 +209,7 @@ installed on your system, and enter the following lines in your ``sat.conf``:
|
|||
|
||||
.. sourcecode:: cfg
|
||||
|
||||
[jp]
|
||||
[li]
|
||||
blog_preview_open_cmd = konqueror {url}
|
||||
blog_preview_update_cmd = /bin/sh -c "qdbus $(qdbus org.kde.konqueror\*) /konqueror/MainWindow_1 reload"
|
||||
|
||||
|
|
@ -218,7 +218,7 @@ following lines in your ``sat.conf``:
|
|||
|
||||
.. sourcecode:: cfg
|
||||
|
||||
[jp]
|
||||
[li]
|
||||
blog_preview_open_cmd = firefox -new-tab {url}
|
||||
blog_preview_update_cmd = /bin/sh -c "WID=$(xdotool search --name 'Mozilla Firefox' | head -1); xdotool windowactivate $WID; xdotool key F5"
|
||||
|
||||
|
|
@ -231,13 +231,13 @@ A dictionary with a mapping from syntax name to file extension can be used. This
|
|||
useful to activate the right syntax highlighting in your editor. There is a default
|
||||
mapping which can be overriden.
|
||||
|
||||
The mapping is set in the ``syntax_ext_dict`` option of the ``[jp]`` section of your
|
||||
The mapping is set in the ``syntax_ext_dict`` option of the ``[li]`` section of your
|
||||
``sat.conf`` file. For instance, if your prefer do your ``.markdown`` for temp files
|
||||
instead of the default ``.md``, you can use this:
|
||||
|
||||
.. sourcecode:: cfg
|
||||
|
||||
[jp]
|
||||
[li]
|
||||
syntax_ext_dict = {"markdown": "markdown"}
|
||||
|
||||
the first ``markdown`` is the name of the syntax (could be an other syntax like ``xhtml``),
|
||||
|
|
@ -248,16 +248,16 @@ preview
|
|||
|
||||
This command will show the specified file in browser, and refresh it when changes are
|
||||
detected. Configuration is the same as for `edit preview <edit_preview_>`_. This can be
|
||||
used if you have already started an edition with ``jp blog edit`` but forgot to use the ``-P, --preview`` arguments.
|
||||
used if you have already started an edition with ``li blog edit`` but forgot to use the ``-P, --preview`` arguments.
|
||||
|
||||
example:
|
||||
--------
|
||||
|
||||
Preview the draft at ``~/local/sat/blog/some_name/blog_something.md``::
|
||||
|
||||
$ jp blog preview ~/local/sat/blog/some_name/blog_something.md
|
||||
$ li blog preview ~/local/sat/blog/some_name/blog_something.md
|
||||
|
||||
.. _jp-blog_import:
|
||||
.. _libervia-cli_blog_import:
|
||||
|
||||
import
|
||||
======
|
||||
|
|
@ -284,16 +284,16 @@ examples:
|
|||
|
||||
List available importers::
|
||||
|
||||
$ jp blog import
|
||||
$ li blog import
|
||||
|
||||
Get description of ``dotclear`` importer::
|
||||
|
||||
$ jp blog import dotclear
|
||||
$ li blog import dotclear
|
||||
|
||||
Import a Dotclear blog::
|
||||
|
||||
$ jp blog import dotclear /path/to/dotclear.dump
|
||||
$ li blog import dotclear /path/to/dotclear.dump
|
||||
|
||||
Import a Dotclear blog without uploading images::
|
||||
|
||||
$ jp blog import --no-images-upload dotclear /path/to/dotclear.dump
|
||||
$ li blog import --no-images-upload dotclear /path/to/dotclear.dump
|
||||
|
|
@ -45,11 +45,11 @@ examples
|
|||
|
||||
Retrieve all MUC bookmarks::
|
||||
|
||||
$ jp bookmarks list
|
||||
$ li bookmarks list
|
||||
|
||||
Retrieve all bookmarked URL stored in PubSub::
|
||||
|
||||
$ jp bookmarks list -l pubsub -t url
|
||||
$ li bookmarks list -l pubsub -t url
|
||||
|
||||
|
||||
remove
|
||||
|
|
@ -66,11 +66,11 @@ examples
|
|||
|
||||
Delete the bookmark of a MUC room that you are not following anymore::
|
||||
|
||||
$ jp bookmarks remove some_old_room@conference.example.net
|
||||
$ li bookmarks remove some_old_room@conference.example.net
|
||||
|
||||
Delete the bookmark of a URL without requesting confirmation::
|
||||
|
||||
$ jp bookmarks remove -t url https://unused_url.example.net
|
||||
$ li bookmarks remove -t url https://unused_url.example.net
|
||||
|
||||
|
||||
add
|
||||
|
|
@ -91,8 +91,8 @@ examples
|
|||
|
||||
Add a bookmark to Salut à Toi official chat room::
|
||||
|
||||
$ jp bookmarks add sat@chat.jabberfr.org -a
|
||||
$ li bookmarks add sat@chat.jabberfr.org -a
|
||||
|
||||
Add a link to Salut à Toi official website::
|
||||
|
||||
$ jp bookmarks add -t url https://www.salut-a-toi.org -n "SàT officiel"
|
||||
$ li bookmarks add -t url https://www.salut-a-toi.org -n "SàT officiel"
|
||||
|
|
@ -4,7 +4,7 @@ common arguments
|
|||
|
||||
Some arguments are used in many commands. This page describe them.
|
||||
|
||||
.. _jp-common_profile:
|
||||
.. _libervia-cli_common_profile:
|
||||
|
||||
profile
|
||||
=======
|
||||
|
|
@ -12,7 +12,7 @@ profile
|
|||
profile arguments are really common, they allow you to select your profile.
|
||||
If you don't select any, the default profile is used, which is the first
|
||||
profile created or the one you have explicitly set. You can check which profile
|
||||
is used by default with ``jp profile default``.
|
||||
is used by default with ``li profile default``.
|
||||
|
||||
The common arguments for profile are:
|
||||
|
||||
|
|
@ -61,7 +61,7 @@ The common arguments for pubsub are:
|
|||
|
||||
e.g.::
|
||||
|
||||
$ jp blog get -u https://www.goffi.org
|
||||
$ li blog get -u https://www.goffi.org
|
||||
|
||||
``-s SERVICE, --service``
|
||||
used to specifiy the JID of the pubsub service
|
||||
|
|
@ -78,7 +78,7 @@ The common arguments for pubsub are:
|
|||
when an item id is needed, you can use this option to retrieve the last published item.
|
||||
e.g.::
|
||||
|
||||
$ jp blog edit --last-item
|
||||
$ li blog edit --last-item
|
||||
|
||||
``-M, --max-items``
|
||||
use to specify a maxium number of items to retrieve, when it makes sense.
|
||||
|
|
@ -174,14 +174,14 @@ until publication.
|
|||
|
||||
e.g.::
|
||||
|
||||
$ jp blog edit -D
|
||||
$ li blog edit -D
|
||||
|
||||
``-F DRAFT_PATH, --draft-path DRAFT_PATH``
|
||||
Used when you have started to edit something and want to continue your work from this
|
||||
file. In other words, it's similar to ``-D, --current`` except that you specify the file
|
||||
to use instead of using the last available draft.
|
||||
|
||||
.. _jp-output:
|
||||
.. _libervia-cli_output:
|
||||
|
||||
output
|
||||
======
|
||||
|
|
@ -192,11 +192,11 @@ manipulated by a script, or if you want only a specific element of the result.
|
|||
|
||||
``-O {…}, --output {…}``
|
||||
specifiy the output to use. Available options depends of the command you are using,
|
||||
check ``jp [your command] --help`` to know them.
|
||||
check ``li [your command] --help`` to know them.
|
||||
|
||||
e.g.::
|
||||
|
||||
$ jp blog get -O json
|
||||
$ li blog get -O json
|
||||
|
||||
``--output-option OUTPUT_OPTS, --oo OUTPUT_OPTS``
|
||||
depending of the output selected, you may have options to customise the output.
|
||||
|
|
@ -205,10 +205,10 @@ manipulated by a script, or if you want only a specific element of the result.
|
|||
|
||||
e.g.::
|
||||
|
||||
$ jp blog
|
||||
$ li blog
|
||||
|
||||
Some options expect parameters, in this case they can be specified using ``=``.
|
||||
|
||||
e.g. specifiying a template to use::
|
||||
|
||||
$ jp blog get -O template --oo browser --oo template=/tmp/my_template.html
|
||||
$ li blog get -O template --oo browser --oo template=/tmp/my_template.html
|
||||
|
|
@ -4,7 +4,7 @@ debug: tools to help debugging/monitoring Salut à Toi
|
|||
|
||||
``debug`` groups commands to monitor or manipulate SàT and XMPP stream.
|
||||
|
||||
.. _jp-debug_bridge_method:
|
||||
.. _libervia-cli_debug_bridge_method:
|
||||
|
||||
bridge method
|
||||
=============
|
||||
|
|
@ -31,15 +31,15 @@ API documentation`_ for details), without the profile as it is automatically set
|
|||
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::
|
||||
|
||||
$ jp debug bridge method messageSend '"louise@example.org", {"": "test message"}, {}, "auto", {}'
|
||||
$ li debug bridge method messageSend '"louise@example.org", {"": "test message"}, {}, "auto", {}'
|
||||
|
||||
.. note::
|
||||
|
||||
This is for debugging only, if you want to send message with jp, use :ref:`jp-message_send`.
|
||||
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::
|
||||
|
||||
$ jp debug bridge method getVersion
|
||||
$ li debug bridge method getVersion
|
||||
|
||||
|
||||
bridge signal
|
||||
|
|
@ -47,7 +47,7 @@ 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 jp-debug_bridge_method_).
|
||||
arguments to use (using Python eval in the same way as for libervia-cli_debug_bridge_method_).
|
||||
|
||||
example
|
||||
-------
|
||||
|
|
@ -56,7 +56,7 @@ Send a note with ``info`` level and hand written XMLUI. Here me use a shell vari
|
|||
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'; jp 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
|
||||
$ 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
|
||||
|
|
@ -76,7 +76,7 @@ example
|
|||
|
||||
Monitor raw XML stream::
|
||||
|
||||
$ jp debug monitor -v
|
||||
$ li debug monitor -v
|
||||
|
||||
theme
|
||||
=====
|
||||
|
|
@ -90,4 +90,4 @@ example
|
|||
|
||||
Show colours with the set background::
|
||||
|
||||
$ jp debug theme
|
||||
$ li debug theme
|
||||
|
|
@ -22,7 +22,7 @@ example
|
|||
|
||||
Show available e2e algorithms::
|
||||
|
||||
$ jp encryption algorithms
|
||||
$ li encryption algorithms
|
||||
|
||||
get
|
||||
===
|
||||
|
|
@ -31,7 +31,7 @@ Display which encryption session is currently active with the given entity.
|
|||
|
||||
The only required argument is the JID of the entity.
|
||||
|
||||
If not e2e encryption session exist, a message will be displayed and jp will exit with a
|
||||
If not e2e encryption session exist, a message will be displayed and li will exit with a
|
||||
non zero code: this means that the messages are in clear in the XMPP servers, but normal
|
||||
XMPP encryption is not affected (message should still be encrypted between client and
|
||||
server and between servers).
|
||||
|
|
@ -46,7 +46,7 @@ example
|
|||
|
||||
Check if session is encrypted with Louise::
|
||||
|
||||
$ jp encryption get louise@example.org
|
||||
$ li encryption get louise@example.org
|
||||
|
||||
start
|
||||
=====
|
||||
|
|
@ -74,11 +74,11 @@ examples
|
|||
|
||||
Start e2e encryption with Pierre, using the algorithm selected by SàT::
|
||||
|
||||
$ jp encryption start louise@example.net
|
||||
$ li encryption start louise@example.net
|
||||
|
||||
Start an OMEMO session with Louise::
|
||||
|
||||
$ jp encryption start -n omemo louise@example.org
|
||||
$ li encryption start -n omemo louise@example.org
|
||||
|
||||
stop
|
||||
====
|
||||
|
|
@ -95,7 +95,7 @@ example
|
|||
|
||||
Stop the e2e encryption session with Pierre::
|
||||
|
||||
$ jp encryption stop pierre@example.net
|
||||
$ li encryption stop pierre@example.net
|
||||
|
||||
trust ui
|
||||
========
|
||||
|
|
@ -123,4 +123,4 @@ example
|
|||
|
||||
Manage ``OMEMO`` trust with Louise devices::
|
||||
|
||||
$ jp encryption trust ui -n omemo louise@example.org
|
||||
$ li encryption trust ui -n omemo louise@example.org
|
||||
|
|
@ -15,9 +15,9 @@ example
|
|||
|
||||
Retrieve events of profile::
|
||||
|
||||
$ jp event list
|
||||
$ li event list
|
||||
|
||||
.. _jp-event_get:
|
||||
.. _libervia-cli_event_get:
|
||||
|
||||
get
|
||||
===
|
||||
|
|
@ -29,9 +29,9 @@ example
|
|||
|
||||
Retrieve an event metadata::
|
||||
|
||||
$ jp event get -n org.salut-a-toi.event:0__BsyCsXpcrRh44CQhSVTUMi -i 'org.salut-a-toi.event:0'
|
||||
$ li event get -n org.salut-a-toi.event:0__BsyCsXpcrRh44CQhSVTUMi -i 'org.salut-a-toi.event:0'
|
||||
|
||||
.. _jp-event_create:
|
||||
.. _libervia-cli_event_create:
|
||||
|
||||
create
|
||||
======
|
||||
|
|
@ -58,13 +58,13 @@ example
|
|||
|
||||
Create an event about to celebrate New Year::
|
||||
|
||||
$ jp event create -d 2019-12-31 -f name "New Year's Eve" -f description "Party to celebrate new year" -f register true -f image https://example.net/some_image.jpg
|
||||
$ li event create -d 2019-12-31 -f name "New Year's Eve" -f description "Party to celebrate new year" -f register true -f image https://example.net/some_image.jpg
|
||||
|
||||
|
||||
modify
|
||||
======
|
||||
|
||||
This command in the same way as jp-event_create_ but modify an existing event. You need to
|
||||
This command in the same way as libervia-cli_event_create_ but modify an existing event. You need to
|
||||
specify the node of the event to modify using ``-n NODE, --node NODE``.
|
||||
|
||||
example
|
||||
|
|
@ -72,10 +72,10 @@ example
|
|||
|
||||
Add a background image to the New Year event created above::
|
||||
|
||||
$ jp event modify -n org.salut-a-toi.event:0__d8QQLJvbcpDXxK66UBXKfT -f background-image https://example.net/some_background_image.jpg
|
||||
$ li event modify -n org.salut-a-toi.event:0__d8QQLJvbcpDXxK66UBXKfT -f background-image https://example.net/some_background_image.jpg
|
||||
|
||||
|
||||
invitee
|
||||
=======
|
||||
|
||||
Subcommands to handle guests. Please check :ref:`jp-event_invitee`.
|
||||
Subcommands to handle guests. Please check :ref:`libervia-cli_event_invitee`.
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
.. _jp-event_invitee:
|
||||
.. _libervia-cli_event_invitee:
|
||||
|
||||
========================================
|
||||
event/invitee: event invitees management
|
||||
|
|
@ -6,13 +6,13 @@ event/invitee: event invitees management
|
|||
|
||||
``invitee`` groups commands to invite somebody to an event, get or set data about an invitee, and list all invitees. You can send an invitation by e-mail to people without XMPP account.
|
||||
|
||||
.. _jp-event_invitee_get:
|
||||
.. _libervia-cli_event_invitee_get:
|
||||
|
||||
get
|
||||
===
|
||||
|
||||
Retrieve the RSVP status of one guest. Note that you must the invitees node and not the
|
||||
event node. To retrieve invitees node, use :ref:`jp-event_get` with the event node.
|
||||
event node. To retrieve invitees node, use :ref:`libervia-cli_event_get` with the event node.
|
||||
|
||||
You may specify the guest bare jid using ``-j JID, --jid JID`` (by default your own bare
|
||||
jid will be used).
|
||||
|
|
@ -24,15 +24,15 @@ example
|
|||
|
||||
Get RSVP of Louise::
|
||||
|
||||
$ jp event invitee get -u "xmpp:pierre@example.net?;node=generic%2F876a2b99-1c90-41fa-b823-c4a467140770" -j louise@example.org
|
||||
$ li event invitee get -u "xmpp:pierre@example.net?;node=generic%2F876a2b99-1c90-41fa-b823-c4a467140770" -j louise@example.org
|
||||
|
||||
|
||||
.. _jp-event_invitee_set:
|
||||
.. _libervia-cli_event_invitee_set:
|
||||
|
||||
set
|
||||
===
|
||||
|
||||
Set your own RSVP data. Note that as for jp-event_invitee_get_ you must use
|
||||
Set your own RSVP data. Note that as for libervia-cli_event_invitee_get_ you must use
|
||||
invitees node and not the event node.
|
||||
|
||||
Use ``-f KEY VALUE, --field KEY VALUE`` to specify the data to set. ``KEY`` can be one of
|
||||
|
|
@ -44,13 +44,13 @@ example
|
|||
|
||||
Indicate that you'll come to an event with 3 guests::
|
||||
|
||||
$ jp event invitee set -u "xmpp:pierre@example.net?;node=generic%2F876a2b99-1c90-41fa-b823-c4a467140770" -f attend yes -f guests 3
|
||||
$ li event invitee set -u "xmpp:pierre@example.net?;node=generic%2F876a2b99-1c90-41fa-b823-c4a467140770" -f attend yes -f guests 3
|
||||
|
||||
list
|
||||
====
|
||||
|
||||
Get and format the RSVP of your invitees. Note that as for jp-event_invitee_get_ and
|
||||
jp-event_invitee_set_ you must use invitees node and not the event node.
|
||||
Get and format the RSVP of your invitees. Note that as for libervia-cli_event_invitee_get_ and
|
||||
libervia-cli_event_invitee_set_ you must use invitees node and not the event node.
|
||||
|
||||
By default, only people who have answered are shown. You may use ``-m, --missing`` to show
|
||||
other people which were invited, but have not answered yet. When using this option, you
|
||||
|
|
@ -63,7 +63,7 @@ example
|
|||
|
||||
Get the full list of invitees (including those who didn't answered yet) with the RSVP formatted::
|
||||
|
||||
$ jp event invitee list -u "xmpp:pierre@example.net?;node=generic%2F876a2b99-1c90-41fa-b823-c4a467140770" -m
|
||||
$ li event invitee list -u "xmpp:pierre@example.net?;node=generic%2F876a2b99-1c90-41fa-b823-c4a467140770" -m
|
||||
|
||||
invite
|
||||
------
|
||||
|
|
@ -72,7 +72,7 @@ Invite somebody to an event. The invitation is done by e-mail, a guest account w
|
|||
created. Contrary to other ``invitee`` commands, in this one you'll use the event node
|
||||
directly.
|
||||
|
||||
This command is really similar to :ref:`jp-invitation_create`
|
||||
This command is really similar to :ref:`libervia-cli_invitation_create`
|
||||
|
||||
E-mail address is specified using ``-e EMAIL, --email EMAIL`` and you'll need to give an
|
||||
URL template (using ``-U URL_TEMPLATE, --url-template URL_TEMPLATE``)leading to your
|
||||
|
|
@ -91,4 +91,4 @@ example
|
|||
Pierre is inviting Louise (whose e-mail address is ``louise_email@example.net``) to an
|
||||
event he's organising::
|
||||
|
||||
$ jp event invitee invite -e louise_email@example.et -N "Louise" -H "Pierre" -l fr -U "https://www.example.org/g/{uuid}" -u "xmpp:pierre@example.org?;node=generic%2F61400ea7-a2a2-4ce0-9b68-3735b602f671"
|
||||
$ li event invitee invite -e louise_email@example.et -N "Louise" -H "Pierre" -l fr -U "https://www.example.org/g/{uuid}" -u "xmpp:pierre@example.org?;node=generic%2F61400ea7-a2a2-4ce0-9b68-3735b602f671"
|
||||
|
|
@ -40,14 +40,14 @@ examples
|
|||
|
||||
Send a file to Louise, with a progress bar::
|
||||
|
||||
$ jp file send -P some_file.ext louise@example.org
|
||||
$ li file send -P some_file.ext louise@example.org
|
||||
|
||||
Send a picture to a file sharing component, putting it in the ``holidays`` namespace, in
|
||||
the ``/some/path`` path::
|
||||
|
||||
$ jp file send -P -N holidays -d /some/path some_photo.jpg files.example.org
|
||||
$ li file send -P -N holidays -d /some/path some_photo.jpg files.example.org
|
||||
|
||||
.. _jp-file_request:
|
||||
.. _libervia-cli_file_request:
|
||||
|
||||
request
|
||||
=======
|
||||
|
|
@ -76,12 +76,12 @@ examples
|
|||
Request a file names ``some_file.jpg`` in path ``/photos/demo_album`` at service
|
||||
``files.example.org``, with a progress bar::
|
||||
|
||||
$ jp file request -P -d photos/demo_album -n some_file.jpg files.example.org
|
||||
$ li file request -P -d photos/demo_album -n some_file.jpg files.example.org
|
||||
|
||||
Request file with given ``sha-256`` hash (which is default hash algorithm, so we don't
|
||||
specify it), and save it to file ``dest_file.txt``::
|
||||
|
||||
$ jp file request -H f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2 -D dest_file.txt files.example.org
|
||||
$ li file request -H f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93b7605022da52e6ccc26fd2 -D dest_file.txt files.example.org
|
||||
|
||||
receive
|
||||
=======
|
||||
|
|
@ -111,12 +111,12 @@ examples
|
|||
|
||||
Accept and receive the next file, save it to local directory and show a progress bar::
|
||||
|
||||
$ jp file receive --progress
|
||||
$ li file receive --progress
|
||||
|
||||
Several files are expected from Louise, accept them and store them do
|
||||
``~/Downloads/Louise``::
|
||||
|
||||
$ jp file receive --multiple --path ~/Downloads/Louise louise@example.org
|
||||
$ li file receive --multiple --path ~/Downloads/Louise louise@example.org
|
||||
|
||||
get
|
||||
===
|
||||
|
|
@ -134,7 +134,7 @@ Download an encrypted file with a progress bar, and save it to current working d
|
|||
with the same name as in the URL (``some_image.jpg``). The URL fragment part (after ``#``)
|
||||
is used for decryption, so be sure to not leak the URL when you manipulate one::
|
||||
|
||||
$ jp file get -P "aesgcm://upload.example.org/wvgSUlURU_UPspAv/some_image.jpg#7d8509c43479591f8d8492f84369875ca983db58f43225c40229eb06d05b2037c841b2346c9642a88ba4a91aa96a0e8f"
|
||||
$ li file get -P "aesgcm://upload.example.org/wvgSUlURU_UPspAv/some_image.jpg#7d8509c43479591f8d8492f84369875ca983db58f43225c40229eb06d05b2037c841b2346c9642a88ba4a91aa96a0e8f"
|
||||
|
||||
upload
|
||||
======
|
||||
|
|
@ -161,13 +161,13 @@ example
|
|||
|
||||
Upload a document to a server::
|
||||
|
||||
$ jp file upload -P ~/Documents/something_interesting.odt
|
||||
$ li file upload -P ~/Documents/something_interesting.odt
|
||||
|
||||
Encrypt and upload a document to server::
|
||||
|
||||
$ jp file upload -P -e ~/Documents/something_secret.odt
|
||||
$ li file upload -P -e ~/Documents/something_secret.odt
|
||||
|
||||
share
|
||||
=====
|
||||
|
||||
Subcommands for advanced file sharing. Please check :ref:`jp-file_share`.
|
||||
Subcommands for advanced file sharing. Please check :ref:`libervia-cli_file_share`.
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
.. _jp-file_share:
|
||||
.. _libervia-cli_file_share:
|
||||
|
||||
==================================
|
||||
file/share: advanced files sharing
|
||||
|
|
@ -7,7 +7,7 @@ file/share: advanced files sharing
|
|||
``share`` groups commands for listing file available on a device/service, sharing a file
|
||||
or directory, and inviting people to retrieve files.
|
||||
|
||||
.. _jp-file_share_list:
|
||||
.. _libervia-cli_file_share_list:
|
||||
|
||||
list
|
||||
====
|
||||
|
|
@ -30,21 +30,21 @@ examples
|
|||
|
||||
List files shared from a device (note that we use a full jid here)::
|
||||
|
||||
$ jp file share list louise@example.org/some_resource
|
||||
$ li file share list louise@example.org/some_resource
|
||||
|
||||
List files available on a sharing service at the path ``/photos``::
|
||||
|
||||
$ jp file share list -d photos files.example.org
|
||||
$ li file share list -d photos files.example.org
|
||||
|
||||
Louise wants to list the file shared by Pierre::
|
||||
|
||||
$ jp file share list pierre@files.example.org
|
||||
$ li file share list pierre@files.example.org
|
||||
|
||||
path
|
||||
====
|
||||
|
||||
Share a local file or directory with a list of entities, or publicly. The files can then
|
||||
be listed or requested using jp-file_share_list_ or :ref:`jp-file_request`.
|
||||
be listed or requested using libervia-cli_file_share_list_ or :ref:`libervia-cli_file_request`.
|
||||
|
||||
You specify the file or directory the positional ``path`` argument. By default the name of
|
||||
the file/directory is used, but you can give a different one using ``-n NAME, --name
|
||||
|
|
@ -61,13 +61,13 @@ examples
|
|||
|
||||
Share the file ``interesting_doc.odt`` with Pierre and Louise::
|
||||
|
||||
$ jp file share path -j pierre@example.net -j louise@example.org interesting_doc.odt
|
||||
$ li file share path -j pierre@example.net -j louise@example.org interesting_doc.odt
|
||||
|
||||
Imagine that you have built a weather station and want to make its data public. You can
|
||||
share the directory ``~/weather_station_data`` with the world, using the name ``public
|
||||
weather data``::
|
||||
|
||||
$ jp file share path --public --name "public weather data" ~/weather_station_data
|
||||
$ li file share path --public --name "public weather data" ~/weather_station_data
|
||||
|
||||
invite
|
||||
======
|
||||
|
|
@ -94,15 +94,15 @@ example
|
|||
|
||||
Pierre wants to invite Louise to view his ``summer holidays`` photo album::
|
||||
|
||||
$ jp file share invite -P "photos/summer holidays" -t photos pierre@files.example.net
|
||||
$ li file share invite -P "photos/summer holidays" -t photos pierre@files.example.net
|
||||
louise@example.org
|
||||
|
||||
affiliations
|
||||
============
|
||||
|
||||
subcommands for file sharing affiliations management. please check :ref:`jp-file_share_affiliations`.
|
||||
subcommands for file sharing affiliations management. please check :ref:`libervia-cli_file_share_affiliations`.
|
||||
|
||||
configuration
|
||||
=============
|
||||
|
||||
subcommands for retrieving/modifying file sharing node configuration. please check :ref:`jp-file_share_configuration`.
|
||||
subcommands for retrieving/modifying file sharing node configuration. please check :ref:`libervia-cli_file_share_configuration`.
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
.. _jp-file_share_affiliations:
|
||||
.. _libervia-cli_file_share_affiliations:
|
||||
|
||||
=============================================================
|
||||
file/share/affiliations: file sharing affiliations management
|
||||
|
|
@ -36,7 +36,7 @@ example
|
|||
|
||||
Get affiliations of a file sharing node::
|
||||
|
||||
$ jp file share affiliations get -P "/some/path" louise@files.example.org
|
||||
$ li file share affiliations get -P "/some/path" louise@files.example.org
|
||||
|
||||
set
|
||||
===
|
||||
|
|
@ -48,9 +48,9 @@ examples
|
|||
|
||||
Allow read access to a photo album to Louise::
|
||||
|
||||
$ jp file share affiliations set -c files.example.net -P "/albums/holidays" -a louise@tazar2.int member
|
||||
$ li file share affiliations set -c files.example.net -P "/albums/holidays" -a louise@tazar2.int member
|
||||
|
||||
Remove access to a directory from an old address of Pierre, and give it to the new one::
|
||||
|
||||
$ jp file share affiliations set -c files.example.net -N "some_namespace" -P
|
||||
$ li file share affiliations set -c files.example.net -N "some_namespace" -P
|
||||
"/interesting/directory" -a pierre@example.com none -a pierre@example.org member
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
.. _jp-file_share_configuration:
|
||||
.. _libervia-cli_file_share_configuration:
|
||||
|
||||
=========================================================
|
||||
file/share/configuration: file sharing node configuration
|
||||
|
|
@ -22,7 +22,7 @@ example
|
|||
|
||||
Get configuration of a file sharing node::
|
||||
|
||||
$ jp file share configuration get -P "/some/path" louise@files.example.org
|
||||
$ li file share configuration get -P "/some/path" louise@files.example.org
|
||||
|
||||
set
|
||||
===
|
||||
|
|
@ -34,5 +34,5 @@ example
|
|||
|
||||
Make a repository public::
|
||||
|
||||
$ jp file share configuration set -c files.example.net -P "/public_files" -f
|
||||
$ li file share configuration set -c files.example.net -P "/public_files" -f
|
||||
access_model open
|
||||
|
|
@ -6,7 +6,7 @@ Forums are internally a way to organise blog nodes open to many publishers. The
|
|||
commands let you manage the structure of topics. You may have several different structures
|
||||
in one PubSub forums node, this can be useful if you have multi-lingual forums.
|
||||
|
||||
.. _jp-forums_get:
|
||||
.. _libervia-cli_forums_get:
|
||||
|
||||
get
|
||||
===
|
||||
|
|
@ -22,18 +22,18 @@ examples
|
|||
|
||||
Get structure of default forum with details::
|
||||
|
||||
$ jp forums get -v
|
||||
$ li forums get -v
|
||||
|
||||
Get structure of French forums in JSON::
|
||||
|
||||
$ jp forums get -k fr -O json
|
||||
$ li forums get -k fr -O json
|
||||
|
||||
|
||||
edit
|
||||
====
|
||||
|
||||
Edit the structure of XMPP forums. As for jp-forums_get_ you may specify the key beside
|
||||
the classic PubSub node arguments. The edition works the same as for :ref:`jp-blog_edit`.
|
||||
Edit the structure of XMPP forums. As for libervia-cli_forums_get_ you may specify the key beside
|
||||
the classic PubSub node arguments. The edition works the same as for :ref:`libervia-cli_blog_edit`.
|
||||
|
||||
To edit the structure you'll get a JSON file which is a list of object where the topic
|
||||
metadata are set. You can use the following metadata:
|
||||
|
|
@ -99,4 +99,4 @@ example
|
|||
|
||||
Edit structure of forums on a PubSub service::
|
||||
|
||||
$ jp forums edit -s pubsub.example.org
|
||||
$ li forums edit -s pubsub.example.org
|
||||
|
|
@ -20,7 +20,7 @@ example
|
|||
|
||||
Get identity information about an entity::
|
||||
|
||||
$ jp identity get somebody@example.org
|
||||
$ li identity get somebody@example.org
|
||||
|
||||
set
|
||||
===
|
||||
|
|
@ -33,4 +33,4 @@ example
|
|||
|
||||
Set 2 nicknames for default profile::
|
||||
|
||||
$ jp identity set -n toto -n titi
|
||||
$ li identity set -n toto -n titi
|
||||
|
|
@ -1,15 +1,20 @@
|
|||
.. _jp-documentation:
|
||||
.. _libervia-cli_documentation:
|
||||
|
||||
==
|
||||
jp
|
||||
==
|
||||
============
|
||||
Libervia CLI
|
||||
============
|
||||
|
||||
``jp`` is the CLI (Command Line Interface) frontend of Salut à Toi
|
||||
Libervia CLI is the Command Line Interface of Libervia
|
||||
|
||||
``libervia-cli`` is the command to launch it.
|
||||
|
||||
``li`` is short alias for ``libervia-cli``, it is the command used through this
|
||||
documentation.
|
||||
|
||||
Overview
|
||||
========
|
||||
|
||||
``jp`` is a powerful tool to work with Salut à Toi/XMPP.
|
||||
``li`` is a powerful tool to work with Salut à Toi/XMPP.
|
||||
With it you can send chat messages, share files, retrieve avatars, write blog entries, etc.
|
||||
|
||||
Usage
|
||||
|
|
@ -17,13 +22,13 @@ Usage
|
|||
|
||||
To get help on commands or their options, use::
|
||||
|
||||
$ jp --help
|
||||
$ li --help
|
||||
|
||||
which can be used on any command, so if you need help on ``message send`` command, just do::
|
||||
|
||||
$ jp message send --help
|
||||
$ li message send --help
|
||||
|
||||
With jp, you always enter commands first, then options and arguments.
|
||||
With li, you always enter commands first, then options and arguments.
|
||||
|
||||
There are several levels of commands: first one is the main category (``message``,
|
||||
``blog``, ``avatar``, etc.), then there are often subcommands (e.g. ``message send``).
|
||||
|
|
@ -31,8 +36,8 @@ There are several levels of commands: first one is the main category (``message`
|
|||
After the commands come the options. For instance if you want to send a message, you can
|
||||
get the available options with ``--help`` as explained above::
|
||||
|
||||
$ jp message send --help
|
||||
usage: jp message send [-h] [-p PROFILE] [--pwd PASSWORD] [-c] [-l LANG] [-s]
|
||||
$ li message send --help
|
||||
usage: li message send [-h] [-p PROFILE] [--pwd PASSWORD] [-c] [-l LANG] [-s]
|
||||
[-n] [-S SUBJECT] [-L SUBJECT_LANG]
|
||||
[-t {chat,error,groupchat,headline,normal,auto}]
|
||||
[-e ALGORITHM] [--encrypt-noreplace] [-x | -r]
|
||||
|
|
@ -67,7 +72,7 @@ get the available options with ``--help`` as explained above::
|
|||
If you want to send a message to, say, ``pierre@example.net``, and encrypt it with OMEMO,
|
||||
just do the following::
|
||||
|
||||
echo "hi, I'm writing with jp" | jp message send -e omemo pierre@example.net
|
||||
echo "hi, I'm writing with li" | li message send -e omemo pierre@example.net
|
||||
|
||||
(note that with OMEMO, you need to have previously validated fingerprint of your contact
|
||||
for this to work).
|
||||
|
|
@ -75,7 +80,7 @@ for this to work).
|
|||
The different commands are explained in dedicated sections.
|
||||
|
||||
.. toctree::
|
||||
:caption: jp commands:
|
||||
:caption: li commands:
|
||||
:glob:
|
||||
:maxdepth: 2
|
||||
|
||||
|
|
@ -25,7 +25,7 @@ example
|
|||
|
||||
Request infos and items from a server::
|
||||
|
||||
$ jp info disco example.org
|
||||
$ li info disco example.org
|
||||
|
||||
version
|
||||
=======
|
||||
|
|
@ -41,7 +41,7 @@ example
|
|||
|
||||
Check version of a server::
|
||||
|
||||
$ jp info version example.org
|
||||
$ li info version example.org
|
||||
|
||||
session
|
||||
-------
|
||||
|
|
@ -55,7 +55,7 @@ example
|
|||
|
||||
Get session informations::
|
||||
|
||||
$ jp info session
|
||||
$ li info session
|
||||
|
||||
devices
|
||||
-------
|
||||
|
|
@ -70,8 +70,8 @@ example
|
|||
|
||||
List known devices of Louise::
|
||||
|
||||
$ jp info devices louise@example.org
|
||||
$ li info devices louise@example.org
|
||||
|
||||
Check if we have other devices connected::
|
||||
|
||||
$ jp info devices
|
||||
$ li info devices
|
||||
|
|
@ -11,7 +11,7 @@ csv
|
|||
|
||||
CSV (for Comma-Separated Values) is a common format for tabular data. It is widely used in
|
||||
spreadsheet software (at least at en export format). With ``csv`` command, you can use
|
||||
columns a CSV file as arguments to jp commands.
|
||||
columns a CSV file as arguments to li commands.
|
||||
|
||||
To set the command, you'll write in sequence what to do with each column of your data.
|
||||
For each column you can:
|
||||
|
|
@ -22,7 +22,7 @@ For each column you can:
|
|||
the ones with two ``-``)
|
||||
- specify a positional argument using ``-p ARGUMENTS, --positional ARGUMENTS``
|
||||
- indicate to use the column data with ``stdin`` using ``-i, --stdin``
|
||||
- ignore the column if it's not used in the jp command, using ``-x, --ignore``
|
||||
- ignore the column if it's not used in the li command, using ``-x, --ignore``
|
||||
|
||||
After each column specification, you may use a filter to manage the value. So far the
|
||||
following filters are available:
|
||||
|
|
@ -30,7 +30,7 @@ following filters are available:
|
|||
``-S, --split``
|
||||
This will split the value (on any whitespace character, discarding empty values) and
|
||||
repeat the option which each item. This is useful when you are using an option which can
|
||||
be repeated (like ``-t TAG, --tag TAG`` with ``jp blog set``).
|
||||
be repeated (like ``-t TAG, --tag TAG`` with ``li blog set``).
|
||||
|
||||
``-E ARGUMENTS, --empty ARGUMENTS``
|
||||
Indicate what to do if the column value is empty (by default en empty string is used).
|
||||
|
|
@ -57,7 +57,7 @@ By default stdout and stderr of each launched command is ignored, but you can lo
|
|||
files using respectively ``--log LOG`` and ``--log-err LOG_ERR`` where ``LOG`` and
|
||||
``LOG_ERR`` are paths to a log file to create.
|
||||
|
||||
Once all the sequence and options are set, you write the jp command that you want to use,
|
||||
Once all the sequence and options are set, you write the li command that you want to use,
|
||||
with all the needed static option (i.e. options which must be used each time).
|
||||
|
||||
|
||||
|
|
@ -69,18 +69,18 @@ Louise as a spreadsheet with a table like this:
|
|||
============================ ============ ============= ===============
|
||||
title body internal data tags
|
||||
============================ ============ ============= ===============
|
||||
Some title a body ABC jp demo
|
||||
Something else another body XYZ jp demo
|
||||
Third one third body VWZ special_tag jp
|
||||
This one doesn't have a body 123 jp demo numbers
|
||||
last one last body 456 jp demo numbers
|
||||
Some title a body ABC li demo
|
||||
Something else another body XYZ li demo
|
||||
Third one third body VWZ special_tag li
|
||||
This one doesn't have a body 123 li demo numbers
|
||||
last one last body 456 li demo numbers
|
||||
============================ ============ ============= ===============
|
||||
|
||||
She wants to use it as input data to create blog posts.
|
||||
|
||||
She first saves the file using CSV format, let's say to ``~/blog_input.csv``.
|
||||
|
||||
Then she checks ``jp blog set --help`` to get name of options to use. She'll need to use
|
||||
Then she checks ``li blog set --help`` to get name of options to use. She'll need to use
|
||||
``--title`` for title, ``stdin`` for the body and ``-t`` for tags. Louise wants to
|
||||
activate comments, so she also wants to use ``-C`` for all posts, and a tag to says it's
|
||||
coming from the spreadsheet (using ``-t spreadsheet``) .
|
||||
|
|
@ -94,9 +94,9 @@ There is one row without body, Louise want to skip any row without body so she'l
|
|||
Reading column by column, the sequence is like this:
|
||||
|
||||
``-l title``
|
||||
a title which goes to the ``--title`` long option of ``jp blog``
|
||||
a title which goes to the ``--title`` long option of ``li blog``
|
||||
``-i -E skip``
|
||||
a body which goes to the stdin of ``jp blog``. If the body is empty, the ``-E skip``
|
||||
a body which goes to the stdin of ``li blog``. If the body is empty, the ``-E skip``
|
||||
filter tells to skip the whole row.
|
||||
``-x``
|
||||
the ``internal data`` column is not used, so it is ignored
|
||||
|
|
@ -107,13 +107,13 @@ Reading column by column, the sequence is like this:
|
|||
First she'll use the ``-D, --debug`` to check that the commands which will be executed are
|
||||
the expected one::
|
||||
|
||||
$ jp input csv -D -r 1 -l title -i -E skip -x -s t -S blog set -C -t spreadsheet < ~/blog_input.csv
|
||||
$ li input csv -D -r 1 -l title -i -E skip -x -s t -S blog set -C -t spreadsheet < ~/blog_input.csv
|
||||
|
||||
Everything seems fine, so she'll actually launch the command by running the same command
|
||||
line but without the ``-D`` option::
|
||||
|
||||
$ jp input csv -r 1 -l title -i -E skip -x -s t -S blog set -C -t spreadsheet < ~/blog_input.csv
|
||||
$ li input csv -r 1 -l title -i -E skip -x -s t -S blog set -C -t spreadsheet < ~/blog_input.csv
|
||||
|
||||
She could also have used ``--log`` and ``--log-err`` to check the logs of each command::
|
||||
|
||||
$ jp input csv -r 1 -l title -i -E skip -x -s t -S --log /tmp/jp_blog_stdout.log --log-err /tmp/jp_blog_stderr.log blog set -C -t spreadsheet < ~/blog_input.csv
|
||||
$ li input csv -r 1 -l title -i -E skip -x -s t -S --log /tmp/jp_blog_stdout.log --log-err /tmp/jp_blog_stderr.log blog set -C -t spreadsheet < ~/blog_input.csv
|
||||
|
|
@ -6,7 +6,7 @@ Invitations allows you to invite people without XMPP account, so they can partic
|
|||
to a discussion by using a specially generated link. This is a Salut à Toi specific
|
||||
feature and those commands are rather low lever.
|
||||
|
||||
.. _jp-invitation_create:
|
||||
.. _libervia-cli_invitation_create:
|
||||
|
||||
create
|
||||
======
|
||||
|
|
@ -45,7 +45,7 @@ Invite Louise, which is speaking French, to an event. The invitation is sent to
|
|||
address ``louise_email@example.net``, is sent by Piotr, and must link to the Libervia
|
||||
instance at ``https://www.example.org/g/<id>``. We use here the ``event_uri`` extra key::
|
||||
|
||||
$ jp invitation create -n Louise -N Pierre -e louise_email@example.net -l fr -u "https://www.example.org/g/{uuid}" -x event_uri xmpp:pierre@example.org?;node=MnXe4ic2X8RUz6JAJuw4f9;item=org.salut-a-toi.event%3A0
|
||||
$ li invitation create -n Louise -N Pierre -e louise_email@example.net -l fr -u "https://www.example.org/g/{uuid}" -x event_uri xmpp:pierre@example.org?;node=MnXe4ic2X8RUz6JAJuw4f9;item=org.salut-a-toi.event%3A0
|
||||
|
||||
|
||||
get
|
||||
|
|
@ -60,13 +60,13 @@ example
|
|||
|
||||
Get invitation data for invitation with id ``okFec4gDz75My7iQAVTmsc``::
|
||||
|
||||
$ jp invitation get okFec4gDz75My7iQAVTmsc -j
|
||||
$ li invitation get okFec4gDz75My7iQAVTmsc -j
|
||||
|
||||
|
||||
modify
|
||||
======
|
||||
|
||||
This work the same way as jp-invitation_create_, you only have to specify the ``id`` of the
|
||||
This work the same way as libervia-cli_invitation_create_, you only have to specify the ``id`` of the
|
||||
invitation.
|
||||
|
||||
If you use the ``--replace`` argument, all the invitation data will be replaced by the
|
||||
|
|
@ -78,7 +78,7 @@ example
|
|||
Change the language of the invitee for the invitation ``okFec4gDz75My7iQAVTmsc`` for
|
||||
Slovak::
|
||||
|
||||
$ jp invitation modify -l sk okFec4gDz75My7iQAVTmsc
|
||||
$ li invitation modify -l sk okFec4gDz75My7iQAVTmsc
|
||||
|
||||
|
||||
delete
|
||||
|
|
@ -91,7 +91,7 @@ example
|
|||
|
||||
Delete invitation with id ``okFec4gDz75My7iQAVTmsc``::
|
||||
|
||||
$ jp invitation delete okFec4gDz75My7iQAVTmsc
|
||||
$ li invitation delete okFec4gDz75My7iQAVTmsc
|
||||
|
||||
|
||||
list
|
||||
|
|
@ -106,4 +106,4 @@ example
|
|||
|
||||
List invitations::
|
||||
|
||||
$ jp invitation list
|
||||
$ li invitation list
|
||||
|
|
@ -32,17 +32,17 @@ examples
|
|||
Publish a merge request (to be executed from the repository of the project you have
|
||||
modified)::
|
||||
|
||||
$ jp merge-request set
|
||||
$ li merge-request set
|
||||
|
||||
Update an existing merge request, which has the id ``123`` (to be executed from the
|
||||
reposiroty of the project you have modified)::
|
||||
|
||||
$ jp merge-request set -i 123
|
||||
$ li merge-request set -i 123
|
||||
|
||||
Do a merge request for repository at path ``~/some_project``, specifying a label
|
||||
indicating it's work in progress (WIP)::
|
||||
|
||||
$ jp merge-request set -r ~/some_project --label WIP
|
||||
$ li merge-request set -r ~/some_project --label WIP
|
||||
|
||||
|
||||
get
|
||||
|
|
@ -56,11 +56,11 @@ examples
|
|||
|
||||
Show some metadata of last 5 merge requests::
|
||||
|
||||
$ jp merge-request get -M 5
|
||||
$ li merge-request get -M 5
|
||||
|
||||
Display details for merge request with id 456::
|
||||
|
||||
$ jp merge-request get -v -i 456
|
||||
$ li merge-request get -v -i 456
|
||||
|
||||
|
||||
import
|
||||
|
|
@ -78,4 +78,4 @@ example
|
|||
|
||||
Import the merge request with id 321::
|
||||
|
||||
$ jp merge-request import -i 321
|
||||
$ li merge-request import -i 321
|
||||
|
|
@ -6,7 +6,7 @@ message: chat message management
|
|||
|
||||
Message commands let you send chat messages or manage your server message archives.
|
||||
|
||||
.. _jp-message_send:
|
||||
.. _libervia-cli_message_send:
|
||||
|
||||
send
|
||||
====
|
||||
|
|
@ -21,11 +21,11 @@ examples
|
|||
|
||||
Send a message to a contact::
|
||||
|
||||
$ echo 'Salut à Toi!' | jp message send louise@example.net
|
||||
$ echo 'Salut à Toi!' | li message send louise@example.net
|
||||
|
||||
Send a message encrypted with OMEMO::
|
||||
|
||||
$ echo 'pssst, this message is encrypted' | jp message send -e omemo louise@example.net
|
||||
$ echo 'pssst, this message is encrypted' | li message send -e omemo louise@example.net
|
||||
|
||||
.. note::
|
||||
|
||||
|
|
@ -33,7 +33,7 @@ Send a message encrypted with OMEMO::
|
|||
|
||||
Send a ``normal`` message marked as French with a subject::
|
||||
|
||||
$ echo 'Bonjour, je vous écris avec « Salut à Toi »' | jp message send -l fr -t normal -S 'Ceci est un message de test'
|
||||
$ echo 'Bonjour, je vous écris avec « Salut à Toi »' | li message send -l fr -t normal -S 'Ceci est un message de test'
|
||||
|
||||
mam
|
||||
===
|
||||
|
|
@ -48,12 +48,12 @@ examples
|
|||
|
||||
Retrieve messages from last 2 days::
|
||||
|
||||
$ jp message mam -S "2 days ago"
|
||||
$ li message mam -S "2 days ago"
|
||||
|
||||
Retrieve messages from last 5 hours on SàT official chat room::
|
||||
|
||||
$ jp message mam -S "5 hours ago" -s sat@chat.jabberfr.org
|
||||
$ li message mam -S "5 hours ago" -s sat@chat.jabberfr.org
|
||||
|
||||
Retrieve 2 first messages of 2019 on SàT official chat room::
|
||||
|
||||
$ jp message mam -S 2019-01-01 -s sat@chat.jabberfr.org -m 2
|
||||
$ li message mam -S 2019-01-01 -s sat@chat.jabberfr.org -m 2
|
||||
|
|
@ -41,24 +41,24 @@ examples
|
|||
|
||||
Get list of categories::
|
||||
|
||||
$ jp param get
|
||||
$ li param get
|
||||
|
||||
Get list of parameters in ``General`` category::
|
||||
|
||||
$ jp param get General
|
||||
$ li param get General
|
||||
|
||||
Get JID set for default profile. It is set in ``Connection`` category, with the parameters
|
||||
named ``JabberID`` (be careful with the case)::
|
||||
|
||||
$ jp param get Connection JabberID
|
||||
$ li param get Connection JabberID
|
||||
|
||||
Get the type of the ``check_certificate`` parameters in ``Connection`` category::
|
||||
|
||||
$ jp param get Connection check_certificate -a type
|
||||
$ li param get Connection check_certificate -a type
|
||||
|
||||
Get the constraint of the ``Priority`` parameters in ``Connection`` category::
|
||||
|
||||
$ jp param get Connection Priority -a constraint
|
||||
$ li param get Connection Priority -a constraint
|
||||
|
||||
set
|
||||
===
|
||||
|
|
@ -67,7 +67,7 @@ As expected, this command set a SàT parameter. The ``category``, ``name`` and `
|
|||
are needed as positional arguments.
|
||||
|
||||
``--security-limit SECURITY_LIMIT`` can be used if you want an update to be rejected if
|
||||
the parameter is not modifiable with this limit. This can be useful if you use ``jp`` from
|
||||
the parameter is not modifiable with this limit. This can be useful if you use ``li`` from
|
||||
an external tool and you want to limit damage risks, or for testing purpose.
|
||||
|
||||
examples
|
||||
|
|
@ -75,15 +75,15 @@ examples
|
|||
|
||||
Use Markdown_ syntax for composition (e.g. for editing blog posts)::
|
||||
|
||||
$ jp param set Composition Syntax markdown
|
||||
$ li param set Composition Syntax markdown
|
||||
|
||||
Try to change jid of the profile with a low security limit, this command should fail::
|
||||
|
||||
$ jp param set --security-limit 0 Connection JabberID some_random_jid@example.org
|
||||
$ li param set --security-limit 0 Connection JabberID some_random_jid@example.org
|
||||
|
||||
.. _Markdown: https://daringfireball.net/projects/markdown/
|
||||
|
||||
.. _jp-param_save:
|
||||
.. _libervia-cli_param_save:
|
||||
|
||||
save
|
||||
====
|
||||
|
|
@ -101,9 +101,9 @@ example
|
|||
|
||||
Save parameters structure to ``~/parameters.xml``::
|
||||
|
||||
$ jp param save ~/parameters.xml
|
||||
$ li param save ~/parameters.xml
|
||||
|
||||
.. _jp-param_load:
|
||||
.. _libervia-cli_param_load:
|
||||
|
||||
load
|
||||
====
|
||||
|
|
@ -121,4 +121,4 @@ example
|
|||
|
||||
Load and merge parameters structure from ``~/parameters.xml``::
|
||||
|
||||
$ jp param load ~/parameters.xml
|
||||
$ li param load ~/parameters.xml
|
||||
|
|
@ -17,4 +17,4 @@ example
|
|||
|
||||
Get reponse time of a server::
|
||||
|
||||
$ jp ping example.org
|
||||
$ li ping example.org
|
||||
|
|
@ -18,7 +18,7 @@ example
|
|||
|
||||
Receive a video stream, and redirect it to mpv_ so show the video::
|
||||
|
||||
$ jp pipe in | mpv -
|
||||
$ li pipe in | mpv -
|
||||
|
||||
.. _mpv: https://mpv.io/
|
||||
|
||||
|
|
@ -36,8 +36,8 @@ example
|
|||
|
||||
Send a video to louise::
|
||||
|
||||
$ jp pipe out louise@example.org/sat < some_video.webm
|
||||
$ li pipe out louise@example.org/sat < some_video.webm
|
||||
|
||||
Send output from ``cal`` command to louise::
|
||||
|
||||
$ cal | jp pipe out louise@example.org/sat
|
||||
$ cal | li pipe out louise@example.org/sat
|
||||
|
|
@ -11,13 +11,13 @@ connect
|
|||
=======
|
||||
|
||||
Unsurprisingly this command connects your profile, i.e. log-in your XMPP account. This
|
||||
command uses :ref:`jp-common_profile` common commands, so you can use either ``-c,
|
||||
command uses :ref:`libervia-cli_common_profile` common commands, so you can use either ``-c,
|
||||
--connect`` to connect to XMPP server, or ``--start-session`` if you want to start SàT
|
||||
profile session without connecting to XMPP server (for instance if you want to modify
|
||||
parameters without connecting to XMPP server).
|
||||
|
||||
Note that :ref:`jp-common_profile` common commands are available in commands needing a
|
||||
connected profile, ``jp profile connect`` is interesting if you only want to connect your
|
||||
Note that :ref:`libervia-cli_common_profile` common commands are available in commands needing a
|
||||
connected profile, ``li profile connect`` is interesting if you only want to connect your
|
||||
profile/start a session.
|
||||
|
||||
example
|
||||
|
|
@ -25,21 +25,21 @@ example
|
|||
|
||||
Connect the default profile::
|
||||
|
||||
$ jp profile connect -c
|
||||
$ li profile connect -c
|
||||
|
||||
|
||||
disconnect
|
||||
==========
|
||||
|
||||
Disconnect your profile from XMPP server. There is no option beside the
|
||||
:ref:`jp-common_profile` common options.
|
||||
:ref:`libervia-cli_common_profile` common options.
|
||||
|
||||
example
|
||||
-------
|
||||
|
||||
Disconnect the profile ``pierre``::
|
||||
|
||||
$ jp profile disconnect -p pierre
|
||||
$ li profile disconnect -p pierre
|
||||
|
||||
|
||||
create
|
||||
|
|
@ -74,7 +74,7 @@ components), you can use the ``-A [{true,false}], --autoconnect [{true,false}]``
|
|||
|
||||
.. note::
|
||||
|
||||
passwords in jp are currently specified directly on the command-line and not prompted,
|
||||
passwords in li are currently specified directly on the command-line and not prompted,
|
||||
this is not safe from a security point of view as people can see it on the screen, it
|
||||
may stay in your shell history, or visible on process list. Keep that in mind if you're
|
||||
in a public environment or on a public machine. This will be improved for SàT 0.8.
|
||||
|
|
@ -85,7 +85,7 @@ examples
|
|||
Nestor wants to create a profile for its account on ``example.org``, he specifies a
|
||||
profile password only, so it will also be used as the XMPP password::
|
||||
|
||||
$ jp profile create nestor -j nestor@example.org -p some_password
|
||||
$ li profile create nestor -j nestor@example.org -p some_password
|
||||
|
||||
Create a component profile for the file sharing component (whose entry point is
|
||||
``file_sharing``). The jid of the service is specified with ``--jid`` (note that we don't
|
||||
|
|
@ -93,7 +93,7 @@ use a node as it is a jid of a component) and the ``--xmpp-password`` is the sha
|
|||
secret. Here the profile password is kept empty to not have to enter manually the XMPP
|
||||
password each time we connect the service::
|
||||
|
||||
$ jp profile create file_sharing -j files.example.org -p "" --xmpp-password
|
||||
$ li profile create file_sharing -j files.example.org -p "" --xmpp-password
|
||||
some_shared_secret -C file_sharing
|
||||
|
||||
|
||||
|
|
@ -109,7 +109,7 @@ example
|
|||
|
||||
Print default profile::
|
||||
|
||||
$ jp profile default
|
||||
$ li profile default
|
||||
|
||||
|
||||
delete
|
||||
|
|
@ -126,7 +126,7 @@ example
|
|||
|
||||
Delete the profile of Pierre::
|
||||
|
||||
$ jp profile delete pierre
|
||||
$ li profile delete pierre
|
||||
|
||||
|
||||
info
|
||||
|
|
@ -141,7 +141,7 @@ example
|
|||
|
||||
Show jid and XMPP password for default profile::
|
||||
|
||||
$ jp profile info --show-password
|
||||
$ li profile info --show-password
|
||||
|
||||
|
||||
list
|
||||
|
|
@ -155,7 +155,7 @@ example
|
|||
|
||||
Show all profiles::
|
||||
|
||||
$ jp profile list
|
||||
$ li profile list
|
||||
|
||||
|
||||
modify
|
||||
|
|
@ -183,12 +183,12 @@ examples
|
|||
|
||||
Pierre has changed server, he can update his jid and password like this::
|
||||
|
||||
$ jp profile modify -p pierre -j pierre@example.org -x new_password
|
||||
$ li profile modify -p pierre -j pierre@example.org -x new_password
|
||||
|
||||
Use ``louise`` as default profile::
|
||||
|
||||
$ jp profile modify -p louise -D
|
||||
$ li profile modify -p louise -D
|
||||
|
||||
Disable profile password for default profile (be cautious, see the note above)::
|
||||
|
||||
$ jp profile modify --disable-password
|
||||
$ li profile modify --disable-password
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
.. _jp-pubsub:
|
||||
.. _libervia-cli_pubsub:
|
||||
|
||||
=========================
|
||||
pubsub: PubSub management
|
||||
|
|
@ -21,7 +21,7 @@ Publish a pubsub item.
|
|||
which must be set if the node already exists, or used if the node is to be created, see
|
||||
`XEP-0060 §7.1.5`_ for details.
|
||||
|
||||
In the same way as for :ref:`jp-pubsub_node_create`, ``-F, --full-prefix`` can be used if
|
||||
In the same way as for :ref:`libervia-cli_pubsub_node_create`, ``-F, --full-prefix`` can be used if
|
||||
you need to specify the full option name.
|
||||
|
||||
.. _XEP-0060 §7.1.5: https://xmpp.org/extensions/xep-0060.html#publisher-publish-options
|
||||
|
|
@ -31,7 +31,7 @@ example
|
|||
|
||||
Create an item with a custom note XML::
|
||||
|
||||
$ echo '<note xmlns="http://example.net/mynotes">this is a note</note>' | jp pubsub set -n "notes"
|
||||
$ echo '<note xmlns="http://example.net/mynotes">this is a note</note>' | li pubsub set -n "notes"
|
||||
|
||||
get
|
||||
===
|
||||
|
|
@ -43,7 +43,7 @@ example
|
|||
|
||||
Retrieve the last 5 notes from our custom notes node::
|
||||
|
||||
$ jp pubsub get -n notes -m 5
|
||||
$ li pubsub get -n notes -m 5
|
||||
|
||||
delete
|
||||
======
|
||||
|
|
@ -59,7 +59,7 @@ example
|
|||
|
||||
Delete item with id ``123456`` from a node::
|
||||
|
||||
$ jp pubsub delete -n test_node -i 123456
|
||||
$ li pubsub delete -n test_node -i 123456
|
||||
|
||||
edit
|
||||
====
|
||||
|
|
@ -75,7 +75,7 @@ example
|
|||
|
||||
Edit the last note in our custom node::
|
||||
|
||||
$ jp pubsub edit -n notes -L
|
||||
$ li pubsub edit -n notes -L
|
||||
|
||||
subscribe
|
||||
=========
|
||||
|
|
@ -90,7 +90,7 @@ example
|
|||
|
||||
Subscribe to an information blog::
|
||||
|
||||
$ jp pubsub subscribe -n informations -s pubsub.example.net
|
||||
$ li pubsub subscribe -n informations -s pubsub.example.net
|
||||
|
||||
unsubscribe
|
||||
===========
|
||||
|
|
@ -102,7 +102,7 @@ example
|
|||
|
||||
Unsubscribe from an information blog::
|
||||
|
||||
$ jp pubsub unsubscribe -n informations -s pubsub.example.net
|
||||
$ li pubsub unsubscribe -n informations -s pubsub.example.net
|
||||
|
||||
subscriptions
|
||||
=============
|
||||
|
|
@ -117,7 +117,7 @@ example
|
|||
|
||||
Retrieve all subscriptions on a pubsub service::
|
||||
|
||||
$ jp pubsub subscriptions -s pubsub@example.net
|
||||
$ li pubsub subscriptions -s pubsub@example.net
|
||||
|
||||
affiliations
|
||||
=============
|
||||
|
|
@ -131,11 +131,11 @@ examples
|
|||
|
||||
Retrieve all affiliations at a pubsub service::
|
||||
|
||||
$ jp pubsub affiliations -s pubsub@example.net
|
||||
$ li pubsub affiliations -s pubsub@example.net
|
||||
|
||||
Retrieve affiliation for the ``notes`` node::
|
||||
|
||||
$ jp pubsub affiliations -s pubsub@example.net -n notes
|
||||
$ li pubsub affiliations -s pubsub@example.net -n notes
|
||||
|
||||
search
|
||||
======
|
||||
|
|
@ -209,7 +209,7 @@ actions
|
|||
-------
|
||||
|
||||
Once filters are set, you may indicate what do to with the found items. By default they
|
||||
are printed, but you can also use an other jp command, or even an external tool.
|
||||
are printed, but you can also use an other li command, or even an external tool.
|
||||
|
||||
The following actions are available:
|
||||
|
||||
|
|
@ -217,8 +217,8 @@ The following actions are available:
|
|||
pretty print the found items.
|
||||
|
||||
``exec``
|
||||
use the given jp command on each found item. Everything after the ``exec`` is used to
|
||||
indicate the command and arguments to use (you must not specify ``jp``, use the command
|
||||
use the given li command on each found item. Everything after the ``exec`` is used to
|
||||
indicate the command and arguments to use (you must not specify ``li``, use the command
|
||||
directly). The service, node and item will be set to match the found item.
|
||||
|
||||
``external``
|
||||
|
|
@ -235,27 +235,27 @@ be checked too, then node linked in linked item and so on until depth level is r
|
|||
For instance, if you want to find all comments of a blog node containing an http(s) link,
|
||||
you can do that::
|
||||
|
||||
$ jp pubsub search -n urn:xmpp:microblog:0 -s user@example.net -D 1 -r 'https?://'
|
||||
$ li pubsub search -n urn:xmpp:microblog:0 -s user@example.net -D 1 -r 'https?://'
|
||||
|
||||
examples
|
||||
--------
|
||||
|
||||
Finding all items containing the text "something interesting" in personal blog::
|
||||
|
||||
$ jp pubsub search -n urn:xmpp:microblog:0 -M -1 -t "something interesting"
|
||||
$ li pubsub search -n urn:xmpp:microblog:0 -M -1 -t "something interesting"
|
||||
|
||||
Find which blog items in the last 20 have a body with less than 200 characters (note that
|
||||
body can be either ``<title>`` or ``<content>``, see `XEP-0277`_ for details). Here we use
|
||||
a python expression on the text of the body to count the number of characters::
|
||||
|
||||
$ jp pubsub search -n urn:xmpp:microblog:0 -M 20 --python "len((item_xml.find('.//{http://www.w3.org/2005/Atom}content[@type=\"text\"]') or item_xml.find('.//{http://www.w3.org/2005/Atom}title[@type=\"text\"]')).text) < 200"
|
||||
$ li pubsub search -n urn:xmpp:microblog:0 -M 20 --python "len((item_xml.find('.//{http://www.w3.org/2005/Atom}content[@type=\"text\"]') or item_xml.find('.//{http://www.w3.org/2005/Atom}title[@type=\"text\"]')).text) < 200"
|
||||
|
||||
Find items published by ``toto@example.net`` among last 30 on a blog node, and use
|
||||
``pubsub blog`` command to retrieve id and title. We use ``-N`` to specify the ``pubsub``
|
||||
namespace which is used in the XPath expression, then we use ``exec`` to run ``blog get -k
|
||||
title -k id`` on found items::
|
||||
|
||||
$ jp pubsub search -n some_blog_node -s pubsub.example.net -M 30 -N pubsub http://jabber.org/protocol/pubsub -x '/pubsub:item[starts-with(@publisher, "toto@example.net")]' exec blog get -k title -k id
|
||||
$ li pubsub search -n some_blog_node -s pubsub.example.net -M 30 -N pubsub http://jabber.org/protocol/pubsub -x '/pubsub:item[starts-with(@publisher, "toto@example.net")]' exec blog get -k title -k id
|
||||
|
||||
Find items which have **NOT** a title among last 30 items in our personal blog. As
|
||||
explained in `XEP-0277`_ Atom's ``<title>`` is always used (even if there is only a body
|
||||
|
|
@ -263,14 +263,14 @@ and no title), so we actually look for items without ``<content>``. We do that w
|
|||
XPath looking for this ``atom:content`` element, then we use the ``-I [BOOLEAN], --invert
|
||||
[BOOLEAN]`` to filter out elements which match.::
|
||||
|
||||
$ jp pubsub search -n urn:xmpp:microblog:0 -M 30 -I -x //atom:content -N atom http://www.w3.org/2005/Atom
|
||||
$ li pubsub search -n urn:xmpp:microblog:0 -M 30 -I -x //atom:content -N atom http://www.w3.org/2005/Atom
|
||||
|
||||
Display authors names from last 10 items and their comments, using the ``-k [BOOLEAN],
|
||||
--only-matching [BOOLEAN]`` modifier to only display the data we need. We use ``-D 1`` to
|
||||
do a recursive search of level 1, which will also look into comments nodes (using last 10
|
||||
items there too)::
|
||||
|
||||
$ jp pubsub search -n urn:xmpp:microblog:0 -M 10 --only-matching -x //atom:author/atom:name -N atom http://www.w3.org/2005/Atom -D 1
|
||||
$ li pubsub search -n urn:xmpp:microblog:0 -M 10 --only-matching -x //atom:author/atom:name -N atom http://www.w3.org/2005/Atom -D 1
|
||||
|
||||
.. _XEP-0277: https://xmpp.org/extensions/xep-0277.html
|
||||
|
||||
|
|
@ -327,12 +327,12 @@ with ``chmod +x ~/expand_sat.py``).
|
|||
|
||||
To be sure it's safe, you can first do a dry-run and check the result::
|
||||
|
||||
$ jp pubsub transform -n urn:xmpp:microblog:0 -A -o creation ~/expand_sat.py
|
||||
$ li pubsub transform -n urn:xmpp:microblog:0 -A -o creation ~/expand_sat.py
|
||||
|
||||
Once you have checked that you have the expected behaviour, you can apply the
|
||||
transformations::
|
||||
|
||||
$ jp pubsub transform -n urn:xmpp:microblog:0 -A -o creation --apply ~/expand_sat.py
|
||||
$ li pubsub transform -n urn:xmpp:microblog:0 -A -o creation --apply ~/expand_sat.py
|
||||
|
||||
And that's it. You can use the same technique for more complex transformations, including
|
||||
modifying the XML (with Python, you can easily do that with standard
|
||||
|
|
@ -348,14 +348,14 @@ example
|
|||
|
||||
Build a link to personal blog::
|
||||
|
||||
$ jp pubsub uri -n urn:xmpp:microblog:0
|
||||
$ li pubsub uri -n urn:xmpp:microblog:0
|
||||
|
||||
node
|
||||
====
|
||||
|
||||
Subcommands for node management. Please check :ref:`jp-pubsub_node`.
|
||||
Subcommands for node management. Please check :ref:`libervia-cli_pubsub_node`.
|
||||
|
||||
hook
|
||||
====
|
||||
|
||||
Subcommands for hooks management. Please check :ref:`jp-pubsub_hook`.
|
||||
Subcommands for hooks management. Please check :ref:`libervia-cli_pubsub_hook`.
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
.. _jp-pubsub_hook:
|
||||
.. _libervia-cli_pubsub_hook:
|
||||
|
||||
====================================
|
||||
pubsub/hook: PubSub hooks management
|
||||
|
|
@ -51,7 +51,7 @@ example
|
|||
Install a persistent hook on blog node, using the Python script named
|
||||
``do_something_neat.py`` in ``$HOME`` directory::
|
||||
|
||||
$ jp pubsub node hook create -n urn:xmpp:microblog:0 -t python_file --persistent ~/do_something_neat.py
|
||||
$ li pubsub node hook create -n urn:xmpp:microblog:0 -t python_file --persistent ~/do_something_neat.py
|
||||
|
||||
delete
|
||||
======
|
||||
|
|
@ -65,7 +65,7 @@ example
|
|||
|
||||
Delete the ``do_something_neat.py`` hook::
|
||||
|
||||
$ jp pubsub node hook delete -n urn:xmpp:microblog:0 -t python_file --arg ~/do_something_neat.py
|
||||
$ li pubsub node hook delete -n urn:xmpp:microblog:0 -t python_file --arg ~/do_something_neat.py
|
||||
|
||||
list
|
||||
====
|
||||
|
|
@ -92,5 +92,5 @@ example
|
|||
|
||||
Get PubSub hooks registered for this profile in JSON::
|
||||
|
||||
$ jp pubsub hook list -O json
|
||||
$ li pubsub hook list -O json
|
||||
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
.. _jp-pubsub_node:
|
||||
.. _libervia-cli_pubsub_node:
|
||||
|
||||
====================================
|
||||
pubsub/node: PubSub nodes management
|
||||
====================================
|
||||
|
||||
``node`` is a subcommands grouping all PubSub commands related to node management. For
|
||||
details on ``pubsub`` command itself, refer to :ref:`jp-pubsub`.
|
||||
details on ``pubsub`` command itself, refer to :ref:`libervia-cli_pubsub`.
|
||||
|
||||
info
|
||||
====
|
||||
|
|
@ -17,13 +17,13 @@ examples
|
|||
|
||||
Get informations on our personal microblog node::
|
||||
|
||||
$ jp pubsub node info -n urn:xmpp:microblog:0
|
||||
$ li pubsub node info -n urn:xmpp:microblog:0
|
||||
|
||||
Only print ``access_model`` and ``publish_model``::
|
||||
|
||||
$ jp pubsub node info -n urn:xmpp:microblog:0 -k access_model -k publish_model
|
||||
$ li pubsub node info -n urn:xmpp:microblog:0 -k access_model -k publish_model
|
||||
|
||||
.. _jp-pubsub_node_create:
|
||||
.. _libervia-cli_pubsub_node_create:
|
||||
|
||||
create
|
||||
======
|
||||
|
|
@ -41,7 +41,7 @@ example
|
|||
Create a node called ``notes`` with a ``whitelist`` access model (so only you and people
|
||||
you may authorize later can access it)::
|
||||
|
||||
$ jp pubsub node create -n notes
|
||||
$ li pubsub node create -n notes
|
||||
|
||||
purge
|
||||
=====
|
||||
|
|
@ -56,7 +56,7 @@ example
|
|||
Remove all items from a blog comments node (in other words, removing all comments while
|
||||
letting the node so people can add new comments)::
|
||||
|
||||
$ jp pubsub node purge -n "urn:xmpp:microblog:0:comments/123-456-789"
|
||||
$ li pubsub node purge -n "urn:xmpp:microblog:0:comments/123-456-789"
|
||||
|
||||
delete
|
||||
======
|
||||
|
|
@ -71,7 +71,7 @@ example
|
|||
|
||||
Delete the ``temporary_notes`` node::
|
||||
|
||||
$ jp pubsub node delete -n temporary_notes
|
||||
$ li pubsub node delete -n temporary_notes
|
||||
|
||||
set
|
||||
===
|
||||
|
|
@ -88,7 +88,7 @@ example
|
|||
|
||||
Make the ``public_notes`` node accessible to the world::
|
||||
|
||||
$ jp pubsub node set -n public_notes -f access_model open
|
||||
$ li pubsub node set -n public_notes -f access_model open
|
||||
|
||||
import
|
||||
======
|
||||
|
|
@ -103,10 +103,10 @@ If you want to change publisher of one or more items (i.e. if you want to use an
|
|||
example
|
||||
-------
|
||||
|
||||
Import a node backup which has previously been saved using ``jp blog get -M -1 -n
|
||||
Import a node backup which has previously been saved using ``li blog get -M -1 -n
|
||||
some_node > some_node_backup.xml``::
|
||||
|
||||
$ jp pubsub node import -n some_node ~/some_node_backup.xml
|
||||
$ li pubsub node import -n some_node ~/some_node_backup.xml
|
||||
|
||||
.. note::
|
||||
|
||||
|
|
@ -117,10 +117,10 @@ some_node > some_node_backup.xml``::
|
|||
affiliations
|
||||
============
|
||||
|
||||
Subcommands for node affiliations management. Please check :ref:`jp-pubsub_node_affiliations`.
|
||||
Subcommands for node affiliations management. Please check :ref:`libervia-cli_pubsub_node_affiliations`.
|
||||
|
||||
subscriptions
|
||||
=============
|
||||
|
||||
Subcommands for node subscriptions management. Please check
|
||||
:ref:`jp-pubsub_node_subscriptions`.
|
||||
:ref:`libervia-cli_pubsub_node_subscriptions`.
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
.. _jp-pubsub_node_affiliations:
|
||||
.. _libervia-cli_pubsub_node_affiliations:
|
||||
|
||||
=======================================================
|
||||
pubsub/node/affiliations: nodes affiliations management
|
||||
|
|
@ -17,7 +17,7 @@ example
|
|||
|
||||
Get affiliations of a node::
|
||||
|
||||
$ jp pubsub node affiliations get -n some_node
|
||||
$ li pubsub node affiliations get -n some_node
|
||||
|
||||
set
|
||||
===
|
||||
|
|
@ -36,5 +36,5 @@ If we have a whitelisted node ``some_whitelisted_node``, we can allow
|
|||
``pierre@example.net`` to access it (by setting his role as ``member``) using the
|
||||
following command::
|
||||
|
||||
$ jp pubsub node affiliations set -n some_whitelisted_node -a louise@example.net
|
||||
$ li pubsub node affiliations set -n some_whitelisted_node -a louise@example.net
|
||||
publisher -a pierre@example.net member
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
.. _jp-pubsub_node_schema:
|
||||
.. _libervia-cli_pubsub_node_schema:
|
||||
|
||||
=========================================
|
||||
pubsub/node/schema: nodes schema handling
|
||||
|
|
@ -22,7 +22,7 @@ Set the schema for tickets node using the file ``tickets_schema.xml`` from ``$HO
|
|||
directory. Shell substition is used here to put the content of the file in the positional
|
||||
argument::
|
||||
|
||||
$ jp pubsub node schema set -n org.salut-a-toi.tickets:0 -s pubsub.example.org "$(<~/test_schema.xml)"
|
||||
$ li pubsub node schema set -n org.salut-a-toi.tickets:0 -s pubsub.example.org "$(<~/test_schema.xml)"
|
||||
|
||||
|
||||
edit
|
||||
|
|
@ -39,7 +39,7 @@ example
|
|||
|
||||
Edit the tickets node schema::
|
||||
|
||||
$ jp pubsub node schema edit -n org.salut-a-toi.tickets:0 -s pubsub.example.org
|
||||
$ li pubsub node schema edit -n org.salut-a-toi.tickets:0 -s pubsub.example.org
|
||||
|
||||
|
||||
example
|
||||
|
|
@ -56,4 +56,4 @@ example
|
|||
Get schema of tickets and save it to a file named ``tickets_schema.xml`` in ``$HOME``
|
||||
directory::
|
||||
|
||||
$ jp pubsub node schema get -n org.salut-a-toi.tickets:0 -s pubsub.example.org > ~/tickets_schema.xml
|
||||
$ li pubsub node schema get -n org.salut-a-toi.tickets:0 -s pubsub.example.org > ~/tickets_schema.xml
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
.. _jp-pubsub_node_subscriptions:
|
||||
.. _libervia-cli_pubsub_node_subscriptions:
|
||||
|
||||
========================================================
|
||||
pubsub/node/affiliations: nodes subscriptions management
|
||||
|
|
@ -18,7 +18,7 @@ example
|
|||
|
||||
Get subscription from ``some_node``::
|
||||
|
||||
$ jp pubsub node subscriptions get -n some_node
|
||||
$ li pubsub node subscriptions get -n some_node
|
||||
|
||||
set
|
||||
===
|
||||
|
|
@ -38,6 +38,6 @@ example
|
|||
Subscribe Louise with her new address at ``louise@example.org`` and remove her
|
||||
subscription from old ``louise@example.com``::
|
||||
|
||||
$ jp pubsub node subscriptions set -n some_node -S louise@example.org subscribed louise@example.com none
|
||||
$ li pubsub node subscriptions set -n some_node -S louise@example.org subscribed louise@example.com none
|
||||
|
||||
|
||||
|
|
@ -39,15 +39,15 @@ examples
|
|||
|
||||
Get roster of default profile and display groups::
|
||||
|
||||
$ jp roster get -v
|
||||
$ li roster get -v
|
||||
|
||||
Get roster of default profile and display all metadata::
|
||||
|
||||
$ jp roster get -vv
|
||||
$ li roster get -vv
|
||||
|
||||
Get roster or default profile and show the result in JSON::
|
||||
|
||||
$ jp roster get -O json
|
||||
$ li roster get -O json
|
||||
|
||||
set
|
||||
===
|
||||
|
|
@ -66,11 +66,11 @@ examples
|
|||
|
||||
Set a name used to privately identify your contact Louise::
|
||||
|
||||
$ jp roster set -n Enjolras louise@example.net
|
||||
$ li roster set -n Enjolras louise@example.net
|
||||
|
||||
Replace all groups of Pierre, to add him only to ``friends`` and ``housemates``::
|
||||
|
||||
$ jp roster set --replace -g friends -g housemates pierre@example.net
|
||||
$ li roster set --replace -g friends -g housemates pierre@example.net
|
||||
|
||||
delete
|
||||
======
|
||||
|
|
@ -82,7 +82,7 @@ examples
|
|||
|
||||
Remove John from your roster::
|
||||
|
||||
$ jp roster delete john@example.net
|
||||
$ li roster delete john@example.net
|
||||
|
||||
stats
|
||||
=====
|
||||
|
|
@ -99,7 +99,7 @@ example
|
|||
|
||||
Get statistic for the default profile::
|
||||
|
||||
$ jp roster stats
|
||||
$ li roster stats
|
||||
|
||||
purge
|
||||
=====
|
||||
|
|
@ -118,7 +118,7 @@ example
|
|||
Remove all contacts from default profile which have no subscription at all or from which
|
||||
the default profile is not subscribed to::
|
||||
|
||||
$ jp roster purge --no_to
|
||||
$ li roster purge --no_to
|
||||
|
||||
resync
|
||||
======
|
||||
|
|
@ -142,4 +142,4 @@ exemple
|
|||
|
||||
Do a full resynchronisation of default profile's roster::
|
||||
|
||||
$ jp roster resync
|
||||
$ li roster resync
|
||||
|
|
@ -2,25 +2,25 @@
|
|||
shell: use SàT with REPL
|
||||
========================
|
||||
|
||||
``shell`` launch a read–eval–print loop (REPL) with some helpers to launch jp commands.
|
||||
``shell`` launch a read–eval–print loop (REPL) with some helpers to launch li commands.
|
||||
This is useful if you are willing to a session when you'll use several commands in a row
|
||||
(for e.g. to inspect something on a PubSub service).
|
||||
|
||||
start the shell
|
||||
===============
|
||||
|
||||
To start the shell, you just have to enter ``jp shell``. You can eventually specify a
|
||||
profile to use an other one than the default one by entering ``jp shell -p
|
||||
To start the shell, you just have to enter ``li shell``. You can eventually specify a
|
||||
profile to use an other one than the default one by entering ``li shell -p
|
||||
<some_profile>``.
|
||||
|
||||
|
||||
.. _jp-shell_use:
|
||||
.. _libervia-cli_shell_use:
|
||||
|
||||
use the shell
|
||||
=============
|
||||
|
||||
Once in the shell, you can launch a command by entering it as usual (without having to
|
||||
specify ``jp``). For instance to get last 2 blog posts from your personal blog, you just
|
||||
specify ``li``). For instance to get last 2 blog posts from your personal blog, you just
|
||||
have to enter::
|
||||
|
||||
> blog get -m 2
|
||||
|
|
@ -28,11 +28,11 @@ have to enter::
|
|||
There are 2 kinds of commands in the shell:
|
||||
|
||||
- **shell commands** which are command to manipulate the shell itself
|
||||
- **jp commands** which are the classic commands that you use with jp
|
||||
- **li commands** which are the classic commands that you use with li
|
||||
|
||||
The most important thing to remember is that you can use ``?`` (or ``help`` which is
|
||||
equivalent) to get the list of commands (shell + jp), and ``?<command>`` (or ``help
|
||||
<command>``) to get information on a shell command. For jp commands, you can use the usual
|
||||
equivalent) to get the list of commands (shell + li), and ``?<command>`` (or ``help
|
||||
<command>``) to get information on a shell command. For li commands, you can use the usual
|
||||
``--help`` argument.
|
||||
|
||||
You may move in the commands hierarchy using ``cmd`` which can be seen as something
|
||||
|
|
@ -90,15 +90,15 @@ cmd
|
|||
---
|
||||
|
||||
Move in the command hierarchy, this avoid to type again a command if you know you'll use
|
||||
it several times. See jp-shell_use_ for explanation and examples
|
||||
it several times. See libervia-cli_shell_use_ for explanation and examples
|
||||
|
||||
do
|
||||
--
|
||||
|
||||
Launch a jp command. By default the command is launched if you enter directly its name and
|
||||
Launch a li command. By default the command is launched if you enter directly its name and
|
||||
arguments, but if a command or argument conflict with a shell command, the shell command
|
||||
will be launched instead. The ``do`` command avoid such a situation by always launching a
|
||||
jp command::
|
||||
li command::
|
||||
|
||||
> do blog get -m 2
|
||||
|
||||
|
|
@ -110,7 +110,7 @@ Quit the shell (alias of ``quit``).
|
|||
help (alias ``?``)
|
||||
------------------
|
||||
|
||||
Give information on available commands or on a specific command, see jp-shell_use_ for
|
||||
Give information on available commands or on a specific command, see libervia-cli_shell_use_ for
|
||||
more explanations.
|
||||
|
||||
examples
|
||||
|
|
@ -145,7 +145,7 @@ use
|
|||
---
|
||||
|
||||
Fix the value of an argument, which will then be set for all following commands, see
|
||||
jp-shell_use_ for more explanations.
|
||||
libervia-cli_shell_use_ for more explanations.
|
||||
|
||||
Without argument, show all fixed arguments
|
||||
|
||||
|
|
@ -183,7 +183,7 @@ Without argument, show if verbose mode is activated. With an argument evaluating
|
|||
boolean, activate or deactivate this mode.
|
||||
|
||||
In verbose mode, the fixed arguments and the command launched are printed before launching
|
||||
a jp command.
|
||||
a li command.
|
||||
|
||||
examples
|
||||
^^^^^^^^
|
||||
|
|
@ -199,7 +199,7 @@ Activate verbose mode::
|
|||
version
|
||||
-------
|
||||
|
||||
Print current version of jp/Salut à Toi.
|
||||
Print current version of li/Salut à Toi.
|
||||
|
||||
whoami
|
||||
------
|
||||
|
|
@ -18,11 +18,11 @@ examples
|
|||
|
||||
Retrieve last 5 tickets (ordered by creation) from a project using magic string in README::
|
||||
|
||||
$ jp ticket get -m 5 -o creation
|
||||
$ li ticket get -m 5 -o creation
|
||||
|
||||
Retrieve the ticket with id ``123`` on service ``pubsub.example.org``::
|
||||
|
||||
$ jp ticket get -s pubsub.example.org -i 123
|
||||
$ li ticket get -s pubsub.example.org -i 123
|
||||
|
||||
|
||||
|
||||
|
|
@ -30,7 +30,7 @@ import
|
|||
======
|
||||
|
||||
Import tickets from an external source. This works in the same way as
|
||||
:ref:`jp-blog_import`: you need to specify an importer and a data location. If you let
|
||||
:ref:`libervia-cli_blog_import`: you need to specify an importer and a data location. If you let
|
||||
both positional argument empty, you'll get list of importers, if you specify importer but
|
||||
not data location, you'll get a description on how the importer works.
|
||||
|
||||
|
|
@ -54,19 +54,19 @@ examples
|
|||
|
||||
Get list of ticket importers::
|
||||
|
||||
$ jp ticket import
|
||||
$ li ticket import
|
||||
|
||||
Get description of ticket importer for Bugzilla::
|
||||
|
||||
$ jp ticket import bugzilla
|
||||
$ li ticket import bugzilla
|
||||
|
||||
Import tickets from a Bugzilla XML export file at ``~/bugzilla_export.xml`` to the
|
||||
``pubsub.example.org`` PubSub service. We use default tickets node and want a progression
|
||||
bar::
|
||||
|
||||
$ jp ticket import -P -s pubsub.example.org ~/bugzilla_export.xml
|
||||
$ li ticket import -P -s pubsub.example.org ~/bugzilla_export.xml
|
||||
|
||||
Same import, but this time we want to map the field ``assigned_to_name`` from Bugzilla to
|
||||
the field ``assigned_to`` in our schema::
|
||||
|
||||
$ jp ticket import -P -s pubsub.example.org -m assigned_to_name assigned_to ~/bugzilla_export.xml
|
||||
$ li ticket import -P -s pubsub.example.org -m assigned_to_name assigned_to ~/bugzilla_export.xml
|
||||
|
|
@ -23,7 +23,7 @@ examples
|
|||
|
||||
Parse a blog URI::
|
||||
|
||||
$ jp uri parse "xmpp:somebody@example.org?;node=urn%3Axmpp%3Amicroblog%3A0"
|
||||
$ li uri parse "xmpp:somebody@example.org?;node=urn%3Axmpp%3Amicroblog%3A0"
|
||||
|
||||
build
|
||||
======
|
||||
|
|
@ -36,4 +36,4 @@ examples
|
|||
|
||||
Build XMPP URI for a blog::
|
||||
|
||||
$ jp uri build pubsub somebody@example.org -f node urn:xmpp:microblog:0
|
||||
$ li uri build pubsub somebody@example.org -f node urn:xmpp:microblog:0
|
||||
154
doc/overview.rst
154
doc/overview.rst
|
|
@ -2,24 +2,24 @@
|
|||
Overview
|
||||
========
|
||||
|
||||
To have a better understanding of Salut a Toi, this page gives a global view of what it is
|
||||
To have a better understanding of Libervia, this page gives a global view of what it is
|
||||
and what are the important concepts linked to it. You don't need to read this to use it, but you
|
||||
can if you wish to understand "who is doing what".
|
||||
|
||||
Salut à Toi (or SàT) is a XMPP client. `XMPP`_ is an open standard used
|
||||
for communication (notably instant messaging but not only). XMPP is a solid standard,
|
||||
which is decentralised and federated.
|
||||
Libervia is a XMPP client. `XMPP`_ is an open standard used for communication (notably
|
||||
instant messaging but not only). XMPP is a solid standard, which is decentralised and
|
||||
federated.
|
||||
|
||||
SàT is not only focusing on instant messaging, and aims to be a universal communication
|
||||
tools. In other words, you can use SàT to chat, but also to blog publicly or privately, to
|
||||
Libervia is not only focusing on instant messaging, and aims to be a universal communication
|
||||
tools. In other words, you can use Libervia to chat, but also to blog publicly or privately, to
|
||||
share file, photo albums, to create events, to have discussion forum, etc.
|
||||
|
||||
SàT is actually a whole ecosystem, and is made in a way that you can use it with many
|
||||
Libervia is actually a whole ecosystem, and is made in a way that you can use it with many
|
||||
different interfaces (or "frontends"). There is a common central part which is called the
|
||||
"backend", it handles most of the work, while frontends are mostly about the interactions
|
||||
with user(s).
|
||||
|
||||
To work, as SàT is a XMPP **client**, a XMPP **server** is needed. You can either run your
|
||||
To work, as Libervia is a XMPP **client**, a XMPP **server** is needed. You can either run your
|
||||
own, or use an existing one (either public, or run by an organisation you belong to, like
|
||||
family server, run by a friend, your company, university, association, etc.). If you want
|
||||
to run your own server, there are already plenty of them and happily most of which are
|
||||
|
|
@ -27,9 +27,9 @@ to run your own server, there are already plenty of them and happily most of whi
|
|||
on the XSF website <https://xmpp.org/software/servers.html>`_ (the XSF or *XMPP Standards
|
||||
Foundation* being the non-profit organisation taking care of the XMPP standard).
|
||||
|
||||
So to summarise, Salut à Toi, or SàT, is a communication ecosystem. Technically, it is a
|
||||
**XMPP client** which connect to an **XMPP server**. SàT itself works with a **backend**
|
||||
and one or many **frontends**.
|
||||
So to summarise, Libervia is a communication ecosystem. Technically, it is a **XMPP
|
||||
client** which connect to an **XMPP server**. Libervia itself works with a **backend** and
|
||||
one or many **frontends**.
|
||||
|
||||
.. _XMPP: https://xmpp.org
|
||||
|
||||
|
|
@ -62,22 +62,23 @@ should be started automatically when you want to use a frontend.
|
|||
|
||||
Bellow you'll see a list of the official frontends currently maintained:
|
||||
|
||||
Cagou
|
||||
-----
|
||||
Libervia Deskop/Mobile (Cagou)
|
||||
------------------------------
|
||||
|
||||
Cagou is the desktop/mobile frontend. It's probably the main interface for most users. It
|
||||
is based on the `Kivy`_ framework and should run on most platforms (for now it is
|
||||
officially tested only on GNU/Linux and Android phones and tablets).
|
||||
Libervia Desktop (alias ``Libervia Mobile`` or ``Cagou``) is the desktop/mobile frontend.
|
||||
It's probably the main interface for most users. It is based on the `Kivy`_ framework and
|
||||
should run on most platforms (for now it is officially tested only on GNU/Linux and
|
||||
Android phones and tablets).
|
||||
|
||||
.. _Kivy: https://kivy.org
|
||||
|
||||
Libervia
|
||||
--------
|
||||
Libervia Web
|
||||
------------
|
||||
|
||||
Libervia is the web frontend, and is the second main interface for most users. This
|
||||
frontend has the particularity to be in 2 parts: a server which serves HTTP content, and a
|
||||
client which runs in the browser. So you have Libervia server which connect to SàT backend
|
||||
which itself connect to the XMPP server, and your browser will connect to Libervia server.
|
||||
The Web frontend is the second main interface for most users. This frontend has the
|
||||
particularity to be in 2 parts: a server which serves HTTP content, and a client which
|
||||
runs in the browser. So you have Libervia server which connect to Libervia backend which itself
|
||||
connect to the XMPP server, and your browser will connect to Libervia server.
|
||||
|
||||
In the browser, you can access the server in two ways: either directly with what we call
|
||||
**Libervia pages**, or with a JavaScript code in `single-page application`_ which is the
|
||||
|
|
@ -88,56 +89,55 @@ JavaScript when it's possible (it's not the case for instant messaging or simila
|
|||
dynamic contents). They aims to be simple and straightforward to use.
|
||||
|
||||
The **Libervia client** is a highly dynamic web application, used to access more features.
|
||||
It's more complete and may be well adapted if you want to let SàT running in a browser tab
|
||||
It's more complete and may be well adapted if you want to let Libervia running in a browser tab
|
||||
for an extended period.
|
||||
|
||||
Please note that the current web application (SàT 0.7) will be completely rewritten for next 0.8 release.
|
||||
|
||||
Last but not least, Libervia is also the central part of the new **web framework** of
|
||||
Salut à Toi. Indeed, in addition of being a frontend to SàT features (which is built with
|
||||
this framework), you can create totally different websites which are integrated in SàT
|
||||
(and so XMPP) ecosystem. This framework uses SàT template engine (based on `Jinja2`_) and
|
||||
Libervia. Indeed, in addition of being a frontend to Libervia features (which is built with
|
||||
this framework), you can create totally different websites which are integrated in Libervia
|
||||
(and so XMPP) ecosystem. This framework uses Libervia template engine (based on `Jinja2`_) and
|
||||
makes the creation of decentralised and federated websites simple. Thanks to this framework,
|
||||
it's easy to experiment new ideas/features, or to change completely the look and feel of
|
||||
the Libervia frontend.
|
||||
|
||||
The `official SàT website`_ is made with Libervia web framework.
|
||||
The `official Libervia website`_ is made with Libervia web framework.
|
||||
|
||||
.. _single-page application: https://en.wikipedia.org/wiki/Single-page_application
|
||||
.. _Jinja2: http://jinja.pocoo.org/
|
||||
.. _official SàT website: https://salut-a-toi.org
|
||||
.. _official Libervia website: https://salut-a-toi.org
|
||||
|
||||
Primitivus
|
||||
----------
|
||||
Libervia TUI (Primitivus)
|
||||
-------------------------
|
||||
|
||||
Primitivus is the Terminal User Interface (TUI). In other words, it works in console and
|
||||
is intended for people at ease with it. Its text only interface has several advantages:
|
||||
you get rid of many distracting things (like images), it works without graphical
|
||||
environment installed (which is often the case on servers) and it works on distant shell
|
||||
(like `ssh`_) while staying gentle with your bandwidth.
|
||||
Libervia TUI (alias ``Primitivus``) is the Terminal User Interface. In other words, it
|
||||
works in console and is intended for people at ease with it. Its text only interface has
|
||||
several advantages: you get rid of many distracting things (like images), it works without
|
||||
graphical environment installed (which is often the case on servers) and it works on
|
||||
distant shell (like `ssh`_) while staying gentle with your bandwidth.
|
||||
|
||||
Primitivus is shipped with the backend, so it should be always available once SàT is
|
||||
Primitivus is shipped with the backend, so it should be always available once Libervia is
|
||||
installed (but some distributions may provide it separately).
|
||||
|
||||
You can check :doc:`Primitivus documentation <primitivus/index>` for more details.
|
||||
You can check :doc:`Libervia TUI documentation <libervia-tui/index>` for more details.
|
||||
|
||||
.. _ssh: https://en.wikipedia.org/wiki/Secure_Shell
|
||||
|
||||
jp
|
||||
--
|
||||
Libervia CLI (jp)
|
||||
-----------------
|
||||
|
||||
Jp is the Command Line Interface (CLI). It's a powerful tool which allows to do nearly
|
||||
everything you can do with other frontends. Particularly useful if you want to check
|
||||
something quickly, or if you want to do some automation.
|
||||
Libervia CLI (alias ``li`` or ``jp``) is the Command Line Interface. It's a
|
||||
powerful tool which allows to do nearly everything you can do with other frontends.
|
||||
Particularly useful if you want to check something quickly, or if you want to do some
|
||||
automation.
|
||||
|
||||
You can check :doc:`jp documentation <jp/index>` documentation for more details.
|
||||
You can check :doc:`Libervia CLI documentation <libervia-cli/index>` documentation for more details.
|
||||
|
||||
.. _glossary:
|
||||
|
||||
Glossary
|
||||
========
|
||||
|
||||
While using SàT you may see some terms or concept. This section explain the most important
|
||||
While using Libervia you may see some terms or concept. This section explain the most important
|
||||
ones.
|
||||
|
||||
profile
|
||||
|
|
@ -147,17 +147,17 @@ A profile is the name linked to an account data. Usually a profile correspond to
|
|||
account, but you can have several profiles using the same XMPP account (with different
|
||||
parameters) even if this is not usual.
|
||||
|
||||
On a SàT installation used by a single user, the profiles are usually used for multiple
|
||||
On a Libervia installation used by a single user, the profiles are usually used for multiple
|
||||
accounts. On a multi-users installations, there is usually one profile per user.
|
||||
|
||||
When you connect to a SàT frontend, you need to specify a profile and the associated password. The profile password is not the same as the password of the XMPP account. While this may sounds confusing, there are several reason why we use this notion of profile instead of directly the XMPP account/password:
|
||||
When you connect to a Libervia frontend, you need to specify a profile and the associated password. The profile password is not the same as the password of the XMPP account. While this may sounds confusing, there are several reason why we use this notion of profile instead of directly the XMPP account/password:
|
||||
|
||||
- SàT needs to know the plain XMPP password to connect, and it is encrypted in database.
|
||||
- Libervia needs to know the plain XMPP password to connect, and it is encrypted in database.
|
||||
The profile password is used to encrypt/decrypt it, this way only a `password hash`_ is
|
||||
stored and the XMPP password is encrypted `at rest`_.
|
||||
|
||||
- As a further benefit, several passwords could be associated to the same profile (this
|
||||
feature is currently not used in SàT).
|
||||
feature is currently not used in Libervia).
|
||||
|
||||
- profile password can be empty, in which case no password is requested when a profile is
|
||||
used
|
||||
|
|
@ -186,7 +186,7 @@ most important one is ``@DEFAULT@`` which, as you can guess, means the default p
|
|||
bridge
|
||||
------
|
||||
|
||||
The "bridge" is the name used to design Salut à Toi's `IPC`_, or in other words the way
|
||||
The "bridge" is the name used to design Libervia's `IPC`_, or in other words the way
|
||||
the backend communicate with frontends. Several bridges can be used, the default one being
|
||||
`D-Bus`_.
|
||||
|
||||
|
|
@ -205,47 +205,47 @@ embedded
|
|||
.. _Perspective Broker: https://twistedmatrix.com/documents/current/core/howto/pb-intro.html
|
||||
.. _Twisted: https://twistedmatrix.com
|
||||
|
||||
SàT Media
|
||||
---------
|
||||
Libervia Media
|
||||
--------------
|
||||
|
||||
Most of the frontends use images or other media. To avoid duplication and to make the code
|
||||
repositories lighter, those media are grouped in a separate repository. The SàT media
|
||||
repositories lighter, those media are grouped in a separate repository. The Libervia media
|
||||
repository is available at https://repos.goffi.org/sat_media. You can also download media
|
||||
at https://ftp.goffi.org/sat_media/sat_media.tar.bz2. The path where SàT media are
|
||||
at https://ftp.goffi.org/sat_media/sat_media.tar.bz2. The path where Libervia media are
|
||||
installed must be specified in ``sat.conf`` in ``media_dir`` option of the ``[DEFAULT``
|
||||
section.
|
||||
|
||||
SàT Templates
|
||||
-------------
|
||||
Libervia Templates
|
||||
------------------
|
||||
|
||||
SàT embeds a `Jinja2`_ template engine (see `Libervia`_ above). "SàT templates" refers to
|
||||
the default templates (i.e. the official templates, the ones used in default Libervia pages). Those template may also be used by other frontends than Libervia (jp can use them with the :ref:`jp-output` arguments).
|
||||
Libervia embeds a `Jinja2`_ template engine (see `Libervia Web`_ above). "Libervia templates" refers to
|
||||
the default templates (i.e. the official templates, the ones used in default Libervia pages). Those template may also be used by other frontends than Libervia (jp can use them with the :ref:`libervia-cli_output` arguments).
|
||||
|
||||
SàT templates repository is available at https://repos.goffi.org/sat_templates, they can
|
||||
Libervia templates repository is available at https://repos.goffi.org/sat_templates, they can
|
||||
also be downloaded at `PyPI <https://pypi.org/project/sat-templates/>`_ and will be
|
||||
installed automatically if you install Libervia.
|
||||
|
||||
Related projects
|
||||
================
|
||||
|
||||
Some project are closely related to Salut à Toi, here is a list of official related
|
||||
Some project are closely related to Libervia, here is a list of official related
|
||||
project.
|
||||
|
||||
SàT PubSub
|
||||
----------
|
||||
Libervia PubSub
|
||||
---------------
|
||||
|
||||
Numerous features of Salut à Toi are taking profit of `PubSub`_ functionalities of XMPP.
|
||||
Numerous features of Libervia are taking profit of `PubSub`_ functionalities of XMPP.
|
||||
Because PubSub implementations in the wild are not all on the same level, and some
|
||||
experimental features are sometimes explored, a PubSub service as been written
|
||||
specifically for the needs of SàT (but it's not depending on SàT and any XMPP software can
|
||||
specifically for the needs of Libervia (but it's not depending on Libervia and any XMPP software can
|
||||
use it).
|
||||
|
||||
SàT PubSub aims to be a feature complete, server-independent PubSub implementation, and
|
||||
Libervia PubSub aims to be a feature complete, server-independent PubSub implementation, and
|
||||
try to be up-to-date with latest XMPP PubSub extensions. It is the privileged service to
|
||||
use with SàT because it supports everything needed (but SàT can work with any XMPP PubSub
|
||||
use with Libervia because it supports everything needed (but Libervia can work with any XMPP PubSub
|
||||
service, it will adapt itself to available features).
|
||||
|
||||
SàT PubSub can also be used as a `PEP`_ service, if some XMPP extensions are supported by
|
||||
Libervia PubSub can also be used as a `PEP`_ service, if some XMPP extensions are supported by
|
||||
your server (see below).
|
||||
|
||||
.. _PubSub: https://xmpp.org/about/technology-overview.html#pubsub
|
||||
|
|
@ -254,23 +254,23 @@ your server (see below).
|
|||
XMPP Extension Protocols
|
||||
------------------------
|
||||
|
||||
For the needs of SàT or SàT PubSub, some `XMPP Extension Protocols`_ (or XEP) have been
|
||||
For the needs of Libervia or Libervia PubSub, some `XMPP Extension Protocols`_ (or XEP) have been
|
||||
proposed and got an official number. The current list of extensions is:
|
||||
|
||||
`XEP-0355`_: Namespace Delegation
|
||||
This has been proposed for the needs of SàT PubSub, and allows the XMPP server to
|
||||
"delegate" some features management to a third party service. It is needed to use SàT
|
||||
This has been proposed for the needs of Libervia PubSub, and allows the XMPP server to
|
||||
"delegate" some features management to a third party service. It is needed to use Libervia
|
||||
Pubsub as a PEP service.
|
||||
|
||||
`XEP-0356`_: Privileged Entity
|
||||
In the same spirit as previous one, this has been done so SàT PubSub could be used as a
|
||||
In the same spirit as previous one, this has been done so Libervia PubSub could be used as a
|
||||
PEP service. This extensions allows a "component" (which is more or less a server
|
||||
generic plugin) to gain some privileged access to data such as presence information,
|
||||
roster or to send a message like if it was sent by the server.
|
||||
|
||||
`XEP-0413`_: Order-By
|
||||
This extension is used to specify the sorting order in which a client wishes to retrieve
|
||||
some results. It is notably used by SàT and SàT PubSub to retrieve items like blog posts
|
||||
some results. It is notably used by Libervia and Libervia PubSub to retrieve items like blog posts
|
||||
or tickets in creation order or order of last modification.
|
||||
|
||||
.. _XEP-0355: https://xmpp.org/extensions/xep-0355.html
|
||||
|
|
@ -284,19 +284,19 @@ Prosody's `mod_delegation`_ and `mod_privilege`_
|
|||
|
||||
Prosody modules have been created to implement the *Namespace Delegation* and *Privileged
|
||||
Entity* extensions mentioned above. If you use Prosody, you'll have to activate those 2
|
||||
modules to use SàT PubSub as a PEP service.
|
||||
modules to use Libervia PubSub as a PEP service.
|
||||
|
||||
.. _mod_privilege: https://modules.prosody.im/mod_privilege.html
|
||||
.. _mod_delegation: https://modules.prosody.im/mod_delegation.html
|
||||
|
||||
SàT official website
|
||||
--------------------
|
||||
Libervia official website
|
||||
-------------------------
|
||||
|
||||
The official website is made with Libervia web framework. You'll find it at https://repos.goffi.org/sat_web_site
|
||||
|
||||
Salut
|
||||
-----
|
||||
Probably the smaller side project used by SàT, it is a simple users directory (registration must be done explicitly by users) using `XEP-0055`_ (Jabber Search).
|
||||
Probably the smaller side project used by Libervia, it is a simple users directory (registration must be done explicitly by users) using `XEP-0055`_ (Jabber Search).
|
||||
|
||||
You'll find it at https://repos.goffi.org/salut/
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue