> Some alternatives we considered and didn't go for:
>       - write something in Zope to listen for SMTP connections, effectively
>         large portions of an MTA. This would be cool but painful.

Providing a basic SMTP server is not at all difficult to do in Python.  I did a 
cut-down one once as
part of a test system, and extending it would be straightforward (the cut-downness was 
not in
structure, just did not bother to implement the SMTP commands I did not need - the 
underlying design
was a state-machine [natch!] - however one problem I did come across was that it was 
not possible to
implement the state machine completely from the RFC, which contains ambiguities).

Some potential troublespots in re-visiting this work:

 - error handling, if done properly, might cause some problems (the state machine 
helps a lot here,
but I cannot guarantee that I did not miss something obvious)
 - emails nowadays can be very large, with MIME encoded movies and stuff.  Each 
received email has
to be stored somewhere - can we (would we want to?) reliably store this kind of data 
in the ZODB?

>       - pull mail from a POP or IMAP server. This had the downside that it
>         introduced polling into the system (slow) and also required something
>         to happen on a schedule, which doesn't happen in Zope yet.

Funny you should mention this.  I am considering moving my domain from the current ISP 
to a friend's
server.  One of my current ISP's services that I use is webmail, so I was looking at 
how this could
be done after the move.  Sending mail through a web interface is a doddle, but what 
about viewing
received emails?  I had got as far as realizing that something could be built on 
Python's support
for POP3 - use POP3 to collect the headers of currently available messages, create a 
web page
displaying them, with each entry linked to a page that would download (without 
deleting) an
individual email.

I think that my current ISP's webmail system must be doing something like this.  So 
far it looks
fairly straightforward to implement.

(who now realizes that he has to find that old Python SMTP server code - now I wonder 
where I put it

Zope maillist  -  [EMAIL PROTECTED]
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-dev )

Reply via email to