What non-standard behaviour features does Gmail exhibit, when it is programmatically used as a POP3 server?
I am trying to prepare a complete list of behaviour that Gmail POP3 exhibits, that you wouldn’t expect to generally find in a POP3 server.
For example, Gmail appears to ignore the DELE (delete) command from a POP3 client. Instead, it implements its own delete and archive strategy.
The purpose of preparing a list is to avoid developers testing a POP3 client against the Gmail POP3 server and then assuming that all POP3 servers behave in the same way.
Can anyone provide a more complete list of non-standard behaviour?
Solution 1:
I cannot come with a complete list, but I can come with what I know of:
- Fetching an email will hide it from all later POP3 sessions unless you reset your gmail pop3 settings (sets them again).
To be more precise: I found out that this happens with the RETR command only. Not the TOP command. I also noticed that if the QUIT command is not sent after issuing RETR commands, the messages are kept on the server for later sessions. It is therefore possible to fetch the messages and just close the connection, and gmail will keep the messages visible for the next session. - Depending on your gmail settings, a fetched email can be deleted from your gmail web interface as well.
- Logging in with a special "recent:" in front of your username will show emails received in the last 30 days, regardless of being sent to another POP3 client already.
Those are the only non-standard behaviour I know about the gmail pop3 service. Most of this information I have gathered while being a developer for OpenPop.NET.
References that might be of use:
- GMail's POP3 behavior
- GMail - Behavior Explained
- Understanding GMail’s Behavior
- Using POP on multiple clients or mobile devices