Lance Stout
e648f08bad
Fix stream test errors.
2010-11-17 16:08:14 -05:00
Lance Stout
7ba6d5e02d
Fix Node set to None error.
2010-11-17 16:01:27 -05:00
Lance Stout
ea48bb5ac5
Fixed some live stream test errors.
...
Added test demonstrating using multiple stream clients
in a single test.
2010-11-17 15:45:16 -05:00
Lance Stout
6ee8a2980c
Fix RESPONSE_TIMEOUT dependency loops.
2010-11-17 15:13:09 -05:00
Lance Stout
b8114b25ed
Make live stream tests work better.
...
SleekTest can now use matchers when checking stanzas, using
the method parameter for self.check(), self.recv(), and self.send():
method='exact' - Same behavior as before
'xpath' - Use xpath matcher
'id' - Use ID matcher
'mask' - Use XML mask matcher
'stanzapath' - Use StanzaPath matcher
recv_feature and send_feature only accept 'exact' and 'mask' for now.
2010-11-17 13:43:15 -05:00
Nathan Fritz
45991e47ee
scheduler no longer waits for the next event before exiting
2010-11-16 17:58:20 -08:00
Nathan Fritz
b8f40eb843
xep_0199 ping now uses scheduler instead of dedicated thread
2010-11-16 17:43:05 -08:00
Florent Le Coz
b73a859031
Add a groupchat_subject event
...
Use this event to get notified of the subject changes (or to get the
subject of the room when joining one)
2010-11-10 05:54:22 +08:00
Florent Le Coz
9dbf246f0b
Doesn't fail if host has NO SRV record
...
Just catch an other exception type coming from the dns resolver that
could be raised with hosts like "anon.example.com" which just don't have
any SRV record.
2010-11-09 01:53:41 +08:00
Lance Stout
4fb77ac878
Logging no longer uses root logger.
...
Each module should now log into its own logger.
2010-11-06 01:28:59 -04:00
Lance Stout
d0c506f930
Simplified SleekTest.
...
* check_stanza does not require stanza_class parameter. Introspection!
* check_message, check_iq, and check_presence removed -- use check
instead.
* stream_send_stanza, stream_send_message, stream_send_iq, and
stream_send_presence removed -- use send instead.
* Use recv instead of recv_message, recv_presence, etc.
* check_jid instead of check_JID
* stream_start may accept multi=True to return a new SleekTest instance
for testing multiple streams at once.
2010-11-05 21:18:48 -04:00
Lance Stout
7351fe1a02
Fix bug introduced while fixing another bug.
...
Threaded event handlers now handle exceptions again.
2010-11-04 14:35:35 -04:00
Nathan Fritz
38c2f51f83
fixed indent errors
2010-11-04 11:39:41 -07:00
Lance Stout
1bf34caa5b
Fixes for XEP-0199 plugin.
...
Quick fixes to get the XEP-0199 plugin working until a proper cleanup is
done.
2010-11-03 14:04:18 -04:00
Lance Stout
5769935720
Merge branch 'develop' of github.com:fritzy/SleekXMPP into develop
2010-11-03 12:39:44 -04:00
Lance Stout
0214db7545
Catch exceptions for direct events.
...
Events triggered with direct=True will have exceptions caught.
Note that all event handlers in a direct event will currently run
in the same thread.
2010-11-03 12:38:13 -04:00
Lance Stout
ffc6f031d9
Updated namespaced used in the XEP-0199 plugin.
2010-11-03 12:37:26 -04:00
Lance Stout
9e248bb852
Fix bug in XEP-0030 plugin.
...
xep_0030 still referenced event_handlers. Added the method event_handled
which will return the number of registered handlers for an event to
resolve the issue.
2010-10-31 18:27:52 -04:00
Lance Stout
973890e2c9
Added try/except for setting signal handlers.
...
Setting signal handlers from inside a thread is not supported in Python,
but some applications need to run Sleek from a child thread.
SleekXMPP applications that run inside a child thread will NOT be able
to detect SIGHUP or SIGTERM events. Those must be caught and managed by
the main program.
2010-10-28 10:42:23 -04:00
Lance Stout
9c08e56ed0
SSL and signal fixes.
...
Made setting the SIG* handlers conditional on if the signal defined for
the OS.
Added the attribute ssl_version to XMLStream to set the version of SSL
used during connection. It defaults to ssl.PROTOCOL_TLSv1, but OpenFire
tends to require ssl.PROTOCOL_SSLv23.
2010-10-27 19:27:47 -04:00
Lance Stout
b888610525
Added XEP-202 Entity Time plugin.
...
Contributed by Cesar Alcalde.
2010-10-25 21:26:25 -04:00
Lance Stout
6d68706326
Added XEP-0012 Last Activity plugin.
...
Contributed by Cesar Alcalde.
2010-10-25 20:37:02 -04:00
Lance Stout
5bdcd9ef9d
Made exceptions work.
...
Raising an XMPPError exception from an event handler now works, even if
from a threaded handler.
Added stream tests to verify.
We should start using XMPPError, it really makes things simple!
2010-10-25 15:09:56 -04:00
Lance Stout
ac330b5c6c
Fixed bug in presence subscription handling.
...
Subscription requests and responses were not setting the correct 'to'
attribute.
2010-10-25 12:52:32 -04:00
Lance Stout
185d7cf28e
More JID unit tests.
...
sleekxmpp.xmlstream.jid now has 100% coverage!
2010-10-24 19:06:54 -04:00
Lance Stout
8aa3d0c047
Fixed got_offline triggering bug.
2010-10-24 18:56:50 -04:00
Lance Stout
9e3d506651
Fixed resource bug in JIDs.
...
JIDs without resources will return '' instead of the bare JID.
Cleaned up JID tests, and added check_JID to SleekTest.
2010-10-24 18:22:41 -04:00
Lance Stout
2f3ff37a24
Make SleekTest streams register all plugins.
...
Makes test coverage nicer.
2010-10-24 17:35:11 -04:00
Lance Stout
1f09d60a52
ComponentXMPP saves all of its config data now.
...
ComponentXMPP was ignoring plugin_config and plugin_whitelist
parameters, making register_plugins() fail.
2010-10-24 17:33:11 -04:00
Lance Stout
d9aff3d36f
Merge branch 'develop' of github.com:fritzy/SleekXMPP into develop
2010-10-24 12:11:34 -04:00
Lance Stout
04cc48775d
Fixed error in client roster handling.
...
The roster result iq was not being passed to the roster update
handler.
2010-10-24 12:08:59 -04:00
Nathan Fritz
27ebb6e8f6
presence no longer replies when exception is caught and tweaks to presence events
2010-10-21 16:59:15 -07:00
Lance Stout
8f55704928
Fixed mixed text and elements bug in tostring.
...
XML of the form <a>foo <b>bar</b> baz</a> was outputted as
<a>foo <b>bar</b> baz baz</a>.
Includes unit test.
2010-10-21 16:21:28 -04:00
Nathan Fritz
d88999691c
misc small tweaks
2010-10-20 20:14:26 -07:00
Nathan Fritz
c4699b92e6
pep8 fixes on core library
2010-10-20 19:43:53 -07:00
Nathan Fritz
ce69213a1e
when disconnected, reset the roster
2010-10-20 19:33:40 -07:00
Nathan Fritz
77eab6544f
reconnect if session isn't established within 15 seconds
2010-10-20 19:18:27 -07:00
Nathan Fritz
11264fe0a8
capture SIGHUP and SIGTERM (windows) and disconnect; also testall no longer loads string26 with python3
2010-10-20 17:30:12 -07:00
Nathan Fritz
11a6e6d2e0
fixed logic error in state machine
2010-10-20 16:57:47 -07:00
Nathan Fritz
6e34b2cfdd
fixed disconnect
2010-10-20 16:32:50 -07:00
Lance Stout
e18354ae0e
Continue converting to underscored names.
2010-10-18 09:06:54 -04:00
Lance Stout
4375ac7d8b
Underscore names by default.
...
Stanza objects now accept the use of underscored names.
The CamelCase versions are still available for backwards compatibility,
but are discouraged.
The property stanza.values now maps to the old getStanzaValues and
setStanzaValues, in addition to _set_stanza_values and
_get_stanza_values.
2010-10-17 22:04:42 -04:00
Lance Stout
faec86b3be
Import plugins from string referenced modules.
2010-10-17 15:47:24 -04:00
Lance Stout
505a63da3a
Cleanup, restore PEP8.
2010-10-16 21:15:31 -04:00
Florent Le Coz
93fbcad277
Fix the error on non-number priority
...
The priority is not a number: we consider it 0 as a default
2010-10-17 09:01:53 +08:00
Florent Le Coz
3625573c7d
Default history is 0
2010-10-17 09:01:53 +08:00
Florent Le Coz
d9e7f555e6
MUC leave message and MUC history request
...
It is now possible to ask for "any number of history stanzas" when
joining a muc (with history=None).
Also we use "maxchars" when asking NO history ("0") since it's a MUST in
the XEP.
And you can specify a message when leaving a MUC.
2010-10-17 09:01:52 +08:00
Florent Le Coz
2755d732a4
Remove deprecation warnings
...
Remove all the deprecation warnings by using only boundjid.
And also fix a indentation error.
2010-10-17 08:55:30 +08:00
Florent Le Coz
2d18d905a5
Anonymous authentication
...
Implemented ANONYMOUS authentication on the ClientXMPP class.
To use it, you just need to provide a domain (e.g 'anon.example.com')
with an optional resource (e.g 'anon.example.com/resource') as the JID,
with no password. The JID class has been improved to accept
domains as fulljid.
You can test this with echo_client.py
python echo_client.py -j anon.louiz.org/ # anonymous with a resource
# defined by the server
python echo_client.py -j anon.louiz.org/resource # anonymous with given
# resource
The "normal" authentication method still works exactly like before.
2010-10-17 08:55:30 +08:00
Nathan Fritz
8b5c1010de
fixed JID to accept server/domain/host as the same
2010-10-14 16:34:16 -07:00
Nathan Fritz
95ad8a1878
fixed stream test not disconnecting cleanly
2010-10-14 16:27:44 -07:00
Nathan Fritz
aeb7999e6a
don't import statemachine
2010-10-14 16:08:50 -07:00
Nathan Fritz
8468332381
fixed stream tests
2010-10-14 15:53:10 -07:00
Nathan Fritz
dc001bb201
deprecated jid, fulljid, server, user, resource properties and added boundjid JID
2010-10-14 15:50:54 -07:00
Nathan Fritz
0d0b963fe5
fixed socket name collision in xmlstream.py and fixed python 3.x compatibility
2010-10-14 10:58:07 -07:00
Nathan Fritz
a41a4369c6
disconnect cleanly
2010-10-13 18:21:05 -07:00
Nathan Fritz
7ad7a29a8f
new state machine in place
2010-10-13 18:15:21 -07:00
Lance Stout
a8b948cd33
SleekTest may now run against a live stream.
...
Moved SleekTest to sleekxmpp.test package.
Corrected error in XML compare method.
Added TestLiveSocket to run stream tests against live streams.
Modified XMLStream to work with TestLiveSocket.
2010-10-07 19:43:51 -04:00
Lance Stout
e02ffe8547
Corrected test errors.
...
There was a bug in the XML compare method.
2010-10-07 19:42:28 -04:00
Lance Stout
42bfca1c87
Removed debug log statement.
2010-10-07 19:41:33 -04:00
Lance Stout
0fffbb8200
Unit test reorganization.
...
Moved SleekTest to sleekxmpp.test.
Organized test suites by their focus.
- Suites focused on testing stanza objects are named test_stanza_X.py
- Suites focused on testing stream behavior are name test_stream_X.py
2010-10-07 10:58:13 -04:00
Lance Stout
21c32c6e1c
Moved the pubsub tester to conn_tests.
2010-10-07 10:28:38 -04:00
Lance Stout
78141fe5f3
Fixed dealing with deleting handlers.
...
The call to .index() may raise a ValueError if the item is not in the
list. So both the .index() and .pop() calls should be in the try block.
2010-10-07 09:17:28 -04:00
Lance Stout
799645f13f
Updated method names.
...
Using underscored names where possible.
2010-10-06 18:45:11 -04:00
Lance Stout
c294c1a85c
More PEP8 compliance cleanups.
...
Cleaned up the atom entry stanza.
2010-10-06 15:12:39 -04:00
Lance Stout
cbe76c8a70
Cleaned up the Scheduler.
2010-10-06 15:03:21 -04:00
Lance Stout
77b8f0f4bb
Fixed whitespace issue.
2010-10-06 14:31:33 -04:00
Lance Stout
ed366b338d
Moved ClientXMPP to clientxmpp.py.
...
Cleaned up the __init__.py files.
2010-10-06 14:20:32 -04:00
Lance Stout
9e2cada19e
Missed a few docstrings.
2010-10-06 14:09:14 -04:00
Lance Stout
d0ccbf6b7a
Merge branch 'develop' of github.com:fritzy/SleekXMPP into develop
2010-10-06 14:06:02 -04:00
Lance Stout
e1866ab328
Made first pass at cleaning up ClientXMPP.
...
Added self.stream_ns to BaseXMPP.
Moved connected/disconnected events and logging to XMLStream.
2010-10-06 14:03:19 -04:00
fritzy
3ffa09ba7c
deal with deleting handlers that are no longer there
2010-10-06 17:58:03 +00:00
Lance Stout
a7410f2146
Made a first pass at cleaning up ComponentXMPP.
2010-10-06 10:47:05 -04:00
Lance Stout
178608f4c0
XMLStream cleanup.
...
Added RestartStream as a top level item in sleekxmpp.xmlstream.
Fixed trailing whitespace.
2010-10-06 10:45:36 -04:00
Lance Stout
9f0baec7b2
Made first pass at cleaning BaseXMPP.
...
Have not intregrated the new JID class yet.
2010-10-01 23:56:46 -04:00
Lance Stout
433c147627
Fixed typo in XEP-0033 plugin.
2010-10-01 21:25:27 -04:00
Lance Stout
9a34c9a9a1
Modified event handling to use the event queue.
...
Updated tests to match. (Needed to add a small wait to make sure
the event got through the queue before checking the results.)
2010-10-01 13:49:58 -04:00
Lance Stout
2662131124
Fixed tostring bug when using mapped namespaces.
2010-10-01 12:41:35 -04:00
Lance Stout
bb219595a7
Moved event functions to XMLStream.
...
This is just a transplant, modifying event to use the main
event queue has not been implemented yet.
2010-10-01 12:24:49 -04:00
Lance Stout
fcdd57ce54
Moved add_handler, send, and sendXML to XMLStream.
2010-10-01 11:15:51 -04:00
Lance Stout
5522443e0e
Moved getNewId and getId to XMLStream.
...
This prepares the way for moving add_handler to XMLStream.
Since stanzas, matchers, and handlers in any XML stream will typically
use unique IDs, XMLStream is a good place for these methods.
2010-10-01 10:46:37 -04:00
Lance Stout
55cfe69fef
Cleaned up trailing whitespace.
2010-10-01 10:09:10 -04:00
Lance Stout
6de87a1cbf
Fixed line lengths and trailing whitespace.
...
The pep8 command is now pleased.
2010-09-30 13:06:16 -04:00
Lance Stout
7c10ff16fb
Made a first pass at cleaning up XMLStream.
...
A few extra methods are mentioned in the docs, but those have not
been moved to XMLStream from BaseXMPP yet.
2010-09-30 12:56:22 -04:00
Nathan Fritz
c258d2f19d
added room events for specific rooms, added buildForm to xep_0004 plugin
2010-09-23 00:51:23 +00:00
fritzy
d576e32f7a
Merge branch 'develop' of git@github.com:fritzy/SleekXMPP into develop
2010-09-02 20:01:28 +00:00
Lance Stout
9bef4b4d4d
Move the examples to a top-level examples directory.
2010-09-01 14:47:42 -04:00
Lance Stout
5c3066ba30
Updated all of the matcher classes in sleekxmpp.xmlstream.matcher.
...
Matchers are now PEP8 compliant and have documentation.
2010-09-01 14:28:43 -04:00
Lance Stout
576eefb097
Fixed line spacing in filesocket.py to please pep8.
2010-09-01 14:25:30 -04:00
Lance Stout
aebd115ba2
A few cleanups to make things simpler.
2010-09-01 14:20:34 -04:00
fritzy
6dfea828be
xep-0004 merge should deal with dictionaries
2010-08-31 14:44:24 +00:00
Lance Stout
3749c1b88c
Fixed ElementBase.match to match using sub_interface elements.
2010-08-30 17:12:10 -04:00
Lance Stout
998741b87e
Fixed typos in ElementBase._fix_ns
2010-08-30 15:25:59 -04:00
Lance Stout
9c62bce206
Updated ElementBase.match to respect namespaces with slashes.
...
Required adding option to _fix_ns to not propagate namespaces to child elements.
2010-08-30 14:55:30 -04:00
Lance Stout
f5ae27da4f
Fix some documentation typos.
2010-08-27 18:16:09 -04:00
Lance Stout
89fb15e896
Updated the suite of handler classes with documentation.
...
Updated XMLStream to return True or False from removeHandler to indicate if the handler
existed and was removed.
Waiter handlers now unregister themselves after timing out.
2010-08-27 16:42:26 -04:00
Lance Stout
bb6f4af8e2
Added unit tests for StanzaBase.
2010-08-27 12:22:35 -04:00
Lance Stout
6677df39f2
Updated xmlstream.filesocket.
2010-08-27 11:29:48 -04:00
Lance Stout
a2c515bc97
Updated StanzaBase with documentation.
2010-08-27 11:07:20 -04:00
Lance Stout
ca6ce26b0d
Added comments to _fix_ns to clarify the cleaning procedure.
2010-08-26 18:40:58 -04:00