work on refactoring comms on message receved mechanisem for more flexability