public async Task <IHttpActionResult> IsAuth(PhoneVerifyViewModel model)
        {
            if (model != null)
            {
                try
                {
                    var verification = await this._verificationRepository.GetById(model.Id);

                    if (verification != null)
                    {
                        if (verification.Account.Phone == model.Number && verification.VerifyCode == model.Code.ToString())
                        {
                            await this._verificationRepository.DeleteCode(model.Id);

                            return(Ok());
                        }
                    }
                }
                catch (AccountException)
                {
                    return(BadRequest());
                }
            }

            return(BadRequest());
        }
        public IHttpActionResult SendSMS(string id, string phone)
        {
            TwilioClient.Init(this._accountSid, this._accountAuth);

            var numberPhone            = "+" + phone;
            var to                     = new PhoneNumber(numberPhone);
            var from                   = new PhoneNumber(this._from);
            var body                   = $"Your verification code: {this._number}";
            var message                = MessageResource.Create(to: to, from: from, body: body);
            PhoneVerifyViewModel model = new PhoneVerifyViewModel()
            {
                Id = int.Parse(id), Number = numberPhone
            };

            model.Code = this._number;
            var item = Copy.CopyToVerification(model);

            try
            {
                this._verificationRepository.AddCode(item);
            }
            catch (AccountException)
            {
                return(BadRequest());
            }

            return(Ok());
        }
Esempio n. 3
0
 public static Verification CopyToVerification(PhoneVerifyViewModel model)
 {
     return(new Verification
     {
         Id = model.Id,
         VerifyCode = model.Code.ToString()
     });
 }