JOAP version 0.01 ================= tag: main README This module provides a Perl implementation of the Jabber Object Access Protocol, or JOAP. JOAP a language-independent distributed object protocol that lets developers expose object methods, attributes, and inheritance hierarchies over the Jabber network. Of course, once they're exposed, other folks can use them. The Perl package, JOAP.pm and friends, provides a number of JOAP-related features. It allows you (with a bit of work) to put your Perl objects on the Jabber network so that other programmers can access them from remote locations. And it lets you (if you're not the guy who's putting objects on the Jabber network) use other people's objects in a really transparent and easy way (I think). The definition of JOAP is here: http://www.jabber.org/jeps/jep-0075.html I should note that this is an early and experimental implementation of the JOAP protocol. And the definition itself is still in flux. But as of this writing this software is useable for development and exploration, and I think if you're interested and give it a shot you can do really cool things with it. INSTALLATION To install this module type the following: perl Makefile.PL make make test make install Note that this is communications software, and you're not going to get the most interesting tests to work unless there's a server running to test against. See the file TESTING in this package for more info on how to do complete tests. At the very least, it will give you a clue about how to deploy JOAP objects. DEPENDENCIES This module depends on a lot of other modules, which, like, go figure. Net::Jabber - 1.28 This is the main Perl library for creating Jabber software. It roX0rs. Class::Data::Inheritable - 0.02 This is used a lot for managing classes. Symbol - 1.04 Used for autoloaded class accessors, to stuff the class attributes into packages. Error - 0.15 Used a lot for doing exception-style exits. Test::More - 0.45 This is what the entire test system uses. I used perl 5.8.0 to develop this software, and except for Net::Jabber and Class::Data::Inheritable these were all just built right in and stuff. CONTACT INFO There's a Web page for this project on JabberStudio, which you can find here: http://joap-perl.jabberstudio.org/ You can file bug reports with the cool bug reporting facility here: http://www.jabberstudio.org/projects/joap-perl/bugs/ ...and make feature requests here: http://www.jabberstudio.org/projects/joap-perl/features/ There's a mailing list which you can sign up for here: http://www.jabberstudio.org/cgi-bin/mailman/listinfo/joap-perl-dev/ Messages should be sent to joap-perl-dev@jabberstudio.org. There's a Jabber conference for the project here: joap-perl@conference.jabberstudio.org I can personally be contacted at evan@prodromou.san-francisco.ca.us by email, and at EvanProdromou@jabber.org by Jabber. More information on Jabber itself can be found here: http://www.jabber.org/ The definition of the Jabber Object Access Protocol is here: http://www.jabber.org/jeps/jep-0075.html This implementation conforms to version 0.3 of the protocol. COPYRIGHT AND LICENCE Copyright (C) 2003 Evan Prodromou This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA