abstracted messaging to module