Add a manual CSI plugin
This commit is contained in:
parent
c00cfecdf8
commit
0a2238def5
3 changed files with 57 additions and 0 deletions
6
doc/source/plugins/csi.rst
Normal file
6
doc/source/plugins/csi.rst
Normal file
|
@ -0,0 +1,6 @@
|
|||
.. _csi-plugin:
|
||||
|
||||
CSI
|
||||
===
|
||||
|
||||
.. automodule:: csi
|
|
@ -87,6 +87,11 @@ Plugin index
|
|||
|
||||
Close all tabs except MUCs and the roster.
|
||||
|
||||
CSI
|
||||
:ref:`Documentation <csi-plugin>`
|
||||
|
||||
Set the client state indication manually.
|
||||
|
||||
Cyber
|
||||
:ref:`Documentation <cyber-plugin>`
|
||||
|
||||
|
@ -303,3 +308,4 @@ Plugin index
|
|||
close_all
|
||||
reorder
|
||||
cyber
|
||||
csi
|
||||
|
|
45
plugins/csi.py
Normal file
45
plugins/csi.py
Normal file
|
@ -0,0 +1,45 @@
|
|||
"""
|
||||
This plugin lets you set the CSI_ state manually, when the autoaway plugin
|
||||
is not sufficient for your usage.
|
||||
|
||||
Commands
|
||||
--------
|
||||
|
||||
.. glossary::
|
||||
|
||||
/csi_active
|
||||
**Usage:** ``/csi_active``
|
||||
|
||||
Set CSI state to ``active``.
|
||||
|
||||
/csi_inactive
|
||||
**Usage:** ``/csi_inactive``
|
||||
|
||||
Set CSI state to ``inactive``.
|
||||
|
||||
.. _CSI: https://xmpp.org/extensions/xep-0352.html
|
||||
"""
|
||||
|
||||
from plugin import BasePlugin
|
||||
import tabs
|
||||
|
||||
class Plugin(BasePlugin):
|
||||
def init(self):
|
||||
self.api.add_command('csi_active', self.command_active,
|
||||
help='Set the client state indication to “active”',
|
||||
short='Manual set active')
|
||||
self.api.add_command('csi_inactive', self.command_inactive,
|
||||
help='Set the client state indication to “inactive”',
|
||||
short='Manual set inactive')
|
||||
|
||||
def command_active(self, args):
|
||||
if not self.core.xmpp.plugin['xep_0352'].enabled:
|
||||
self.api.information('CSI is not enabled in this server', 'Warning')
|
||||
else:
|
||||
self.core.xmpp.plugin['xep_0352'].send_active()
|
||||
|
||||
def command_inactive(self, args):
|
||||
if not self.core.xmpp.plugin['xep_0352'].enabled:
|
||||
self.api.information('CSI is not enabled in this server', 'Warning')
|
||||
else:
|
||||
self.core.xmpp.plugin['xep_0352'].send_inactive()
|
Loading…
Reference in a new issue