# HG changeset patch # User Goffi # Date 1457539169 -3600 # Node ID 29564cec913f0dccf0430cdcc9565d133cbc0e49 # Parent 085f29c20f7ee7831fa52ff99a7e6bc72c7e2e49 plugin XEP-0060: service, node and uri are added to metadata when doing a getItems diff -r 085f29c20f7e -r 29564cec913f src/plugins/plugin_xep_0060.py --- a/src/plugins/plugin_xep_0060.py Wed Mar 09 14:33:54 2016 +0100 +++ b/src/plugins/plugin_xep_0060.py Wed Mar 09 16:59:29 2016 +0100 @@ -281,6 +281,7 @@ - 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 """ if rsm_request and item_ids: raise ValueError(u"items_id can't be used with rsm") @@ -328,10 +329,12 @@ def addMetadata(result): items, rsm_response = result + metadata = {'service': service or client.jid.host, + 'node': node, + 'uri': self.getNodeURI(service, node), + } if rsm_request is not None and rsm_response is not None: - metadata = {'rsm_{}'.format(key): value for key, value in rsm_response.toDict().iteritems()} - else: - metadata = {} + metadata.update({'rsm_{}'.format(key): value for key, value in rsm_response.toDict().iteritems()}) return (items, metadata) d.addCallback(addMetadata) diff -r 085f29c20f7e -r 29564cec913f src/tools/xml_tools.py --- a/src/tools/xml_tools.py Wed Mar 09 14:33:54 2016 +0100 +++ b/src/tools/xml_tools.py Wed Mar 09 16:59:29 2016 +0100 @@ -39,6 +39,7 @@ html_entity_re = re.compile(r'&([a-zA-Z]+?);') XML_ENTITIES = ('quot', 'amp', 'apos', 'lt', 'gt') +# TODO: move XMLUI stuff in a separate module # Helper functions