Added generic ClientMessage interface