add websocket and bug