summaryrefslogtreecommitdiff
path: root/src/tabs.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/tabs.py')
-rw-r--r--src/tabs.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/tabs.py b/src/tabs.py
index 43dcb2b9..b4d4ef44 100644
--- a/src/tabs.py
+++ b/src/tabs.py
@@ -1859,6 +1859,7 @@ class ConversationTab(ChatTab):
# commands
self.commands['unquery'] = (self.command_unquery, _("Usage: /unquery\nUnquery: close the tab"), None)
self.commands['close'] = (self.command_unquery, _("Usage: /close\Close: close the tab"), None)
+ self.commands['version'] = (self.command_version, _('Usage: /version\nVersion: get the software version of the current interlocutor (usually its XMPP client and Operating System)'), None)
self.resize()
def completion(self):
@@ -1885,6 +1886,21 @@ class ConversationTab(ChatTab):
def command_unquery(self, arg):
self.core.close_tab()
+ def command_version(self, arg):
+ """
+ /version
+ """
+ def callback(res):
+ if not res:
+ return self.core.information('Could not get the software version from %s' % (jid,), 'Warning')
+ version = '%s is running %s version %s on %s' % (jid,
+ res.get('name') or _('an unknown software'),
+ res.get('version') or _('unknown'),
+ res.get('os') or _('on an unknown platform'))
+ self.core.information(version, 'Info')
+ jid = self._name
+ self.core.xmpp.plugin['xep_0092'].get_version(jid, callback=callback)
+
def resize(self):
if self.core.information_win_size >= self.height-3 or not self.visible:
return