An ID for a message is sufficient iff there is a defined, deterministic way to turn it into a URL. In the case of an IRC-like protocol, that would mean that you needed a defined URL structure, or a defined way for the server to give a URL template to the client.