Changed to socket io implementation