# HG changeset patch # User Goffi # Date 1623000919 -7200 # Node ID 3fd60beb9b92def83b62b820dcc5d964d10aa1ad # Parent 13e7ef10658992e693a60cb5233f00076a10bd59 plugin forums: use serialised data for extra in forumTopicsGet diff -r 13e7ef106589 -r 3fd60beb9b92 sat/plugins/plugin_misc_forums.py --- a/sat/plugins/plugin_misc_forums.py Fri Jun 04 17:18:44 2021 +0200 +++ b/sat/plugins/plugin_misc_forums.py Sun Jun 06 19:35:19 2021 +0200 @@ -21,7 +21,7 @@ from sat.core.constants import Const as C from sat.core import exceptions from sat.core.log import getLogger -from sat.tools.common import uri +from sat.tools.common import uri, data_format from twisted.words.protocols.jabber import jid from twisted.words.xish import domish from twisted.internet import defer @@ -73,7 +73,7 @@ method=self._set, async_=True) host.bridge.addMethod("forumTopicsGet", ".plugin", - in_sign='ssa{ss}s', out_sign='(aa{ss}a{ss})', + in_sign='ssa{ss}s', out_sign='(aa{ss}s)', method=self._getTopics, async_=True) host.bridge.addMethod("forumTopicCreate", ".plugin", @@ -249,7 +249,9 @@ client = self.host.getClient(profile_key) extra = self._p.parseExtra(extra) d = self.getTopics(client, jid.JID(service), node, rsm_request=extra.rsm_request, extra=extra.extra) - d.addCallback(lambda topics_metadata: (topics_metadata[0], {k: str(v) for k,v in topics_metadata[1].items()})) + d.addCallback( + lambda topics_data: (topics_data[0], data_format.serialise(topics_data[1])) + ) return d @defer.inlineCallbacks