The websocket standard allows for ping-packets with no data. But since the PingAgent uses 0 to determine that it doesn't need to send a pong it essentially ignores it. There is a related issue that encodeData() in the FrameEncoder processes zero-length packets with zero frames and thereby ignores them.