I made this for MC version 1.6.4, so it probably works with a few older and newer versions too, i just haven't tested yet; it uses craftbukkit
This is (opinion...) a better alternative for essentials' /mail command. This plugin also allows coloured messages too.
You can "Queue" a message for a player, and when they join, they will receive that message about 5 seconds later (customisable in config.yml). It will also message players who are online too (just after sending, but you could just use /msg though...).
The messages aren't automatically cleared, you can run the command /om clear to clear your messages. You can also send messages from console, or from the messageQueue.yml config, then run /om reload to load the messages from the config
there is a slight "bug" in the plugin; every time a player joins, in console it will say the player has pending messages regardless of if they do or dont have pending messages. will fix soon :))

This uses PermissionsEx, so you need that (or anything thats called ru.tehkode.permissions.bukkit.PermissionsEx)
The permissions themselves are:
the messageQueue.yml config is structured like so (dont remove "queued"):
queued:
PlayerToReceiveTheMessages:
Sender1: '&4The Message &7here with &3colourful &atext &c:)'
Sender2: 'e'
AnotherReceiverPlayer:
SomePerson: '&4no ok'
the config is written to each time someone sends or clears messages, there isnt a periodic save its just done instantly