Mercurial > libervia-backend
view doc/jp/pubsub_node_schema.rst @ 3213:c2f958dde5d2
plugin XEP-0060: async sendItems + precondition-not-met policy:
- sendItems is now an "async" coroutine, and sendItem use it instead of duplicating
publication logic
- policy to use when a precondition is not met (with publish-options) can now be
specified, for now it's either raise the exception (default policy), or try to publish
without the options
- constants have been added to handle "extra" keys
author | Goffi <goffi@goffi.org> |
---|---|
date | Wed, 11 Mar 2020 19:15:48 +0100 |
parents | 72583524cfd3 |
children |
line wrap: on
line source
.. _jp-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 SàT 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:: $ jp 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:: $ jp 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:: $ jp pubsub node schema get -n org.salut-a-toi.tickets:0 -s pubsub.example.org > ~/tickets_schema.xml