plugin XEP-0060: getItems extra is now serialised dict

This commit is contained in:
Goffi 2021-07-28 23:01:15 +02:00
commit f2a06bbcbf

View file

@ -118,7 +118,7 @@ class XEP_0277(object):
host.bridge.addMethod(
"mbGet",
".plugin",
in_sign="ssiasa{ss}s",
in_sign="ssiasss",
out_sign="s",
method=self._mbGet,
async_=True,
@ -931,7 +931,7 @@ class XEP_0277(object):
metadata['items'] = items
return data_format.serialise(metadata)
def _mbGet(self, service="", node="", max_items=10, item_ids=None, extra_dict=None,
def _mbGet(self, service="", node="", max_items=10, item_ids=None, extra="",
profile_key=C.PROF_KEY_NONE):
"""
@param max_items(int): maximum number of item to get, C.NO_LIMIT for no limit
@ -940,7 +940,7 @@ class XEP_0277(object):
client = self.host.getClient(profile_key)
service = jid.JID(service) if service else None
max_items = None if max_items == C.NO_LIMIT else max_items
extra = self._p.parseExtra(extra_dict)
extra = self._p.parseExtra(data_format.deserialise(extra))
d = defer.ensureDeferred(
self.mbGet(client, service, node or None, max_items, item_ids,
extra.rsm_request, extra.extra)