PIMAP Messaging Server
Client establishes and authenticates a PIMAP session over a TCP connection.
It performs an IMAP state comparison for subscribed folders.
Client-originated events (send, delete, etc.) are propagated.
Server uses connection to notify of server originated events.
Server receives notifications from the Message Store in different ways:
Message Store has notification rules capabilities and can actively notify the PIMAP dispatcher.
PIMAP dispatcher opens an IDLE session to the Message Store in behalf of the user.
Client reacts to notifications if needed (e.g. fetches body of new message).
Notifications may be missed when the client suddenly drops connection.
In this case, the server sends a RESYNC untagged response whenever the client reconnects.
2. TCP binding, in-band notifications