combine internal logic of send_message and reply
this also prepares the way for allowing notify and send_message to return validation errors