Lance Stout
a347cf625a
Add session_bind_event threading event.
2012-07-10 01:35:57 -07:00
Lance Stout
46f49c7a12
Add method to unregister stream features.
2012-07-10 01:35:25 -07:00
Lance Stout
99701c947e
Prevent None from being added to the schedule from a timing issue.
2012-07-09 22:59:26 -07:00
Lance Stout
1baae1b81e
Fix issues of disco info leaking between entities with the same bare JIDs.
...
To ensure that disco info, or any settings which depend on the bound
JID, are correct, only set such information on or after the
session_bound event has fired.
2012-07-09 22:22:05 -07:00
Lance Stout
7d20f0e9a6
Fix missing import in xep_0256 plugin.
2012-07-09 22:21:40 -07:00
Erik Larsson
5af2f62c04
Make sure that the last RSM stanza is returned from the iterator
2012-07-08 23:27:13 +02:00
Jay Farrimond
4a4a03858e
dereference iq stanza only once for roster processing
2012-07-06 14:03:41 -07:00
Lance Stout
6819b57353
Handle converting None to byte data (b'').
2012-07-06 11:05:47 -07:00
Jay Farrimond
88b5e60807
only log cert errors if not handled by user
2012-07-05 13:38:26 -07:00
Lance Stout
a26a8bd79c
Bump version to 1.1.8
2012-06-30 17:40:11 -07:00
Lance Stout
85ef2d8d0b
Add support for reconnecting based on see-other-host stream errors.
2012-06-22 23:13:16 -07:00
Lance Stout
c2c7cc032b
Fix plugin registration for single file plugins.
2012-06-22 21:58:50 -07:00
Lance Stout
e4911e9391
Add meta plugin for XEP-0302 for the 2012 compliance suite.
...
There are still a few remaining items in the RFCs to add support for,
but the current plugin support matches the advanced client profile.
2012-06-22 21:52:39 -07:00
Lance Stout
b11e1ee92d
Add meta plugin for XEP-0270, 2010 compliance suite.
...
Registering this plugin will load the plugins required for advanced
client compliance status.
2012-06-22 21:26:25 -07:00
Lance Stout
5027d00c10
Change packaging for XEP-0256 to just a single file.
2012-06-22 21:26:01 -07:00
Lance Stout
69ddeceb49
Add support for XEP-0256: Last Activity in Presence
2012-06-22 21:13:30 -07:00
Lance Stout
82698672bb
Add 'thread' and 'parent_thread' interfaces to message stanzas.
...
These values are perisisted across replies.
2012-06-22 20:05:34 -07:00
Lance Stout
9cec284947
Mark presence status as language aware.
2012-06-22 20:05:17 -07:00
Lance Stout
dc501d1902
Mark message body and subject as language aware interfaces.
2012-06-22 19:08:51 -07:00
Lance Stout
100e504b7f
Resolve xml:lang issue with duplicated elements depending on ordering.
2012-06-22 18:19:17 -07:00
Lance Stout
8a745c5e81
Bump version to 1.1.7
2012-06-20 23:45:14 -07:00
Lance Stout
bf0a157c5d
Add support for XEP-0221: Data Forms Media Element
2012-06-20 23:38:30 -07:00
Lance Stout
f49818be06
Add support for XEP-0186: Invisible Command
2012-06-20 23:37:39 -07:00
Lance Stout
1ad171dfe5
Fix issue with setting subelements values with default langs.
2012-06-20 23:19:52 -07:00
Lance Stout
2a78570d65
Fix setting IPv6 default configuration option.
2012-06-20 22:21:34 -07:00
Lance Stout
7a112f2523
Bump version to 1.1.6
2012-06-20 21:08:43 -07:00
Lance Stout
e86444e5fb
Make the use of IPv6 configurable.
...
Set self.use_ipv6 = False before connecting.
Fixes issue #175
2012-06-20 19:39:24 -07:00
Lance Stout
36c11ad9de
Ordering fixes for Python3.3
2012-06-19 18:19:44 -07:00
Lance Stout
019a4b20ae
Fix assigning values to error stanzas.
...
The new data interfaces were deleting the actual error conditions if
they were set afterward with falsy data.
2012-06-19 16:21:34 -07:00
Lance Stout
433ee08687
Allow message and presence stanzas to be embedded as substanzas.
2012-06-19 16:20:54 -07:00
Lance Stout
7858d969d8
Remove usage of deprecated getchildren() method.
2012-06-19 09:47:31 -07:00
Lance Stout
8119551049
Don't compare against booleans using ==.
2012-06-19 01:38:36 -07:00
Lance Stout
061489f03a
Limit except clause to just ImportErrors when loading plugins.
2012-06-19 01:38:12 -07:00
Lance Stout
d92aa05b5c
PEP8 formatting updates.
2012-06-19 01:29:48 -07:00
Lance Stout
f7a74d960e
Simplify send_presence_subscription()
2012-06-19 00:06:31 -07:00
Lance Stout
534aaf2b2a
Properly handle certs with no extensions.
2012-06-19 00:01:02 -07:00
Lance Stout
4cc20fdd05
Use plugin_multi_attrib values to make vcards nicer.
2012-06-18 23:19:38 -07:00
Lance Stout
f3fae192a8
Fix plugin_multi_attrib value for avatar pointers.
2012-06-18 23:05:02 -07:00
Paulo Freitas
7d59a8a0ad
Fixed typo in _handle_get_vcard()
2012-06-18 22:54:30 -07:00
Lance Stout
8da387a38a
Add support for error conditions that include data.
2012-06-18 22:19:04 -07:00
Lance Stout
ff6fc44215
Simplify tracking last sent presence using outgoing filters.
2012-06-18 22:15:21 -07:00
Lance Stout
62391a895a
Update plugin list, fix syntax error.
2012-06-18 22:08:38 -07:00
Lance Stout
9bcdd7d18f
Add initial support for XEPS 222 and 223.
2012-06-18 22:08:38 -07:00
Lance Stout
5c4f7bfe8b
Initial support for XEP-0258
2012-06-18 22:07:39 -07:00
Lance Stout
0b7f134021
Add initial XEP-0084 support.
...
It does not auto-retrieve and store avatars yet, but everything is there
to do so.
2012-06-18 22:07:17 -07:00
Lance Stout
378a42889f
Simplify and update XEP-0033 to latest plugin format.
2012-06-18 22:03:03 -07:00
Lance Stout
f824950552
Enable using xml:lang with normal interfaces.
...
Using the special language value '*' will return a dictionary of all
such elements keyed by language.
>>> msg = Message()
>>> msg['body'] = 'Hi!'
>>> msg['body|sv'] = 'Hej!'
>>> print(msg)
'<message xmlns="jabber:client">
<body>Hi!</body>
<body xml:lang="sv">Hej!</body>
</message>'
>>> print(msg['body|*'])
OrderedDict(
('', 'Hi!'),
('sv', 'Hej!'))
Remaining items:
- Stanza path matching does not support language specifiers for normal
interfaces, only for plugins.
2012-06-18 22:00:33 -07:00
Lance Stout
3d2d11f169
Update stream features stanza to work with new plugin keys.
2012-06-18 22:00:33 -07:00
Lance Stout
181aea737d
Add initial support for xml:lang for streams and stanza plugins.
...
Remaining items are suitable default actions for language supporting
interfaces.
2012-06-18 22:00:33 -07:00
Lance Stout
ee702f4071
Bump version to 1.1.5
2012-06-15 15:36:01 -07:00
Lance Stout
a08c2161a7
Ensure that ssl_invalid_cert returns PEM formatted certifcate data.
2012-06-15 15:29:53 -07:00
Lance Stout
0e36a01354
Bump version to 1.1.4
2012-06-13 09:17:08 -07:00
Lance Stout
c39ad7dfbb
Prevent duplicate certificate expiration timers.
2012-06-13 09:13:33 -07:00
Lance Stout
b92ae706e9
Fix loading cached disco identity data.
2012-06-13 09:13:13 -07:00
Lance Stout
6997261c6b
Bump version for 1.1.3
2012-06-09 11:32:03 -07:00
Lance Stout
6cfb5cb14c
Add extra check for the cert in the expiration handler.
2012-06-09 11:01:45 -07:00
Lance Stout
8567d6034f
Use False for use_tls for components.
...
A log message is shown for those who try to set it to True.
Fixes issue #171
2012-06-09 11:01:35 -07:00
Lance Stout
e06368f8cd
Default use_tls to False for components.
...
Issue #171
2012-06-09 11:01:21 -07:00
Lance Stout
4b37a4706f
Fix SSL handshake handling when not using legacy SSL.
...
Fixes issue #172
2012-06-09 11:01:11 -07:00
Lance Stout
7b1564947d
Ensure that all SSL cert error handling is overridable using event handlers.
...
Relevant events:
ssl_invalid_cert
ssl_invalid_chain
ssl_expired_cert
2012-06-09 11:00:55 -07:00
Lance Stout
f5652a667b
Add 'presence' event, raised for all incoming presence stanzas.
2012-06-06 16:10:25 -07:00
Lance Stout
3b2c865a58
Bump version to 1.1.2
2012-06-06 12:26:15 -07:00
Lance Stout
db0e683d01
Don't request registration forms unless the register event is handled.
...
Some servers end the stream if registration can not be completed
in-band, which means always requesting the form can prevent regular
login.
2012-06-06 12:23:40 -07:00
Lance Stout
e29a9e0394
Bump version for 1.1.1 minor release.
2012-06-04 11:56:53 -07:00
Lance Stout
edf65f4f52
Include the default, unnamed group in self.client_roster.groups()
2012-06-04 11:54:25 -07:00
Lance Stout
98677fd602
Don't add cert expiration timer if no certs are being used.
2012-06-04 11:53:58 -07:00
Lance Stout
61a4f76c8d
Update version and README for 1.1
2012-06-01 14:13:17 -07:00
Lance Stout
856a826eea
Fix syntax error in line continuation.
2012-06-01 14:09:14 -07:00
Lance Stout
387ef513d6
Check that the session is still alive before sending data.
...
Fixes issue #168
2012-06-01 13:50:38 -07:00
Lance Stout
2858dbf57f
Update development version number to prepare for 1.1 release.
2012-05-31 22:07:36 -07:00
Lance Stout
350a2b8bbc
Preemptively mark threads as exited if calling disconnect().
2012-05-31 22:04:45 -07:00
Lance Stout
c9093c9972
Handle not being able to connect using IPv6 if the host does not support it.
2012-05-27 16:33:21 -07:00
Lance Stout
d1ad31696e
Fix X-FACEBOOK-PLATFORM mechanism to work with Python3.
2012-05-25 11:04:46 -07:00
Lance Stout
f49311ef9e
Add better certificate handling.
...
Certificate host names are now matched (using DNS, SRV, XMPPAddr, and
Common Name), along with expiration check.
Scheduled event to reset the stream once the server's cert expires.
Handle invalid cert trust chains gracefully now.
2012-05-22 03:56:06 -07:00
Lance Stout
678e529efc
Remove unused xmlstream test client.
...
It's in the repo history if we need it later.
2012-05-17 22:27:03 -07:00
Lance Stout
7842c55da3
Add auth_success event.
...
The auth_success event is triggered upon successful SASL negotiation.
2012-05-15 14:26:25 -07:00
Lance Stout
f5beac2afa
Use SASLPrepFailure as the exception name instead of UnicodeError.
2012-05-14 23:12:54 -07:00
Lance Stout
8a23f28dfa
Add an exception handler for SASLprep failures.
2012-05-14 22:26:06 -07:00
Lance Stout
4ded34ebc9
Add MUC events for room configuration changes.
...
New events:
groupchat_config_status
muc::[room JID]::config_status
2012-05-14 16:10:22 -07:00
Lance Stout
e918a86028
Make the error message better regarding hanged threads.
...
All event handlers which call disconnect() MUST be registered using
`add_event_handler(..., threaded=True)` in order to prevent temporarily
deadlocking until a timeout occurs.
This is required because disconnect() waits for the main threads to
exit before returning, including the event processing thread. Since
handlers registered without `threaded=True` run in the event processing
thread, the disconnect() call will deadlock.
2012-05-10 10:22:38 -07:00
Lance Stout
03dedfc871
Windows doesn't support inet_pton.
2012-05-06 12:17:50 -07:00
Lance Stout
9e86a7b357
Tidy up and add tests for multi_attrib plugins.
2012-05-05 14:01:13 -07:00
Lance Stout
6a32417957
Merge pull request #163 from whooo/master
...
factory for recurring substanzas
2012-05-05 11:34:29 -07:00
Lance Stout
97a7be7dfa
Fix loading plugins from custom modules when passing the module itself.
...
Loading plugins from custom modules when passed as a string still works.
2012-05-04 09:51:02 -07:00
Erik Larsson
fa86f956ef
added multifactory and support for it to register_stanza_plugin
2012-04-30 22:19:17 +02:00
Lance Stout
a9acff5294
Collapse initial payload to a single stanza instead of a list if only one stanza is found.
2012-04-30 11:16:10 -07:00
Lance Stout
ad5b61de50
Add full support for initial payloads with adhoc commands, plus test.
2012-04-30 11:07:54 -07:00
Lance Stout
f53b815855
Allow providing initial payload to adhoc commands.
2012-04-30 08:27:10 -07:00
Lance Stout
bf8a9dc20d
Add logging note about potential cause of disconnect() deadlock.
2012-04-29 14:48:14 -07:00
Lance Stout
08716c35fd
Set a timeout when waiting for threads.
...
If calling disconnect() from a non-threaded event handler, deadlock can
happen as disconnect() is waiting for threads to close, but the event
runner is blocked by a handler waiting for disconnect() to return.
It is best to specify threaded=True for event handlers which may call
disconnect().
2012-04-29 14:45:00 -07:00
Lance Stout
fd81bab906
Use the correct 'from' jid when requesting vcards for avatars.
2012-04-29 13:33:53 -07:00
Lance Stout
1cf55c14b0
Don't raise errors when receiving an iq error for vcards.
2012-04-29 13:33:30 -07:00
Lance Stout
8b47159788
Populate the to attribute for message and presence stanzas if the server leaves it blank.
2012-04-26 15:46:18 -07:00
Lance Stout
2eeaf4d80c
Use provided stanza ID.
2012-04-25 13:55:46 -07:00
Lance Stout
4d89d26a1c
Prevent corrupting roster_update event with iq result.
2012-04-25 11:03:33 -07:00
Lance Stout
0cc14cee4d
Ensure that SSL errors are handled in Py3.3
2012-04-24 16:11:49 -07:00
Lance Stout
a20a9c505d
Track threads to ensure all have exited when disconnecting.
2012-04-22 18:13:36 -07:00
Lance Stout
913738444e
Count and track the main threads, so we can delay disconnecting until all have quit.
2012-04-21 10:36:39 -07:00
Lance Stout
8ee30179ea
Add _use_daemons flag to XMLStream to run all threads in daemon mode.
...
This WILL make the Python interpreter produce exceptions on shutdown.
2012-04-20 15:21:31 -07:00
Lance Stout
cb2469322b
Handle using provided weakrefs as stanza parent references.
...
Fixes issue #159
2012-04-14 11:13:38 -04:00