Lance Stout
8bb0f5e34c
Needed to use copy.deepcopy() to copy XML objects to make sure that the entire tree is copied.
2010-06-07 19:55:39 -04:00
Lance Stout
3c939313d2
Modified basexmpp.event() to pass a copy of the event data to each handler.
2010-06-06 23:19:07 -04:00
Lance Stout
9962f1a664
Added a __copy__ method to both ElementBase and StanzaBase.
...
Stanzas may now be copied using copy.copy(), which will be useful to prevent
stanza objects from being shared between event handlers.
2010-06-06 23:12:54 -04:00
Lance Stout
253de8518c
Modified xmlstream.py to pass a clean stanza object to each stream handler.
...
The previous version passed the same stanza object to each registered handler,
which can cause issues when the stanza object is modified by one handler. The next
handler receives the stanza with the modifications, not the original stanza.
2010-06-03 22:56:57 -04:00
Lance Stout
e700a54d11
Return result of iq.send() for disco requests. Events are still triggered, but now the caller can determine if there was a timeout.
2010-06-02 15:59:10 -04:00
Lance Stout
6469cdb4ca
Merge branch 'develop' of git://github.com/fritzy/SleekXMPP into develop
2010-06-02 15:57:18 -04:00
Nathan Fritz
18e27d65ce
Merge branch 'develop' of github.com:fritzy/SleekXMPP into develop
2010-06-01 21:45:15 -07:00
Nathan Fritz
0c39567f20
hack fix for session before bind
2010-06-01 21:44:54 -07:00
Nathan Fritz
f5491c901f
if binding and session are advertised in the same go, do session first
2010-06-01 21:40:52 -07:00
Lance stout
f5cae85af5
Make sure that the id parameter used in xmpp.makeIq is converted to a string.
...
Otherwise, SleekXMPP will barf on trying to serialize an integer when it expects text.
2010-06-01 10:52:37 -04:00
Lance stout
01e8040a07
Added additional parameter to xep_0030's getInfo and getItems methods.
...
By using dfrom, a server component may send disco requests using any of its JIDS.
2010-06-01 10:51:03 -04:00
Nathan Fritz
aa916c9ac8
included jobs plugin
2010-05-31 13:57:39 -07:00
Lance stout
332eea3b3b
Make sure that the node is alway set in disco responses.
2010-05-31 13:35:15 -04:00
Lance stout
109af1b1b6
Merge branch 'xep_0085' into develop
2010-05-31 13:31:11 -04:00
Lance stout
629f6e76a9
Added implementation and tests for XEP-0085 - Chat State Notifications.
...
Chat states may be set using:
msg['chat_state'].active()
msg['chat_state'].composing()
msg['chat_state'].gone()
msg['chat_state'].inactive()
msg['chat_state'].paused()
Checking a chat state can be done with either:
msg['chat_state'].getState()
msg['chat_state'].name
When a message with a chat state is receieved, the following events
may occur:
chatstate_active
chatstate_composing
chatstate_gone
chatstate_inactive
chatstate_paused
where the event data is the message stanza. Note that currently these
events are also triggered for messages sent by SleekXMPP, not just those
received.
2010-05-31 13:24:14 -04:00
Nathan Fritz
82a3918aa4
Scheduler waits too longer, and pubsubstate registration was backwards
2010-05-31 03:36:25 -07:00
Lance stout
cff3079a04
Added missing 'internal-server-error' condition to error stanza interface.
2010-05-31 05:30:50 +08:00
Lance stout
4f864a07f5
Touched up the style of creating an Iq stanza.
2010-05-31 05:30:49 +08:00
Lance stout
938066bd50
Added 'resource-constraint' to the list of error conditions.
2010-05-31 05:30:48 +08:00
Lance Stout
fd573880eb
Updated the XEP-0030 plugin to work with stanza objects instead of manipulating XML directly.
...
Four new events have been added:
disco_info - A disco#info result has been received
disco_info_request - A disco#info request has been received
disco_items - A disco#items result has been received
disco_items_request - A disco#items request has been received
For disco_info_request and disco_items_request two default handlers are registered. These handlers will only run if they are the only handler for these two events so that multiple responses are not returned and cause errors.
In your own handlers for these two events, you can call the default handlers to preserve the static node behaviour as so:
self.plugin['xep_0030'].handle_disco_info(iq, True)
The forwarded=True will disable the check for other registered handlers.
Agents can now dynamically respond to disco requests by using these events.
(cherry picked from commit 0fc3381492a8bd75e6a9858539a972334881d8ff)
2010-05-31 05:30:45 +08:00
Nathan Fritz
2f1ba368e2
control-c fixes
2010-05-28 19:19:28 -07:00
Nathan Fritz
3a28f9e5d2
added pubsub state stanzas and scheduled events
2010-05-27 04:58:57 -07:00
Nathan Fritz
0bda5fd3f2
adding scheduler
2010-05-26 18:32:28 -07:00
Nathan Fritz
fa92bc866b
fixed dns unicode problem
2010-05-26 11:37:01 -07:00
Nathan Fritz
f4bc9d9722
plugins now are checked for post_init having ran when process() is called
2010-05-26 10:51:51 -07:00
Hernan E Grecco
f18c790824
Fixed error registering a plugin. To add a feature to another plugin, it should look into xmpp.plugin dict
2010-05-26 06:49:01 +08:00
Nathan Fritz
f165b4b52b
Merge branch 'master' of git@github.com:fritzy/SleekXMPP
2010-05-24 19:34:49 -07:00
Nathan Fritz
7ebc006516
updated README, index fix for component
2010-05-24 19:33:24 -07:00
Lance Stout
5ca4ede5ac
Added a flag to registerPlugin to control calling the plugin's post_init method.
2010-05-25 07:28:48 +08:00
Lance Stout
35f4ef3452
Modified the return values for several methods so that they can be chained.
...
For example:
iq.reply().error().setPayload(something.xml).send()
2010-05-25 07:28:43 +08:00
Lance Stout
828cba875f
Added the error attribute 'code' to the Error object interface.
2010-05-25 07:28:43 +08:00
Nathan Fritz
3920ee3941
added plugin indexing to components
2010-05-24 14:27:13 -07:00
Lance Stout
c004f042f9
Added del_event_handler to remove handler functions for a given event.
...
All registered handlers for the event which use the given function will
be removed.
Using this method allows agents to reconfigure their behaviour on the fly
without needing to add extra state information to event handling functions.
2010-05-21 03:54:48 +08:00
Nathan Fritz
ae41c08fec
added test for unsolicided unavailable presence and fixed bug to make it pass
2010-05-12 18:07:20 -07:00
Nathan Fritz
223507f36f
fixed a rather large memory leak
2010-05-12 13:45:36 -07:00
Nathan Fritz
8515cef117
refactored presence tracking and fixed jidInRoom
2010-05-11 15:12:13 -07:00
Nathan Fritz
c4fa3ab654
pubsub test work
2010-04-23 01:34:28 -07:00
Nathan Fritz
602a6d8491
bugfixes and continuing to work on pubsub tests
2010-04-22 21:24:28 -07:00
Nathan Fritz
37b571c55a
added pubsub#event stanzas, multi-subtypes iterable stanzas, pubsub#event test coverage
2010-04-21 23:51:37 -07:00
Nathan Fritz
2a30e3fe0c
started work on pubsub#event stanzas
2010-04-20 00:53:13 -07:00
Nathan Fritz
212660091f
added pubsub tests and fixed match on iterator error
2010-04-19 01:03:27 -07:00
Nathan Fritz
35c157f9d8
changed_status event now happens with got_offline/got_online events
2010-04-18 21:16:47 -07:00
Nathan Fritz
80e7e0d0ee
adding tests, fixed stanzapath matching to match keys, fixed pubsub#owner stanzas
2010-04-14 01:23:17 -07:00
Nathan Fritz
2f9f649d98
bugfix for .disconnect() hanging
2010-04-13 19:48:35 -07:00
Nathan Fritz
fef511fd51
bugfix for .disconnect() hanging
2010-04-13 19:35:47 -07:00
Matthias Rieber
85c3d97d2a
fixed presence stanza. priority can be set.
2010-04-08 15:15:15 +08:00
Nathan Fritz
2384858f5e
fixed html-im stanza plugin
2010-04-07 23:56:44 -07:00
Nathan Fritz
dd77d2165d
added missing docstrings to tests and added deprecated warning to basexmpp.send when using xml mask waiting
2010-04-07 23:32:15 -07:00
Nathan Fritz
ecd5a172ed
replaced usage of deprecated iq result on send. Fixed old send result to use stanzas instead of ElementTree
2010-04-07 23:10:32 -07:00
Nathan Fritz
935ee4d14e
changed license to MIT
2010-03-26 14:32:16 -07:00