change event from read to message count, make event happen on peer where it is useful rather than self