peer to peer chat with React