ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/Net-XMPP2/README
Revision: 1.2
Committed: Wed Apr 25 19:20:05 2007 UTC (17 years, 11 months ago) by elmex
Branch: MAIN
Changes since 1.1: +82 -4 lines
Log Message:
some minor changes and bugfixes

File Contents

# User Rev Content
1 elmex 1.1 NAME
2     Net::XMPP2 - An implementation of the XMPP Protocol
3    
4     VERSION
5     Version 0.01
6    
7     SYNOPSIS
8 elmex 1.2 use Net::XMPP2::Connection;
9    
10     or:
11    
12     use Net::XMPP2::IM::Connection;
13    
14     DESCRIPTION
15     This is the head module of the Net::XMPP2 XMPP client protocol (as
16     described in RFC 3920 and RFC 3921) framework.
17    
18     Net::XMPP2::Connection is a RFC 3920 conformant "XML" stream
19     implementation for clients, which handles tcp connect up to the resource
20     binding. And provides low-level access to the XML nodes on the XML
21     stream along with some high level methods to send the predefined XML
22     stanzas.
23    
24     Net::XMPP2::IM::Connection is a more highlevel module, which is derived
25     from Net::XMPP2::Connection. It handles all the instant messaging client
26     functionality described in RFC 3921.
27    
28     For a list of "Supportet extensions" see below.
29    
30     There are also other modules in this distribution, for example:
31     Net::XMPP2::Util, Net::XMPP2::Writer, Net::XMPP2::Parser and those i
32     forgot :-) Those modules might be helpful and/or required if you want to
33     use this framework for XMPP.
34    
35     See also Net::XMPP2::Writer for a discussion about the brokeness of XML
36     in the XMPP specification.
37    
38     Why (yet) another XMPP module?
39     The main outstanding feature of this module in comparsion to the other
40     XMPP (aka Jabber) modules out there is the support for AnyEvent.
41     AnyEvent permits you to use this module together with other I/O event
42     based programs and libraries (ie. Gtk2 or Event).
43    
44     The other modules could often only be integrated in those applications
45     or librarys by using threads. I decided to write this module because i
46     think CPAN lacks an event based XMPP module. Threads are unfortunately
47     not an alternative in Perl at the moment due the limited threading
48     functionality they provide and the global speed hit. I also think that a
49     simple event based I/O framework might be a bit easier to handle than
50     threads.
51    
52     Another thing was that I didn't like the APIs of the other modules. In
53     Net::XMPP2 I try to provide low level modules for speaking XMPP as
54     defined in RFC 3920 and RFC 3921 (see also Net::XMPP2::Connection and
55     Net::XMPP2::IM::Connection). But I also try to provide a high level API
56     for easier usage for instant messaging tasks and clients.
57    
58     A note about TLS
59     This module also supports TLS, as the specification of XMPP requires an
60     implementation to support TLS.
61    
62     There are maybe still some bugs in the handling of TLS in
63     Net::XMPP2::Connection. So keep an eye on TLS with this module. If you
64     encounter any problems it would be very helpful if you could debug them
65     or at least send me a detailed report on how to reproduce the problem.
66    
67     (As I use this module myself I don't expect TLS to be completly broken,
68     but it might break under different circumstances than I have here. Those
69     circumstances might be a different load of data pumped through the TLS
70     connection.)
71    
72     I mainly expect problems where aviable data isn't properly read from the
73     socket or written to it. You might want to take a look at the
74     "debug_send" and "debug_recv" events in Net::XMPP2::Connection.
75    
76     Supportet extensions
77     This is the list of supported XMPP extensions:
78    
79     XEP-0086 - Error Condition Mappings
80     "A mapping to enable legacy entities to correctly handle errors from XMPP-aware entities."
81    
82     This extension will enable sending of the old error codes when
83     generating a stanza error with for example:
84     Net::XMPP2::Writer::write_error_tag
85    
86     XEP-0077 - In-Band Registration
87     This extension lets you register new accounts "in-band". To use this
88     look at the description of the "register" option to the "new" method
89     of Net::XMPP2::Connection.
90 elmex 1.1
91     AUTHOR
92     Robin Redeker, "<elmex at ta-sa.org>"
93    
94     BUGS
95     Please report any bugs or feature requests to "bug-net-xmpp2 at
96     rt.cpan.org", or through the web interface at
97     <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Net-XMPP2>. I will be
98     notified, and then you'll automatically be notified of progress on your
99     bug as I make changes.
100    
101     SUPPORT
102     You can find documentation for this module with the perldoc command.
103    
104     perldoc Net::XMPP2
105    
106     You can also look for information at:
107    
108     * AnnoCPAN: Annotated CPAN documentation
109     <http://annocpan.org/dist/Net-XMPP2>
110    
111     * CPAN Ratings
112     <http://cpanratings.perl.org/d/Net-XMPP2>
113    
114     * RT: CPAN's request tracker
115     <http://rt.cpan.org/NoAuth/Bugs.html?Dist=Net-XMPP2>
116    
117     * Search CPAN
118     <http://search.cpan.org/dist/Net-XMPP2>
119    
120     ACKNOWLEDGEMENTS
121     COPYRIGHT & LICENSE
122     Copyright 2007 Robin Redeker, all rights reserved.
123    
124     This program is free software; you can redistribute it and/or modify it
125     under the same terms as Perl itself.
126