diff --git a/libervia/backend/plugins/plugin_xep_0060.py b/libervia/backend/plugins/plugin_xep_0060.py index 9cbf4161..4d64f52d 100644 --- a/libervia/backend/plugins/plugin_xep_0060.py +++ b/libervia/backend/plugins/plugin_xep_0060.py @@ -987,20 +987,31 @@ class XEP_0060: """Retrieve pubsub items from a node. @param service: pubsub service. + If None, use profile's PEP. @param node: node id. @param max_items: optional limit on the number of retrieved items. + Can't be used with MAM. @param item_ids (list[str]): identifiers of the items to be retrieved (can't be used with rsm_request). If requested items don't exist, they won't be returned, meaning that we can have an empty list as result (NotFound exception is NOT raised). @param sub_id : optional subscription identifier. @param rsm_request: RSM request data - @return: a deferred tuple containing: - - list of items - - metadata with the following keys: - - rsm_first, rsm_last, rsm_count, rsm_index: first, last, count and index - value of RSMResponse - - service, node: service and node used + @param extra: extra data, with the following keys: + - mam: MAM query (dict) to retrieve archives instead of pubsub items + - order_by: ordering of the pubsub items + - subscribe: if True, subscribe to the node + - encrypted: encrypted metadata to add to the result + @return: a tuple containing: + - list of items (domish elements) + - metadata dict with the following keys: + - service: service JID used + - node: node used + - uri: node URI + - rsm: RSM response data (first, last, index, count), if ``rsm_request`` + is set + - complete, stable: MAM completeness data, if MAM is used + - encrypted: if present in ``extra`` """ if rsm_request is not None: # For the moment we convert RSMRequest to tx_xmpp rsm.RSMRequest for backward