public function register($username, $email, $new_password, $repeat_new_password, $client_id, $ip, $country, $city, $language=null, $facebookId = null, $enabled = false)
    {
        if (!is_string($username) || 0 >= strlen($username)) {
            throw new InvalidArgumentException("username must be a non-empty string");
        }
        if (!is_string($email) || 0 >= strlen($email)) {
            throw new InvalidArgumentException("email must be a non-empty string");
        }
        if (!is_string($new_password) || 0 >= strlen($new_password)) {
            throw new InvalidArgumentException("new_password must be a non-empty string");
        }
        /*if (!is_string($nick) || 0 >= strlen($nick)) {
            throw new InvalidArgumentException("nickName must be a non-empty string");
        }*/
        if (!is_string($repeat_new_password) || 0 >= strlen($repeat_new_password)) {
            throw new InvalidArgumentException(
                "repeat_new_password must be a non-empty string");
        }
        if (strcmp($new_password, $repeat_new_password)) {
            throw new InvalidArgumentException(
                "the new_password and repeat_new_password is not equals");
        }

        $userData = array(
            'user_registration' =>
                array(
                    'email' => $email,
                    'username' => $username,
                    'plainPassword' => array(
                        'first' => $new_password,
                        'second' => $repeat_new_password
                    ),
                    'client'=>$client_id,
                    'ip'=> $ip,
                    'language' => $language,
                    'facebookId' => $facebookId,
                    'country' => $country,
                    'city' => $city
                ),
        );

        if($enabled){
            $userData['user_registration']['enabled'] = '1';
        }

        $command = $this->client->getCommand(
            "Register",
            $userData
        );
        return $this->executeCommand($command);
    }