add message processing