message handler (client) should be complete