summaryrefslogtreecommitdiff
path: root/sleekxmpp/plugins
AgeCommit message (Collapse)Author
2011-08-17Update plugins that use Iq stanzas to work with new exceptions.Lance Stout
2011-08-17Return '' instead of None from form fields with no values.Lance Stout
2011-08-13Add form.field back in for backwards compatibility.Lance Stout
2011-08-13Add tests for setting a form's type to 'submit' or 'cancel'.Lance Stout
Form fields now remember their current type if the type is deleted. This allows for fields to properly format their values if set after the form has been changed to the 'submit' type.
2011-08-13Update XEP-0050 to use new IQ exceptions.Lance Stout
IqError is now caught and forwarded to the command error handler referenced in the session. Errors are now caught and processed by the session's error handler whether or not the results Iq stanza includes the <command> substanza. Added the option for blocking command calls. The blocking option is set during start_command with block=True. Subsequent command flow methods use session['block'] to determine their blocking behaviour. If you use blocking commands, then you will need to wrap your command calls in a try/except block for IqTimeout exceptions.
2011-08-12Merge branch 'develop' of github.com:fritzy/SleekXMPP into developNathan Fritz
2011-08-12fixed indenting and merged in exceptions branchNathan Fritz
2011-08-12updated pubsub plugin to use stanzasNathan Fritz
2011-08-11Reorganize XEP-0004.Lance Stout
Changes: May now use underscored method names form.field is replaced by form['fields'] form.get_fields no longer accepts use_dict parameter, it always returns an OrderedDict now form.set_fields will accept either an OrderedDict, or a list of (var, dict) tuples as before. Setting the form type to 'submit' will remove extra meta data from the form fields, leaving just the 'var' and 'value' Setting the form type to 'cancel' will remove all fields.
2011-08-10Don't include ping stanza in the ping result.Lance Stout
2011-08-06Fix XEP-0078 using the new stream feature workflow.Lance Stout
Honestly, this is mainly just a demo/proof of concept that we can handle dependencies and ordering issues with stream features. DON'T use XEP-0078 if you are able to use the normal SASL method, which should be the case unless you are dealing with a very old XMPP server implementation.
2011-08-04Cosmetic PEP8 fixes.Lance Stout
2011-08-04Fix Python3 issue with dict.has_key()Lance Stout
2011-08-04Fix imports using __all__.Lance Stout
2011-08-04Actually, we can work around needing dateutil.Lance Stout
If dateutil is present, we'll use that. If not, we'll use some regexes from the fixed_datetime module.
2011-08-04Merge branch 'develop' of github.com:fritzy/SleekXMPP into developLance Stout
2011-08-04Fix imports for xep_0060Lance Stout
2011-08-04Sadly, dateutil is not actually part of the standard lib.Lance Stout
Thus, using the XEP-0082 and XEP-0202 introduces a dependency on the dateutil package (installable using pip install python-dateutil). Maybe we'll be able to rework how these plugins work to avoid needing dateutil, but for now this will have to do.
2011-08-03the great xep_0060 re-organization in preperation for rewriteNathan Fritz
2011-08-03Merge branch 'stream_features' into developLance Stout
2011-08-03started transition to xep_0060 rewriteNathan Fritz
2011-08-03Merge branch 'develop' into stream_featuresLance Stout
2011-07-05Added support for custom OOB transfer handlers.Lance Stout
Accepting download requests can be done using: self['xep_0066'].register_url_handler(handler=self.oob_download) # Add jid=... to specify a handler for a particular JID for a # componenent. def oob_download(self, iq): if iq['from'] not in self.custom_oob_whitelist: raise XMPPError('not-authorized') try: data = urllib2.urlopen(iq['oob_transfer']['url']) file = open('oob_download', 'w+') file.write(data.read()) file.close() data.close() except: raise XMPPError('item-not-found')
2011-07-03Add logging to XEP-0066.Lance Stout
2011-07-03Added XEP-0224 Attention plugin.Lance Stout
2011-07-03Update version number to beta6.Lance Stout
XEP-0092 now uses sleekxmpp.__version__ as a default version number.
2011-07-03Let XEP-0202 specify the local timezone offset in the config.Lance Stout
2011-07-03Updated XEP-0202 plugin to new format and use XEP-0082.Lance Stout
2011-07-03Fix some bugs in time handling.Lance Stout
Namely, minutes and seconds were reversed.
2011-07-03Added XEP-0203 Delayed Delivery plugin.Lance Stout
2011-07-03Added XEP-0082 plugin.Lance Stout
This should make things much easier for any stanza that uses timestamps.
2011-07-03Merge branch 'develop' into stream_featuresLance Stout
2011-07-03Added XEP-0066: Out-of-Band DataLance Stout
2011-06-30Reorganize features into plugins.Lance Stout
2011-06-10old xep_0050 plugin is now loadableNathan Fritz
2011-06-08Added session_end event and some docs.Lance Stout
For now, session_end is the same as disconnected, but once support is added later for stream management, the two events will become distinct. Plugins should add handlers for session_end for cleaning any session state.
2011-06-08Fix XEP-0050 issue with Unicode string type checking.Lance Stout
2011-04-14Pubsub/Unsubscribe was not getting registeredNathan Fritz
2011-03-24Added new implementation for XEP-0086.Lance Stout
2011-03-24Added new XEP-0050 implementation.Lance Stout
Backward incompatibility alert! Please see examples/adhoc_provider.py for how to use the new plugin implementation, or the test examples in the files tests/test_stream_xep_0050.py and tests/test_stanza_xep_0050.py. Major changes: - May now have zero-step commands. Useful if a command is intended to be a dynamic status report that doesn't require any user input. - May use payloads other than data forms, such as a completely custom stanza type. - May include multiple payload items, such as multiple data forms, or a form and a custom stanza type. - Includes a command user API for calling adhoc commands on remote agents and managing the workflow. - Added support for note elements. Todo: - Add prev action support. You may use register_plugin('old_0050') to continue using the previous XEP-0050 implementation.
2011-03-23Fix typo.Lance Stout
2011-03-23Cleaned XEP-0249 plugin, added tests.Lance Stout
2011-03-22Updated XEP-0128 plugin to work with the new XEP-0030 plugin.Lance Stout
Required fixing a few bugs in StanzaBase related to iterable substanzas.
2011-03-18Fix error in stanza handler registration in XEP-0092.Lance Stout
2011-03-16Avoid infinite loop on version resultFlorent Le Coz
We need to check if type="get". otherwise we will send our version when we will receive the version of the remote entity, and thus going in an infinite loop.
2011-02-24Remove the occasional warning about XEP-0059 not loaded.Lance Stout
2011-02-24Add tests for XEP-0085, fix some bugs.Lance Stout
2011-02-24Updated the XEP-0085 plugin.Lance Stout
Can now be used as so: >>> msg['chat_state'] '' >>> msg <message /> >>> msg['chat_state'] = 'paused' >>> msg <message> <paused xmlns="http://jabber.org/protocol/chatstates" /> </message> >>> msg['chat_state'] 'paused' >>> del msg['chat_state'] >>> msg <message />
2011-02-15fixes to ping: auto-ping off by default, fixed ping-time of zero bug, fixed ↵Nathan Fritz
class name mismatch
2011-02-14Remap old method names in a better way.Lance Stout
This should prevent some reference cycles that will cause garbage collection issues.