base websocket source with netty