From bbc55fa40eaaed6bb57fddd2e9cc5eb1d3baa8cc Mon Sep 17 00:00:00 2001 From: Florent Le Coz Date: Sun, 4 May 2014 18:23:10 +0200 Subject: Add the /ad-hoc command to list commands of the given jid --- src/core/commands.py | 16 ++++++++++++++++ src/core/core.py | 4 ++++ 2 files changed, 20 insertions(+) (limited to 'src/core') diff --git a/src/core/commands.py b/src/core/commands.py index d4df1099..c2e453e9 100644 --- a/src/core/commands.py +++ b/src/core/commands.py @@ -940,6 +940,22 @@ def command_xml_tab(self, arg=''): tab = tabs.XMLTab() self.add_tab(tab, True) +def command_adhoc(self, arg): + arg = arg.split() + if len(arg) > 1: + return self.command_help('list') + elif arg: + jid = safeJID(arg[0]).server + else: + return self.information('Please provide a jid', 'Error') + list_tab = tabs.AdhocCommandsListTab(jid) + self.add_tab(list_tab, True) + cb = list_tab.on_list_received + self.xmpp.plugin['xep_0050'].get_commands(jid=jid, + local=False, + block=False, + callback=cb) + def command_self(self, arg=None): """ /self diff --git a/src/core/core.py b/src/core/core.py index d49845dc..d53782b5 100644 --- a/src/core/core.py +++ b/src/core/core.py @@ -1809,6 +1809,9 @@ class Core(object): desc=_('Informs you of the last activity of a JID.'), shortdesc=_('Get the activity of someone.'), completion=self.completion_last_activity) + self.register_command('ad-hoc', self.command_adhoc, + usage='', + shortdesc=_('List available ad-hoc commands on the given jid')) if config.get('enable_user_activity', True): self.register_command('activity', self.command_activity, @@ -1921,6 +1924,7 @@ class Core(object): command_plugins = commands.command_plugins command_message = commands.command_message command_xml_tab = commands.command_xml_tab + command_adhoc = commands.command_adhoc command_self = commands.command_self completion_help = completions.completion_help completion_status = completions.completion_status -- cgit v1.2.3