Beispiel #1
0
        /// <summary>
        /// Register a user while optionally accepting legal policies, password, and displayName
        /// </summary>
        /// <param name="request">To accept policies, fill acceptedPolicies field</param>
        /// <param name="callback">Returns a Result that contains RegisterUserResponse via callback</param>
        public void RegisterAndAcceptPolicies(RegisterUserRequestv2 request, ResultCallback <RegisterUserResponse> callback)
        {
            Report.GetFunctionLog(this.GetType().Name);

            //authType other than EMAILPASSWD is not supported
            request.authType = AuthenticationType.EMAILPASSWD;
            Assert.IsTrue(
                Regex.IsMatch(request.dateOfBirth, "^\\d{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$"),
                "Date of birth format is yyyy-MM-dd");

            this.coroutineRunner.Run(this.userAccount.Registerv2(request, callback));
        }
Beispiel #2
0
        /// <summary>
        /// Register a user by giving username, password, and displayName
        /// </summary>
        /// <param name="emailAddress">Email address of the user, can be used as login username</param>
        /// <param name="username">The username can be used as login username, case insensitive, alphanumeric with allowed symbols underscore (_) and dot (.)</param>
        /// <param name="password">Password to login, 8 to 32 characters, satisfy at least 3 out of 4 conditions(uppercase, lowercase letters, numbers and special characters) and should not have more than 2 equal characters in a row.</param>
        /// <param name="displayName">Any string can be used as display name, make it more flexible than Username</param>
        /// <param name="country">User'd country, ISO3166-1 alpha-2 two letter, e.g. US.</param>
        /// <param name="dateOfBirth">User's date of birth, valid values are between 1905-01-01 until current date.</param>
        /// <param name="callback">Returns a Result that contains RegisterUserResponse via callback</param>
        public void Registerv2(string emailAddress, string username, string password, string displayName, string country,
                               DateTime dateOfBirth, ResultCallback <RegisterUserResponse> callback)
        {
            Report.GetFunctionLog(this.GetType().Name);
            var registerUserRequest = new RegisterUserRequestv2
            {
                authType     = AuthenticationType.EMAILPASSWD,
                emailAddress = emailAddress,
                username     = username,
                password     = password,
                displayName  = displayName,
                country      = country,
                dateOfBirth  = dateOfBirth.ToString("yyyy-MM-dd")
            };

            this.coroutineRunner.Run(this.userAccount.Registerv2(registerUserRequest, callback));
        }
Beispiel #3
0
        public IEnumerator Registerv2(RegisterUserRequestv2 registerUserRequest,
                                      ResultCallback <RegisterUserResponse> callback)
        {
            Report.GetFunctionLog(this.GetType().Name);
            Assert.IsNotNull(registerUserRequest, "Register failed. registerUserRequest is null!");

            var request = HttpRequestBuilder.CreatePost(this.baseUrl + "/v4/public/namespaces/{namespace}/users")
                          .WithPathParam("namespace", this.@namespace)
                          .WithContentType(MediaType.ApplicationJson)
                          .WithBody(registerUserRequest.ToUtf8Json())
                          .GetResult();

            IHttpResponse response = null;

            yield return(this.httpClient.SendRequest(request, rsp => response = rsp));

            var result = response.TryParseJson <RegisterUserResponse>();

            callback.Try(result);
        }