public BaseOutput GenarateOTPByNumber(string phoneNumber, out string itemOut) { CRUDOperation cRUDOperation = new CRUDOperation(); BaseOutput baseOutput; try { if (string.IsNullOrEmpty(phoneNumber)) { itemOut = null; return(baseOutput = new BaseOutput(true, CustomError.PhoneNumberErrorCode, CustomError.PhoneNumberErrorDesc, "")); } byte[] bytes = System.Text.Encoding.UTF8.GetBytes(phoneNumber); var window = new VerificationWindow(previous: 1, future: 1); var totp = new Totp(bytes, step: 300); var result = totp.ComputeTotp(DateTime.UtcNow); poctgoyerciniSRV.smsservice srv = new poctgoyerciniSRV.smsservice(); List <string> lists = new List <string>(); string[] numbers = new string[1]; numbers[0] = phoneNumber; string[] resultArray = new string[1]; resultArray = srv.SmsInsert_1_N(WebServiceUtil.SMSUserName, WebServiceUtil.SMSPassword, DateTime.Now, null, numbers, result); if (!string.IsNullOrEmpty(resultArray[0])) { tbl_OTP _OTP = new tbl_OTP() { PhoneNumber = phoneNumber, CreateTime = DateTime.Now, OTPCode = result, ISsuccess = 0, }; tbl_OTP oTP = cRUDOperation.AddOTP(_OTP); itemOut = _OTP.OTPCode; return(baseOutput = new BaseOutput(true, BOResultTypes.Success.GetHashCode(), BOBaseOutputResponse.SuccessResponse, "")); } else { itemOut = null; return(baseOutput = new BaseOutput(true, CustomError.OTPCodeNotSendSMSServiceCode, CustomError.OTPCodeNotSendSMSServiceDesc, "")); } } catch (Exception ex) { throw; } }