Commit graph

460 commits

Author SHA1 Message Date
Lance Stout
48f0843ace Added initial stanza object version of the xep_0004 plugin. Items/reported elements still need to be unit tested 2010-07-14 11:59:58 -04:00
Lance Stout
b1c997be1d Reworked the Gmail notification plugin to use stanza objects and expose more information. 2010-07-11 22:01:51 -04:00
Lance Stout
d0cb400c54 Fixed tabs to please tab nanny. 2010-07-11 21:43:51 -04:00
Lance Stout
37ada49802 Fixed indentation to please tab nanny during unit tests. 2010-06-27 17:39:16 -04:00
Lance Stout
059cc9ccc4 Fixed several errors in xep_0033 plugin.
The method getAddresses was removing addresses by mistake.
Several instances of using self.attrib instead of self.xml.attrib.
2010-06-27 17:32:16 -04:00
Lance Stout
309c9e74eb Fixed error in setState() method. 2010-06-27 16:34:48 -04:00
Lance Stout
6041cd1952 Fixed typo 2010-06-27 16:33:59 -04:00
Lance Stout
acb53ba371 Fixed tab and spacing issue to please the Tab Nanny during unit tests. 2010-06-27 10:14:21 -04:00
Lance Stout
646a609c0b Added plugin and tests for XEP-0033, Extended Stanza Addresses.
XEP-0033 can be useful for interacting with XMPP<->Email gateways.
2010-06-22 23:22:50 -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
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
4f864a07f5 Touched up the style of creating an Iq stanza. 2010-05-31 05:30:49 +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
3a28f9e5d2 added pubsub state stanzas and scheduled events 2010-05-27 04:58:57 -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
7ebc006516 updated README, index fix for component 2010-05-24 19:33:24 -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
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
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
ec97c351de fixed bug #7 -- muc roster leak 2010-03-26 13:59:29 -07:00
Nathan Fritz
c239fb1f90 added muc functionality 2010-03-04 09:47:42 -08:00
Nathan Fritz
0dcbe92d1e got rid of stupid iq set/get/error/result methods 2010-02-15 21:42:27 -08:00
Nathan Fritz
5e736f4b97 fixed setup.py issue with unicode in 3.x 2010-01-29 23:57:57 -08:00
Nathan Fritz
6b130eb947 unhandled iq's should only respond to errors when type=get/set 2010-01-20 01:42:53 -08:00
Nathan Fritz
e39a2395d7 xep 30 and 50 always reply from jid iq sent to 2010-01-15 21:07:28 -08:00
Nathan Fritz
6e1aa0690f Completed basic test coverage of xmlns http://jabber.org/protocol/pubsub stanzas 2010-01-13 09:04:05 -08:00
Nathan Fritz
137ef61523 * fix to xep 78 2010-01-08 06:06:44 +00:00
Nathan Fritz
8e3168e145 * added first stanza tests
* added stanza.keys()
* stanza.getValues() now return substanzas and plugins
* stanza.setValues() now can read substanzas and plugins
* stanzas can now be iterable if stanza.subitem is set to a class
2010-01-08 01:45:11 +00:00
Nathan Fritz
b54221f2a9 * pubsub#owner and pubsub namespace stanzas written 2010-01-07 23:52:52 +00:00
Nathan Fritz
093644ffbd * major stanza improvements
* raise XMPPError in handler to reply with error stanza
* started work on pubsub stanzas
2010-01-05 21:56:48 +00:00
Nathan Fritz
07018c0afa * fixed many stanza bugs
* added stanza unhandled (unhandled iqs now reply with feature-not-implemented)
* added stanza exceptions (stanzas may now reply with exceptions when their handler raises an exception)
2009-12-17 01:54:22 +00:00
Nathan Fritz
44aa526635 * fixed bugs with XEP 50 for components
* configuration-less nodes
2009-10-29 02:34:23 +00:00
Nathan Fritz
8dbf53594b * fixed bug with setting boolean values in forms
* added setValues to forms
2009-10-27 01:05:30 +00:00
Nathan Fritz
f84f02acff x:data form improvements 2009-10-19 08:35:15 +00:00
Nathan Fritz
e3a5211b6d * fixes 2009-10-19 05:27:00 +00:00
Nathan Fritz
14331e2c96 * added form update 2009-10-19 05:18:36 +00:00
Nathan Fritz
349b1c0b28 * added form merging 2009-10-19 05:16:43 +00:00
Nathan Fritz
a18051c164 * fixed type-o 2009-10-05 18:18:37 +00:00
Nathan Fritz
5dc967a360 removed apply()s from xep 50 2009-10-05 17:44:59 +00:00
Nathan Fritz
2349f849e3 bugfixes 2009-09-25 17:35:10 +00:00
Nathan Fritz
5593848490 * gmail plugin now works in python3 2009-09-01 17:27:39 +00:00
Nathan Fritz
b9f7af885c * fixed some python3 transition bugs
* added status options to muc joining
2009-09-01 17:24:52 +00:00
Nathan Fritz
05c9ea5c1d * converted sleekxmpp to Python 3.x
* sleekxmpp no longer spawns threads for callback handlers -- there are now two threads: one for handlers and one for reading. callback handlers can get results from the read queue directly with the "wait" handler which is used in .send() for the reply catching argument.
2009-08-31 22:46:31 +00:00
Remko Tronçon
a1ece44368 Fixed typo. 2009-07-11 18:20:47 +00:00
Nathan Fritz
a9262c4e0a * bugfixes 2009-06-16 11:59:55 +00:00
Nathan Fritz
96b103b275 moved seesmic branch to trunk 2009-06-03 22:56:51 +00:00