[Twisted-Python] twisted.news cleanups and tests
screwtape at froup.com
Sun Apr 13 03:53:46 EDT 2003
On Sunday, Apr 13, 2003, at 16:16 Australia/Sydney, Glyph Lefkowitz
> twisted.im also needs to be refactored, in order to make its API more
> coherent and easier to register observers of. However, it remains
> unclear whether this kind of functionality actually deserves a
> separate package (that .words will use) or whether it will go into
> .words directly. Moshe has me mostly convinced that it should remain
> an independant package, since real-time-client code is going to look
> significantly different to abstract-message-processing-and-forwarding
I'll be watching this with interest. I'm not going to say it's
impossible or crazy, but I'd like to see how all the inherent
difficulties in making a "generic messagey thing" are overcome.
From the top of my head:
- IMAP and NNTP have a bunch of folders, POP3 has just one.
- IMAP lets you create folders and move messages about, NNTP doesn't.
- Instant messaging apps have no folders, but you could no doubt
synthesise an 'inbox'. Some IM systems let you have 'categories' of
buddies, which you might present as message folders. However, then IM
has the restriction that a given folder can only contain messages from
one recipient, which is not the case with IMAP or NNTP.
- POP3 and NNTP need to be polled for new messages, IM protocols alert
you when a new message comes in. I'm not sure which way IMAP goes.
- Email and usenet messages generally have a variety of interesting
and useful headers that end-user applications are going to want to look
at, IM messages do not.
- IMAP and IM are stateful protocols, POP3 is not. I'm not sure about
- Email and usenet messages have message-threading, IM does not.
I can't see any sort of 'core feature set' and 'extension feature set'
in the above list, more like every protocol and format cherry-picks the
features it wants from a central store.
Another idea - of the various communication sources I personally use,
they generally fall into 'IM-style (ICQ, IRC)' and 'email-style (email,
usenet)' interfaces. One message source that I read in email-style that
I have not yet seen mentioned is RSS. That would be an interesting
thing to add to a Universal Messaging client, wouldn't it? :)
More information about the Twisted-Python