summaryrefslogtreecommitdiff
path: root/sleekxmpp/plugins/xep_0107
diff options
context:
space:
mode:
Diffstat (limited to 'sleekxmpp/plugins/xep_0107')
-rw-r--r--sleekxmpp/plugins/xep_0107/__init__.py16
-rw-r--r--sleekxmpp/plugins/xep_0107/stanza.py55
-rw-r--r--sleekxmpp/plugins/xep_0107/user_mood.py93
3 files changed, 0 insertions, 164 deletions
diff --git a/sleekxmpp/plugins/xep_0107/__init__.py b/sleekxmpp/plugins/xep_0107/__init__.py
deleted file mode 100644
index 04302df8..00000000
--- a/sleekxmpp/plugins/xep_0107/__init__.py
+++ /dev/null
@@ -1,16 +0,0 @@
-"""
- SleekXMPP: The Sleek XMPP Library
- Copyright (C) 2012 Nathanael C. Fritz, Lance J.T. Stout
- This file is part of SleekXMPP.
-
- See the file LICENSE for copying permission.
-"""
-
-from sleekxmpp.plugins.base import register_plugin
-
-from sleekxmpp.plugins.xep_0107 import stanza
-from sleekxmpp.plugins.xep_0107.stanza import UserMood
-from sleekxmpp.plugins.xep_0107.user_mood import XEP_0107
-
-
-register_plugin(XEP_0107)
diff --git a/sleekxmpp/plugins/xep_0107/stanza.py b/sleekxmpp/plugins/xep_0107/stanza.py
deleted file mode 100644
index 2c5814ea..00000000
--- a/sleekxmpp/plugins/xep_0107/stanza.py
+++ /dev/null
@@ -1,55 +0,0 @@
-"""
- SleekXMPP: The Sleek XMPP Library
- Copyright (C) 2012 Nathanael C. Fritz, Lance J.T. Stout
- This file is part of SleekXMPP.
-
- See the file LICENSE for copying permission.
-"""
-
-from sleekxmpp.xmlstream import ElementBase, ET
-
-
-class UserMood(ElementBase):
-
- name = 'mood'
- namespace = 'http://jabber.org/protocol/mood'
- plugin_attrib = 'mood'
- interfaces = set(['value', 'text'])
- sub_interfaces = set(['text'])
- moods = set(['afraid', 'amazed', 'amorous', 'angry', 'annoyed', 'anxious',
- 'aroused', 'ashamed', 'bored', 'brave', 'calm', 'cautious',
- 'cold', 'confident', 'confused', 'contemplative', 'contented',
- 'cranky', 'crazy', 'creative', 'curious', 'dejected',
- 'depressed', 'disappointed', 'disgusted', 'dismayed',
- 'distracted', 'embarrassed', 'envious', 'excited',
- 'flirtatious', 'frustrated', 'grateful', 'grieving', 'grumpy',
- 'guilty', 'happy', 'hopeful', 'hot', 'humbled', 'humiliated',
- 'hungry', 'hurt', 'impressed', 'in_awe', 'in_love',
- 'indignant', 'interested', 'intoxicated', 'invincible',
- 'jealous', 'lonely', 'lost', 'lucky', 'mean', 'moody',
- 'nervous', 'neutral', 'offended', 'outraged', 'playful',
- 'proud', 'relaxed', 'relieved', 'remorseful', 'restless',
- 'sad', 'sarcastic', 'satisfied', 'serious', 'shocked',
- 'shy', 'sick', 'sleepy', 'spontaneous', 'stressed', 'strong',
- 'surprised', 'thankful', 'thirsty', 'tired', 'undefined',
- 'weak', 'worried'])
-
- def set_value(self, value):
- self.del_value()
- if value in self.moods:
- self._set_sub_text(value, '', keep=True)
- else:
- raise ValueError('Unknown mood value')
-
- def get_value(self):
- for child in self.xml:
- if child.tag.startswith('{%s}' % self.namespace):
- elem_name = child.tag.split('}')[-1]
- if elem_name in self.moods:
- return elem_name
- return ''
-
- def del_value(self):
- curr_value = self.get_value()
- if curr_value:
- self._set_sub_text(curr_value, '', keep=False)
diff --git a/sleekxmpp/plugins/xep_0107/user_mood.py b/sleekxmpp/plugins/xep_0107/user_mood.py
deleted file mode 100644
index 2d2f3551..00000000
--- a/sleekxmpp/plugins/xep_0107/user_mood.py
+++ /dev/null
@@ -1,93 +0,0 @@
-"""
- SleekXMPP: The Sleek XMPP Library
- Copyright (C) 2011 Nathanael C. Fritz, Lance J.T. Stout
- This file is part of SleekXMPP.
-
- See the file LICENSE for copying permission.
-"""
-
-import logging
-
-from sleekxmpp import Message
-from sleekxmpp.xmlstream import register_stanza_plugin
-from sleekxmpp.xmlstream.handler import Callback
-from sleekxmpp.xmlstream.matcher import MatchXPath
-from sleekxmpp.plugins.base import BasePlugin
-from sleekxmpp.plugins.xep_0107 import stanza, UserMood
-
-
-log = logging.getLogger(__name__)
-
-
-class XEP_0107(BasePlugin):
-
- """
- XEP-0107: User Mood
- """
-
- name = 'xep_0107'
- description = 'XEP-0107: User Mood'
- dependencies = set(['xep_0163'])
- stanza = stanza
-
- def plugin_init(self):
- register_stanza_plugin(Message, UserMood)
-
- def plugin_end(self):
- self.xmpp['xep_0030'].del_feature(feature=UserMood.namespace)
- self.xmpp['xep_0163'].remove_interest(UserMood.namespace)
-
- def session_bind(self, jid):
- self.xmpp['xep_0163'].register_pep('user_mood', UserMood)
-
- def publish_mood(self, value=None, text=None, options=None,
- ifrom=None, block=True, callback=None, timeout=None):
- """
- Publish the user's current mood.
-
- Arguments:
- value -- The name of the mood to publish.
- text -- Optional natural-language description or reason
- for the mood.
- options -- Optional form of publish options.
- ifrom -- Specify the sender's JID.
- block -- Specify if the send call will block until a response
- is received, or a timeout occurs. Defaults to True.
- timeout -- The length of time (in seconds) to wait for a response
- before exiting the send call if blocking is used.
- Defaults to sleekxmpp.xmlstream.RESPONSE_TIMEOUT
- callback -- Optional reference to a stream handler function. Will
- be executed when a reply stanza is received.
- """
- mood = UserMood()
- mood['value'] = value
- mood['text'] = text
- return self.xmpp['xep_0163'].publish(mood,
- node=UserMood.namespace,
- options=options,
- ifrom=ifrom,
- block=block,
- callback=callback,
- timeout=timeout)
-
- def stop(self, ifrom=None, block=True, callback=None, timeout=None):
- """
- Clear existing user mood information to stop notifications.
-
- Arguments:
- ifrom -- Specify the sender's JID.
- block -- Specify if the send call will block until a response
- is received, or a timeout occurs. Defaults to True.
- timeout -- The length of time (in seconds) to wait for a response
- before exiting the send call if blocking is used.
- Defaults to sleekxmpp.xmlstream.RESPONSE_TIMEOUT
- callback -- Optional reference to a stream handler function. Will
- be executed when a reply stanza is received.
- """
- mood = UserMood()
- return self.xmpp['xep_0163'].publish(mood,
- node=UserMood.namespace,
- ifrom=ifrom,
- block=block,
- callback=callback,
- timeout=timeout)