plugin XEP-0060: serialise psItemsGet result with data_format

This commit is contained in:
Goffi 2020-07-17 12:57:23 +02:00
commit f8b346e115

View file

@ -190,7 +190,7 @@ class XEP_0060(object):
"psItemsGet",
".plugin",
in_sign="ssiassa{ss}s",
out_sign="(asa{ss})",
out_sign="s",
method=self._getItems,
async_=True,
)
@ -599,6 +599,11 @@ class XEP_0060(object):
raise exceptions.DataError("Can't find Item in MAM message element")
return item_elt
def serialiseItems(self, items_data):
items, metadata = items_data
metadata['items'] = items
return data_format.serialise(metadata)
def _getItems(self, service="", node="", max_items=10, item_ids=None, sub_id=None,
extra_dict=None, profile_key=C.PROF_KEY_NONE):
"""Get items from pubsub node
@ -620,6 +625,7 @@ class XEP_0060(object):
extra.extra,
)
d.addCallback(self.transItemsData)
d.addCallback(self.serialiseItems)
return d
def getItems(self, client, service, node, max_items=None, item_ids=None, sub_id=None,