Fix ACConnectionMonitor didn't reconnect There were three main issues. The first was that ACConnectionMonitor started polling onConnected, and stopped on client.disconnect(). This meant that it would never be restarted after its first disconnection, since it would never receive another onConnected event. The second was that ACStarscreamWebSocket wasn't calling onDisconnected in all scenarios where it was disconnected. Specifically, it wasn't calling onDisconnected during cancelled events (i.e. if client rather than server called disconnect) or error events. Finally, I don't think that Starscream sockets are meant to be reused after a disconnect, so it now creates a new socket per connect request.