fix websocket .on recursion