[jdev] xmppd.py first release
Алексей Нежданов
snake at penza-gsm.ru
Fri Sep 24 00:07:53 CDT 2004
В сообщении от 24 Сентябрь 2004 08:12 Byron Ellacott написал(a):
> I grabbed xmppd, and tried to get it working. There's a handful of
> changes I needed to make to get my Gaim client able to sign on:
>
> 1) In modules/stream.py, a test "session.xmlns <> NS_CLIENT" was being
> made; however session.xmlns is a list. This test was made twice, I
> changed both instances to "NS_CLIENT not in session.xmlns" and, well, it
> works, but I don't know if it's strictly right. :)
>
> 2) Sending a message fails, but in the 0.1 release tarball it fails by
> crashing the server. In modules/router.py, the error
> ERR_FEATURE_UNAVAILABLE was being used, when there is no such error, and
> it probably should have been ERR_FEATURE_NOT_AVAILABLE or
> ERR_SERVICE_UNAVAILABLE. I went with the former, and Gaim now
> (expectedly) whines at me when I try to send a message, but the server
> doesn't crash. :)
>
> Also, the server crashes whenever a client disconnects; apparently the
> unregistersession() method is being called twice, but I cannot say why
> without much deeper digging.
I'll look through these issues today. The main idea was not even to make it
work [good] but to show what I am trying to develop.
I'm awainting comments from interested parties to be able re-think the design
concepts and to make fixes before project will continue to develop.
> There's definitely potential here, though.
In particular the goals is (cite):
* Modular -- designed so that people can contribute to it without having
to grok the entire codebase.
* Hackable -- written in a language that lots of developers understand and
can productively code in.
* Well-documented -- including a complete architectural description,
user/admin guide, and in-depth comments in the code (see hackability above).
* Cross-platform -- works on Linux/Unix, Windows, and Mac OS X.
* Easy-to-use -- no more difficult configuration or installation, good
user interfaces, and lots of help files.
* Protocol-compliant -- wouldn't it be cool if you could actually make use
of protocols like pubsub, XHTML, and file transfer?
Comments on existing code:
(*Modular) - quite modular already. New modules included automatically you are
to specify only the classes that you need.
(*Hackable) - a python project. Do not know though is it really the common
language.
(*Well-documented) None for now. But fixable.
(*Cross-platform) Yep
(*Easy-to-use) This is all about architecture and configuration interface.
Achievable but unknown for now.
(*Protocol-compliant) Trying to. XMPP-Core and XMPP-IM is my working documents
10 days already.
--
Respectfully
Alexey Nezhdanov
More information about the JDev
mailing list