Mercurial > libervia-backend
view doc/libervia-cli/pubsub_node_schema.rst @ 4240:79c8a70e1813
backend, frontend: prepare remote control:
This is a series of changes necessary to prepare the implementation of remote control
feature:
- XEP-0166: add a `priority` attribute to `ApplicationData`: this is needed when several
applications are working in a same session, to know which one must be handled first.
Will be used to make Remote Control have precedence over Call content.
- XEP-0166: `_call_plugins` is now async and is not used with `DeferredList` anymore: the
benefit to have methods called in parallels is very low, and it cause a lot of trouble
as we can't predict order. Methods are now called sequentially so workflow can be
predicted.
- XEP-0167: fix `senders` XMPP attribute <=> SDP mapping
- XEP-0234: preflight acceptance key is now `pre-accepted` instead of `file-accepted`, so
the same key can be used with other jingle applications.
- XEP-0167, XEP-0343: move some method to XEP-0167
- XEP-0353: use new `priority` feature to call preflight methods of applications according
to it.
- frontend (webrtc): refactor the sources/sink handling with a more flexible mechanism
based on Pydantic models. It is now possible to have has many Data Channel as necessary,
to have them in addition to A/V streams, to specify manually GStreamer sources and
sinks, etc.
- frontend (webrtc): rework of the pipeline to reduce latency.
- frontend: new `portal_desktop` method. Screenshare portal handling has been moved there,
and RemoteDesktop portal has been added.
- frontend (webrtc): fix `extract_ufrag_pwd` method.
rel 436
author | Goffi <goffi@goffi.org> |
---|---|
date | Sat, 11 May 2024 13:52:41 +0200 |
parents | 267e4987b58b |
children |
line wrap: on
line source
.. _libervia-cli_pubsub_node_schema: ========================================= pubsub/node/schema: nodes schema handling ========================================= ``node schema`` is an experimental feature to associate a data form with a PubSub node, and reject items not following this form. This feature is currently only available with Libervia PubSub. Those commands can only be used by an owner of the node. set === Set the schema of a node. The raw schema is written directly as positional argument. example ------- Set the schema for tickets node using the file ``tickets_schema.xml`` from ``$HOME`` directory. Shell substition is used here to put the content of the file in the positional argument:: $ li pubsub node schema set -n org.salut-a-toi.tickets:0 -s pubsub.example.org "$(<~/test_schema.xml)" edit ==== Edit the schema of a node using your local editor (the one set in ``$EDITOR``). If you don't change anything or publish an empty schema, the edition will be cancelled. :ref:`draft_common` commands can be used. example ------- Edit the tickets node schema:: $ li pubsub node schema edit -n org.salut-a-toi.tickets:0 -s pubsub.example.org example ------- get === Retrieve schema of a node. example ------- Get schema of tickets and save it to a file named ``tickets_schema.xml`` in ``$HOME`` directory:: $ li pubsub node schema get -n org.salut-a-toi.tickets:0 -s pubsub.example.org > ~/tickets_schema.xml