completed websocket parser