public async Task <ActionResult> start([FromBody] PhoneVerificationRequestModel verificationRequest) { HttpContext.Session.Set <PhoneVerificationRequestModel>("phone_verification_request", verificationRequest); if (ModelState.IsValid) { string result; if (verificationRequest.via == Verification.SMS) { result = await authy.phoneVerificationRequestAsync( verificationRequest.CountryCode, verificationRequest.PhoneNumber ); } else { result = await authy.phoneVerificationCallRequestAsync( verificationRequest.CountryCode, verificationRequest.PhoneNumber ); } return(Ok(result)); } else { return(BadRequest(ModelState)); } }
public async Task <ActionResult> Start(PhoneVerificationRequestModel verificationRequest) { string sessionStr = JsonConvert.SerializeObject(verificationRequest); HttpContext.Session.SetString(_2faVerificationModelSessionName, sessionStr); if (ModelState.IsValid) { string result; result = await authy.phoneVerificationRequestAsync( verificationRequest.CountryCode, verificationRequest.PhoneNumber ); return(RedirectToAction("Verification", "PhoneVerification")); } else { return(BadRequest(ModelState)); } }
public async Task <JsonResult> StartRegisterBySendingVerificationRequest(PhoneVerificationRequestModel verificationRequest) { var response = new ResultModel(); if (!ModelState.IsValid) { return(JsonModelStateErrors()); } var validPhone = await _authy.ValidatePhoneAsync(verificationRequest.CountryCode, verificationRequest.PhoneNumber); if (!validPhone.IsSuccess) { return(Json(validPhone.ToBase())); } var isUsedPhoneCheck = await _authy.CheckIfPhoneIsUsedByAnotherUserAsync(validPhone.Result); if (!isUsedPhoneCheck.IsSuccess) { return(Json(isUsedPhoneCheck)); } var userName = _authy.NormalizePhoneNumber(verificationRequest.CountryCode, verificationRequest.PhoneNumber); var user = await _userManager.UserManager.FindByNameAsync(userName); if (user != null) { response.Errors.Add(new ErrorModel(string.Empty, "The user already exists")); return(Json(response)); } HttpContext.Session.Set("phone_verification_request", verificationRequest); var result = await _authy.PhoneVerificationRequestAsync( verificationRequest.CountryCode, verificationRequest.PhoneNumber, verificationRequest.Via ); return(Json(result)); }
public IActionResult Index(PhoneVerificationRequestModel model) { return(View(model)); }