EM-WebSocket is an asynchronous WebSocket server library for Ruby built on the EventMachine networking framework. It lets applications accept connections and react to open, message, close, error, ping, and pong events through callbacks. The server supports the standardized WebSocket protocol as well as numerous older drafts retained for legacy compatibility.