summaryrefslogtreecommitdiff
path: root/sleekxmpp/plugins
diff options
context:
space:
mode:
authorTom Nichols <tmnichols@gmail.com>2010-07-02 17:14:37 -0400
committerTom Nichols <tmnichols@gmail.com>2010-07-02 17:14:37 -0400
commitd381ab320aa8c285d80b0384c8bbaf461639e366 (patch)
treec1cf237a19958313146018495a0844170641b0f1 /sleekxmpp/plugins
parent6e93982fdf9c66673ad298148beaefc725f9440c (diff)
parent4b00baab1e99efe0a075116337422da4eb18b37f (diff)
downloadslixmpp-d381ab320aa8c285d80b0384c8bbaf461639e366.tar.gz
slixmpp-d381ab320aa8c285d80b0384c8bbaf461639e366.tar.bz2
slixmpp-d381ab320aa8c285d80b0384c8bbaf461639e366.tar.xz
slixmpp-d381ab320aa8c285d80b0384c8bbaf461639e366.zip
merged changes from origin/hacks
Diffstat (limited to 'sleekxmpp/plugins')
-rw-r--r--sleekxmpp/plugins/xep_0047.py52
1 files changed, 52 insertions, 0 deletions
diff --git a/sleekxmpp/plugins/xep_0047.py b/sleekxmpp/plugins/xep_0047.py
new file mode 100644
index 00000000..beaadcdc
--- /dev/null
+++ b/sleekxmpp/plugins/xep_0047.py
@@ -0,0 +1,52 @@
+'''
+Created on Jul 1, 2010
+
+@author: bbeggs
+'''
+from . import base
+import logging
+import threading
+from xml.etree import cElementTree as ET
+
+class xep_0047(base.base_plugin):
+ '''
+ In-band file transfer for xmpp.
+
+ Both message and iq transfer is supported with message being attempted first.
+ '''
+
+ def plugin_init(self):
+ self.xep = 'xep-047'
+ self.description = 'in-band file transfer'
+ self.acceptTransfers = self.config.get('acceptTransfers', True)
+ self.saveDirectory = self.config.get('saveDirectory', '/tmp')
+ self.stanzaType = self.config.get('stanzaType', 'message')
+ self.maxSendThreads = self.config.get('maxSendThreads', 1)
+ self.maxReceiveThreads = self.config.get('maxReceiveThreads', 1)
+
+ #thread setup
+ self.receiveThreads = {} #id:thread
+ self.sendThreads = {}
+
+ #add handlers to listen for incoming requests
+ self.xmpp.add_handler("<iq><open xmlns='http://jabber.org/protocol/ibb' /></iq>", self._handleIncomingTransferRequest)
+
+ def post_init(self):
+ self.post_inited = True
+
+
+ def sendFile(self, filePath, threaded=True):
+ #TODO use this method to send a file
+ pass
+
+ def _handleIncomingTransferRequest(self, xml):
+ pass
+
+class receiverThread(threading.Thread):
+ def run(self):
+ pass
+
+class senderThread(threading.Thread):
+ def run(self):
+ pass
+