summaryrefslogtreecommitdiff
path: root/sleekxmpp
AgeCommit message (Collapse)Author
2012-02-17Fix undeclared variable usage for reconnect.Lance Stout
2012-02-16Fix fixing remove_stanza()Lance Stout
Fixes issue #146
2012-02-16Don't retrieve cert until a connection is made.Lance Stout
2012-02-16Fix remove_stanza().Lance Stout
Fixes issue #146
2012-02-10Don't shutdown completely after handling SyntaxError.Lance Stout
The ``shutdown = True`` line was preventing the stream from reconnecting after handling the error. Fixes issues #101, #145
2012-02-10Fix undefined variable references when DNS timeouts.Lance Stout
2012-02-09Use '=' as base64 value for empty string SASL results.Lance Stout
2012-02-10Fix IPv6 query logging.Lance Stout
2012-02-09Add support for querying and connecting to IPv6 addresses.Lance Stout
Tested using servers provided by Florian Jensen (flosoft.biz) during the 2012 FOSDEM XMPP Summit. Fixes issue #94.
2012-02-04Add ssl_cert event (direct).Lance Stout
The payload is a dictionary of parsed cert data, as provided by Python's getpeercert() socket method. It unfortunately does not provide much detail beyond basic info.
2012-02-03Add more XEP-0047 tests.Lance Stout
2012-02-03Fix XEP-0184 importsLance Stout
2012-02-03Fix infinite callback loop.Lance Stout
2012-02-03Don't assume data is ASCII in saslprep.Lance Stout
2012-02-03Merge remote-tracking branch 'whooo/master' into developLance Stout
2012-02-03Added fritzy to the copyright for xep_0184Erik Larsson
2012-02-02Fix data stanza based on test results.Lance Stout
2012-02-02Initial, mostly working XEP-0047 plugin.Lance Stout
This is inspired by the version from macdiesel and tomstrummer, but their version was heavily linked with XEP-0096 and focused solely on file transfer. This version is a more generic implementation.
2012-02-02Fix typo s/is_set/is_set()Lance Stout
2012-02-02Added plugin for XEP-0184Erik Larsson
2012-01-28Make socket_error run as a direct event to ensure that it is handled.Lance Stout
Socket errors that occur before stream processing begins could not be handled as the event loop would not be running yet. Resolves issue #142
2012-01-25Bump version number in develop branch to 1.0.1dev.Lance Stout
2012-01-25Merge pull request #138 from rhcarvalho/patch-2Lance Stout
Set default argument value.
2012-01-23Revert the X-GOOGLE-TOKEN mech to not perform HTTP requests.Lance Stout
Added new example for how to retrieve a Google token, following the best case, non-browser, workflow. Other thirdparty auth mechs (Facebook, MSN) follow a similar pattern of using an access token.
2012-01-22Fix ValueError when line has more than one '='.Rodolfo Carvalho
2012-01-22Set default argument value. Rodolfo Henrique Carvalho
Without this features/feature_mechanisms/mechanisms.py throws an error when calling the method `process' without arguments on this mechanism.
2012-01-21Add support for X-GOOGLE-TOKEN.Lance Stout
This is mainly just useful for authenticating without using TLS. If an access token is not provided, an attempt will be made to retrieve one from Google.
2012-01-21Require explicitly setting access_token value.Lance Stout
Silently substituting the password field was nice, but for mechs that can use either the password or an access token, it makes things very difficult. This really only affects MSN clients since Facebook clients should already be setting the api key.
2012-01-21Handle SASLCancelled and SASLError exceptions.Lance Stout
2012-01-21Add missing SASL <abort /> stanzaLance Stout
2012-01-20Make things work with Python3's byte semantics.Lance Stout
2012-01-20Allow attempting multiple SASL mechs during a single stream.Lance Stout
Instead of disconnecting when the first chosen mech fails, we will try all of them once.
2012-01-20Add support for X-FACEBOOK-PLATFORM SASL mechanism.Lance Stout
This requires an extra credential for SASL authentication: xmpp = ClientXMPP('user@chat.facebook.com', '...access_token...') xmpp.credentials['api_key'] = '...api_key...'
2012-01-20Add an extra config dict to store SASL credentials.Lance Stout
We'll need extra things beyond just a password, such as api_key.
2012-01-19Add basic start for a client side XEP-0077 plugin.Lance Stout
2012-01-18Fix detecting end of result set paging.Lance Stout
2012-01-18Revert "Remove stream feature handlers on session_start."Lance Stout
This reverts commit 4274f49ada77d709b931f65e34d3a64e75b81638. The SASL mech was choking on this, so let's send it back for some more refining.
2012-01-17Fix roster key issue for non-JID keys.Lance Stout
2012-01-17Hash JIDs based on full JID string.Lance Stout
This makes JID objects equivalent to strings in dictionaries, etc. >>> j = JID('foo@example.com') >>> s = 'foo@example.com' >>> d = {j: 'yay'} >>> d[j] 'yay' >>> d[s] 'yay' >>> d[s] = 'yay!!' >>> d[j] 'yay!!'
2012-01-17Pre-parse StanzaPath paths to speed up matching.Lance Stout
The parsing and namespace cleaning isn't terribly expensive, but it does add up. It was adding an extra 5sec when processing 100,000 basic message stanzas.
2012-01-17Remove stream feature handlers on session_start.Lance Stout
Based on profiling, using around 35 stream handlers quarters the number of basic message stanzas that can be processed in a second, in comparison to only using the bare minimum of four handlers. To help, we can drop handlers for stream features once the session has started. So that we can re-enable these handlers when a stream must restart, the 'stream_start' event has been added which fires whenever a stream header is received. The 'stream_start' event is a more generic replacement for the existing start_stream_handler() method.
2012-01-16Use jid.bare as a key instead of a JID instance.Rodolfo Henrique Carvalho
2012-01-15Tidy up and update the plugin __init__ file.Lance Stout
2012-01-14Fix xep_0030 reference warning.Lance Stout
2012-01-14Don't serialize XML unless we need to.Lance Stout
2012-01-12Don't dump exception logs for XML stream parsing errors.Lance Stout
The exceptions are handled, so we don't need to clutter the output logs.
2012-01-12Update Roster stanza to use RosterItem substanzas.Lance Stout
get_roster() now returns the Iq result stanza instead of True (stanzas also evaluate to True).
2012-01-11update_caps() can now do presence broadcasting.Lance Stout
As part of adding this feature: - fixed bug in update_caps() not assigning verstrings - fixed xep_0004 typo - can now use None as a roster key which will map to boundjid.bare - fixed using JID objects in disco node handlers - fixed failing test related to get_roster Several of these bugs I've fixed before, so I either didn't push them earlier, or I clobbered something when merging. *shrug*
2012-01-10Make the roster easier to inspect.Lance Stout
The __repr__ version now looks like a regular dictionary.
2012-01-10Make get_roster(block=False) work properly.Lance Stout
Fixes issue #136