summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-06-27Refactored unit tests for XEP-0030, XEP-0033, and XEP-0085 to use the new ↵Lance Stout
SleekTest class.
2010-06-27Fixed indentation to please tab nanny during unit tests.Lance Stout
2010-06-27Added a new SleekTest class that provides useful methods for test cases.Lance Stout
Can now use: (where self is a SleekTest instance) self.stanzaPlugin(stanza, plugin) self.Message() \ self.Iq() > Just like basexmpp.Message(), etc. self.Presence() / self.checkMessage(msg, xmlstring) self.checkIq(iq, xmlstring) self.checkPresence(pres, xmlstring) <- Not implemented yet, but stub is there. The check* methods also accept a use_values keyword argument that defaults to True. When this value is True, an additional test is executed by creating a stanza using getValues() and setValues(). Since some stanza objects can override these two methods, disabling this test is sometimes required.
2010-06-27Fixed several errors in xep_0033 plugin.Lance Stout
The method getAddresses was removing addresses by mistake. Several instances of using self.attrib instead of self.xml.attrib.
2010-06-27Fixed error in setState() method.Lance Stout
2010-06-27Fixed typoLance Stout
2010-06-27Fixed tab and spacing issue to please the Tab Nanny during unit tests.Lance Stout
2010-06-22Added plugin and tests for XEP-0033, Extended Stanza Addresses.Lance Stout
XEP-0033 can be useful for interacting with XMPP<->Email gateways.
2010-06-07Needed to use copy.deepcopy() to copy XML objects to make sure that the ↵Lance Stout
entire tree is copied.
2010-06-06Modified basexmpp.event() to pass a copy of the event data to each handler.Lance Stout
2010-06-06Added a __copy__ method to both ElementBase and StanzaBase.Lance Stout
Stanzas may now be copied using copy.copy(), which will be useful to prevent stanza objects from being shared between event handlers.
2010-06-03Modified xmlstream.py to pass a clean stanza object to each stream handler.Lance Stout
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-02added very, very, very basic atom stanzaNathan Fritz
2010-06-02Return result of iq.send() for disco requests. Events are still triggered, ↵Lance Stout
but now the caller can determine if there was a timeout.
2010-06-02Merge branch 'develop' of git://github.com/fritzy/SleekXMPP into developLance Stout
2010-06-01Merge branch 'develop' of github.com:fritzy/SleekXMPP into developNathan Fritz
2010-06-01hack fix for session before bindNathan Fritz
2010-06-01if binding and session are advertised in the same go, do session firstNathan Fritz
2010-06-01Make sure that the id parameter used in xmpp.makeIq is converted to a string.Lance stout
Otherwise, SleekXMPP will barf on trying to serialize an integer when it expects text.
2010-06-01Added additional parameter to xep_0030's getInfo and getItems methods.Lance stout
By using dfrom, a server component may send disco requests using any of its JIDS.
2010-05-31included jobs pluginNathan Fritz
2010-05-31Make sure that the node is alway set in disco responses.Lance stout
2010-05-31Merge branch 'xep_0085' into developLance stout
2010-05-31Added implementation and tests for XEP-0085 - Chat State Notifications.Lance stout
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-31Scheduler waits too longer, and pubsubstate registration was backwardsNathan Fritz
2010-05-31Added missing 'internal-server-error' condition to error stanza interface.Lance stout
2010-05-31Touched up the style of creating an Iq stanza.Lance stout
2010-05-31Added 'resource-constraint' to the list of error conditions.Lance stout
2010-05-31Added unit tests for the new XEP-0030 stanza objects. All pass.Lance Stout
(cherry picked from commit e1b814f27bf160f20bb30c315ca30769d217482d)
2010-05-31Updated the XEP-0030 plugin to work with stanza objects instead of ↵Lance Stout
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-28control-c fixesNathan Fritz
2010-05-27added pubsubjobs testNathan Fritz
2010-05-27added pubsub state stanzas and scheduled eventsNathan Fritz
2010-05-26adding schedulerNathan Fritz
2010-05-26added muc room to readmeNathan Fritz
2010-05-26fixed dns unicode problemNathan Fritz
2010-05-26plugins now are checked for post_init having ran when process() is calledNathan Fritz
2010-05-26Changed example.py to register first Xep_0030.Hernan E Grecco
This a simple fix to prevent getting a key error as many plugins add features to Xep_0030. A better fix would be to call pos_init after all plugins are loaded. An even better fix would be to define dependencies for each plugin and registering on demand.
2010-05-26Fixed error registering a plugin. To add a feature to another plugin, it ↵Hernan E Grecco
should look into xmpp.plugin dict
2010-05-24Merge branch 'master' of git@github.com:fritzy/SleekXMPPNathan Fritz
2010-05-24updated README, index fix for componentNathan Fritz
2010-05-25Added a flag to registerPlugin to control calling the plugin's post_init method.Lance Stout
2010-05-25Modified the return values for several methods so that they can be chained.Lance Stout
For example: iq.reply().error().setPayload(something.xml).send()
2010-05-25Added the error attribute 'code' to the Error object interface.Lance Stout
2010-05-24added plugin indexing to componentsNathan Fritz
2010-05-20added test_events and testing new del_event_handlerNathan Fritz
2010-05-21Added del_event_handler to remove handler functions for a given event.Lance Stout
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-12added test for unsolicided unavailable presence and fixed bug to make it passNathan Fritz
2010-05-12fixed a rather large memory leakNathan Fritz
2010-05-11refactored presence tracking and fixed jidInRoomNathan Fritz