collaboration over websockets