change emit 'message' interface