|
1 # $Id: __init__.py,v 1.9 2005/03/07 09:34:51 snakeru Exp $ |
|
2 |
|
3 """ |
|
4 All features of xmpppy library contained within separate modules. |
|
5 At present there are modules: |
|
6 simplexml - XML handling routines |
|
7 protocol - jabber-objects (I.e. JID and different stanzas and sub-stanzas) handling routines. |
|
8 debug - Jacob Lundquist's debugging module. Very handy if you like colored debug. |
|
9 auth - Non-SASL and SASL stuff. You will need it to auth as a client or transport. |
|
10 transports - low level connection handling. TCP and TLS currently. HTTP support planned. |
|
11 roster - simple roster for use in clients. |
|
12 dispatcher - decision-making logic. Handles all hooks. The first who takes control over fresh stanzas. |
|
13 features - different stuff that didn't worths separating into modules |
|
14 browser - DISCO server framework. Allows to build dynamic disco tree. |
|
15 filetransfer - Currently contains only IBB stuff. Can be used for bot-to-bot transfers. |
|
16 |
|
17 Most of the classes that is defined in all these modules is an ancestors of |
|
18 class PlugIn so they share a single set of methods allowing you to compile |
|
19 a featured XMPP client. For every instance of PlugIn class the 'owner' is the class |
|
20 in what the plug was plugged. While plugging in such instance usually sets some |
|
21 methods of owner to it's own ones for easy access. All session specific info stored |
|
22 either in instance of PlugIn or in owner's instance. This is considered unhandy |
|
23 and there are plans to port 'Session' class from xmppd.py project for storing all |
|
24 session-related info. Though if you are not accessing instances variables directly |
|
25 and use only methods for access all values you should not have any problems. |
|
26 |
|
27 """ |
|
28 |
|
29 import simplexml,protocol,debug,auth,transports,roster,dispatcher,features,browser,filetransfer,commands |
|
30 from client import * |
|
31 from protocol import * |