GAE supports both incoming and outgoing emails: http://code.google.com/appengine/docs/python/mail/
Have any open source email clients been written for GAE? Something that handles encoding issues, attachments, grouping by conversations, etc.
To send email messages, use the JavaMail classes included with the App Engine SDK. When you create a JavaMail Session, if you do not provide any SMTP server configuration, App Engine uses the Mail service for sending messages.
Gmail API is available for free, but it has certain daily usage limits for API calls. Daily usage: 1 billion API calls per day. Per User Rate Limit: 250 API calls per user per second.
The Google App Engine SDK can send and receive email; however, there are certain limitations in place that would prevent an actual email client from being built:
http://code.google.com/appengine/docs/python/mail/receivingmail.html
The problem I see with this is that you would need to have your users setup forwarding rules in their Google Accounts so that incoming mail is forwarded to your app using the above format. This means that they would need to rely on another email service, which would beg the question of what value yours would add over top of the existing service.
Sending is not quite so bad. The Google App Engine App can send mail on behalf of users logged in with their Google Account, so one could build an outbound email client using a user's Google Account.
http://code.google.com/appengine/docs/python/mail/sendingmail.html
For receiving mail, there are instructions here on how to do that by forwarding mail from an existing email client. It is currently not possible to use your own domain to receive emails without forwarding:
Custom Incoming Mail Domain With Google App Engine
In summary, to answer your question, if someone has built an email client on App Engine, they have not made it public or done enough marketing to appear in search results. Even so, their implementation would be subject to the limitations described above.
If you are looking for a general purpose Web-based Email client like Horde to run on the App Engine I'd say you are out of luck yet.
GAE blocks all incoming and outgoing RAW Socket traffic; to access the outside cloud you need to use the URLFetch API, and it only allows you to access HTTP websites. So you can't talk POP3 or IMAP from your app, nor you can listen to SMTP traffic.
You'd need some intermediate service that relays POP3 or IMAP through an HTTP web service running on a server outside GAE, like a VPS, EC2, Rackspace, etc.
I ended up writing my own helpdesk style app on GAE, with some basic email functionality. Working well so far.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With