示例#1
0
        public async Task <IActionResult> OnPostAsync()
        {
            await LoadPhoneNumber();

            try
            {
                var verification = await VerificationResource.CreateAsync(
                    to : PhoneNumber,
                    channel : "sms",
                    pathServiceSid : _settings.VerificationServiceSID
                    );

                if (verification.Status == "pending")
                {
                    return(RedirectToPage("ConfirmPhone"));
                }

                ModelState.AddModelError("", $"There was an error sending the verification code: {verification.Status}");
            }
            catch (Exception)
            {
                ModelState.AddModelError("",
                                         "There was an error sending the verification code, please check the phone number is correct and try again");
            }

            return(Page());
        }
示例#2
0
        public static string MakeRequest()
        {
            //var start = client.NumberVerify.Verify(new NumberVerify.VerifyRequest
            //{
            //    number = "84974076085",
            //    brand = "Nexmo",
            //    code_length = "4"
            //});

            //return start.request_id;


            //==================

            const string accountSid = "ACcc94bdb5e63f5d18a39cb479b39ccbde";
            const string authToken  = "20c2e1517fddd3dc6f83cbae74dfe9c9";

            TwilioClient.Init(accountSid, authToken);

            var verification = VerificationResource.Create(
                to: "+84774543399",
                channel: "sms",
                pathServiceSid: "VAf73a8e1e711d3d54b9e738823e3543ff"
                );

            return("abc");
        }
示例#3
0
        public async Task <IActionResult> Register(VM_Register registerAccount)
        {
            if (ModelState.IsValid)
            {
                var isSuccess = await _services.RegisterUser(registerAccount);

                if (isSuccess)
                {
                    try
                    {
                        var verification = await VerificationResource.CreateAsync(
                            to : registerAccount.PhoneNumber,
                            channel : "sms",
                            pathServiceSid : "XXX"
                            );

                        if (verification.Status == "pending")
                        {
                            return(RedirectToAction("ConfirmPhone", "Account"));
                        }
                    }
                    catch (System.Exception ex)
                    {
                        ViewBag.ErrorMessage = ex.Message;
                        return(View(registerAccount));
                    }
                    //await _phoneServices.StartVerificationAsync(registerAccount.PhoneNumber);

                    return(RedirectToAction("Index", "Home"));
                }
            }
            return(View(registerAccount));
        }
        public async Task <IActionResult> OnPostAsync()
        {
            await this.LoadPhoneNumber();

            try
            {
                var verification = await VerificationResource.CreateAsync(
                    to : $"{this.CountryCode}{this.PhoneNumber}",
                    channel : "sms",
                    pathServiceSid : this.settings.VerificationServiceSID);

                if (verification.Status == "pending")
                {
                    return(this.RedirectToPage("ConfirmPhone"));
                }

                this.ModelState.AddModelError(string.Empty, $"There was an error sending the verification code: {verification.Status}");
            }
            catch (Exception)
            {
                this.ModelState.AddModelError(
                    string.Empty,
                    "There was an error sending the verification code, please check the phone number is correct and try again");
            }

            return(this.Page());
        }
示例#5
0
        public async Task <IActionResult> PostVerifyPhoneModelAsync()
        {
            await LoadPhoneNumber();

            SMSVerification model = new SMSVerification();

            try
            {
                VerificationResource verification = await VerificationResource.CreateAsync(
                    to : PhoneNumber,
                    channel : "sms",
                    pathServiceSid : _settings.VerificationServiceSID
                    );

                if (verification.Status == "pending")
                {
                    model.PhoneNumber = PhoneNumber;
                    return(View("ConfirmPhone", model));
                }

                ModelState.AddModelError("", $"Votre verification n'est pas traitée, contactez l'admin");
            }
            catch (Exception)
            {
                ModelState.AddModelError("", "There was an error sending the verification code, please contact admin");
            }
            return(View("VerifyPhone", model));
        }
        public async Task <IActionResult> SendVerificationCode(string studentId)
        {
            var student = await _context.Users.FindAsync(studentId);

            if (student == null)
            {
                return(BadRequest());
            }

            try
            {
                await VerificationResource.CreateAsync(
                    to : $"{student.PhoneCode}{student.PhoneNumber}",
                    channel : "sms",
                    pathServiceSid : StaticInformation.TwilioVerificationServiceSid
                    );

                return(Ok());
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }

            return(BadRequest());
        }
 public async Task <VerificationResource> SendVeryficationCode(string phoneNumber)
 {
     return(await VerificationResource.CreateAsync(
                to : phoneNumber,
                channel : "sms",
                pathServiceSid : _settings.VerificationServiceSID
                ));
 }
示例#8
0
 public string sendOTP(string phoneNumber)
 {
     ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072;
     TwilioClient.Init(accountSid, authToken);
     CreateVerificationOptions options = new CreateVerificationOptions(serviceSid, phoneNumber, "sms");
     var verification = VerificationResource.Create(options);
     return verification.Status;
 }
示例#9
0
 public async Task SendConfirmationSmsCodeAsync(string number)
 {
     var verification = await VerificationResource.CreateAsync(
         to : number,
         channel : "sms",
         pathServiceSid : smsSettings.Service
         );
 }
示例#10
0
        public async Task <VerificationResult> StartVerification(string phonenumber, string channel)
        {
            var resource = await VerificationResource.CreateAsync(to : phonenumber, channel : channel, pathServiceSid : TwilioConfiguration.VerificationSid);

            return(new VerificationResult
            {
                Sid = resource.Sid
            });
        }
        public IActionResult StartVerification([FromBody] StartRequest request)
        {
            var verification = VerificationResource.Create(
                to: $"+{request.CountryCode}{request.PhoneNumber}",
                channel: request.Channel,
                locale: request.Locale,
                pathServiceSid: _options.VerifyServiceSid
                );

            return(Ok(verification));
        }
示例#12
0
        public static void CreateVerificationResource()
        {
            TwilioClient.Init(SID, AuthToken);

            var verification = VerificationResource.Create(
                to: "+2347037513959",
                channel: "sms",
                pathServiceSid: "VA38170ed98248deabbaf93432c377f433"
                );

            Console.WriteLine(verification.Sid);
        }
示例#13
0
        public void TwilioVerifyService(string tempNumber)
        {
            string accountSid = ChelperPro.Properties.Resources.TWILIO_TOKEN;
            string authToken  = ChelperPro.Properties.Resources.TWILIO_KEY;

            TwilioClient.Init(accountSid, authToken);
            var verification = VerificationResource.Create(
                to: tempNumber,
                channel: "sms",
                pathServiceSid: ChelperPro.Properties.Resources.TWILIO_SERVICEID
                );

            Console.WriteLine(verification.Status);
        }
示例#14
0
        public async Task <bool> SendVerificationToPhoneNumber(string phonenumber)
        {
            var verification = await VerificationResource.CreateAsync(
                to : phonenumber,
                channel : "sms",
                pathServiceSid : _config.GetSection("Twilio:VerificationServiceSID")?.Value
                );

            if (verification.Status == "pending")
            {
                return(true);
            }
            return(false);
        }
示例#15
0
        public void TestCreateVerificationWithRateLimitsResponse()
        {
            var twilioRestClient = Substitute.For <ITwilioRestClient>();

            twilioRestClient.AccountSid.Returns("ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX");
            twilioRestClient.Request(Arg.Any <Request>())
            .Returns(new Response(
                         System.Net.HttpStatusCode.Created,
                         "{\"sid\": \"VEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"service_sid\": \"VAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"account_sid\": \"ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"to\": \"+15017122661\",\"channel\": \"sms\",\"status\": \"pending\",\"valid\": false,\"date_created\": \"2015-07-30T20:00:00Z\",\"date_updated\": \"2015-07-30T20:00:00Z\",\"lookup\": {\"carrier\": {\"error_code\": null,\"name\": \"Carrier Name\",\"mobile_country_code\": \"310\",\"mobile_network_code\": \"150\",\"type\": \"mobile\"}},\"amount\": null,\"payee\": null,\"url\": \"https://verify.twilio.com/v2/Services/VAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Verifications/VEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\"}"
                         ));

            var response = VerificationResource.Create("VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", "to", "channel", client: twilioRestClient);

            Assert.NotNull(response);
        }
示例#16
0
        public void TwilioVerifyService(string tempNumber)
        {
            string accountSid = Crosshelper.Properties.Resources.TWILIO_TOKEN;
            string authToken = Crosshelper.Properties.Resources.TWILIO_KEY;
            TwilioClient.Init(accountSid, authToken);
            //var service = ServiceResource.Create(friendlyName: "My First Verify Service");
            //Console.WriteLine(service.Sid);
            var verification = VerificationResource.Create(
                to: tempNumber, //"+14084641309",
                channel: "sms",
                pathServiceSid: Crosshelper.Properties.Resources.TWILIO_SERVICEID
            );

            Console.WriteLine(verification.Status);
        }
        public void TestCreateVerificationResponse()
        {
            var twilioRestClient = Substitute.For <ITwilioRestClient>();

            twilioRestClient.AccountSid.Returns("ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX");
            twilioRestClient.Request(Arg.Any <Request>())
            .Returns(new Response(
                         System.Net.HttpStatusCode.Created,
                         "{\"sid\": \"VEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"service_sid\": \"VAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"account_sid\": \"ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"to\": \"+14159373912\",\"channel\": \"sms\",\"status\": \"pending\",\"valid\": null,\"date_created\": \"2015-07-30T20:00:00Z\",\"date_updated\": \"2015-07-30T20:00:00Z\"}"
                         ));

            var response = VerificationResource.Create("VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", "to", "channel", client: twilioRestClient);

            Assert.NotNull(response);
        }
示例#18
0
        public async Task <string> SendCode(string phone)
        {
            TwilioInit();
            try{
                var verification = await VerificationResource.CreateAsync(
                    to : phone,
                    channel : "sms",
                    pathServiceSid : "VA4ecd8e6e80f84392b619552df9a6ed47"
                    );

                return(verification.Status);
            }catch  {
                return("Error");
            }
        }
        public void TestUpdateVerificationResponse()
        {
            var twilioRestClient = Substitute.For <ITwilioRestClient>();

            twilioRestClient.AccountSid.Returns("ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX");
            twilioRestClient.Request(Arg.Any <Request>())
            .Returns(new Response(
                         System.Net.HttpStatusCode.OK,
                         "{\"sid\": \"VEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"service_sid\": \"VAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"account_sid\": \"ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\"to\": \"+14159373912\",\"channel\": \"sms\",\"status\": \"canceled\",\"valid\": null,\"date_created\": \"2015-07-30T20:00:00Z\",\"date_updated\": \"2015-07-30T20:00:00Z\",\"lookup\": {\"carrier\": {\"error_code\": null,\"name\": \"Carrier Name\",\"mobile_country_code\": \"310\",\"mobile_network_code\": \"150\",\"type\": \"mobile\"}},\"amount\": \"$29.99\",\"payee\": \"Acme\",\"url\": \"https://verify.twilio.com/v1/Services/VAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Verifications/VEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\"}"
                         ));

            var response = VerificationResource.Update("VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", "pathSid", VerificationResource.StatusEnum.Canceled, client: twilioRestClient);

            Assert.NotNull(response);
        }
示例#20
0
        public bool sendsms()
        {
            CreateVerificationOptions s = new CreateVerificationOptions("VA9d1daf8b5346fb512d19ce6da276ca23", _PhoneNumber, "sms");

            s.Locale = "en";
            var x = VerificationResource.Create(s);

            if (x.Status == "pending" || x.Status == "approved")
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
示例#21
0
    static void Main(string[] args)
    {
        // Find your Account Sid and Token at twilio.com/console
        // DANGER! This is insecure. See http://twil.io/secure
        const string accountSid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
        const string authToken  = "your_auth_token";

        TwilioClient.Init(accountSid, authToken);

        var verification = VerificationResource.Fetch(
            pathServiceSid: "VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
            pathSid: "pathSid"
            );

        Console.WriteLine(verification.To);
    }
示例#22
0
    static void Main(string[] args)
    {
        // Find your Account Sid and Token at twilio.com/console
        const string accountSid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
        const string authToken  = "your_auth_token";

        TwilioClient.Init(accountSid, authToken);

        var verification = VerificationResource.Create(
            to: "To",
            channel: "Channel",
            pathServiceSid: "VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
            );

        Console.WriteLine(verification.Sid);
    }
示例#23
0
    static void Main(string[] args)
    {
        // Find your Account Sid and Token at twilio.com/console
        // DANGER! This is insecure. See http://twil.io/secure
        const string accountSid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
        const string authToken  = "your_auth_token";

        TwilioClient.Init(accountSid, authToken);

        var verification = VerificationResource.Create(
            to: "+14159373912",
            channel: "sms",
            pathServiceSid: "VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
            );

        Console.WriteLine(verification.Sid);
    }
示例#24
0
        public string Get()
        {
            const string accountSid = "";
            const string authToken  = "";

            TwilioClient.Init(accountSid, authToken);

            var verification = VerificationResource.Create(
                to: "+919003355434",
                channel: "sms",
                pathServiceSid: "VA0e9bff2c70d29ee16ded98a8db8f1baf"
                );

            Console.WriteLine(verification.ToString());

            return("Reached verify route\nMessage sent");
        }
示例#25
0
        public void SendVerificationCode(string accSid, string accToken, string serviceSid, string number)
        {
            string accountSid = accSid;
            string authToken  = accToken;

            TwilioClient.Init(accountSid, authToken);

            // var service = ServiceResource.Create(friendlyName: "r2d2 Verify Service");

            var verification = VerificationResource.Create(
                to: number,
                channel: "sms",
                pathServiceSid: serviceSid
                );

            Console.WriteLine(verification.Status);
        }
示例#26
0
        public async Task <IActionResult> SendVerificationCode(string courseId)
        {
            var user = await _userManager.GetUserAsync(User);

            if (user == null)
            {
                return(RedirectToAction("Error", "Home"));
            }

            if (user.PhoneNumberConfirmed)
            {
                return(RedirectToAction("Index", "Home"));
            }

            var codeSent = false;

            try
            {
                var verification = await VerificationResource.CreateAsync(
                    to : $"{user.PhoneCode}{user.PhoneNumber}",
                    channel : "sms",
                    pathServiceSid : StaticInformation.TwilioVerificationServiceSid
                    );

                if (verification.Status == "pending")
                {
                    codeSent = true;
                }



//                ToDo:: This used to send normal Message
//                var message = await MessageResource.CreateAsync(
//                    body: "مرحباً عمرون 🌹\nكيف الحال",
//                    from: new Twilio.Types.PhoneNumber("Matterix"),
//                    to: new Twilio.Types.PhoneNumber(phoneNumber)
//                );
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                codeSent = false;
            }

            return(RedirectToAction("CheckCode", new { courseId, codeSent }));
        }
示例#27
0
        public async Task <string> SendPhoneNumberVerification(string phoneNumber)
        {
            try
            {
                var verification = await VerificationResource.CreateAsync(
                    to : phoneNumber,
                    channel : "sms",
                    pathServiceSid : _settings.VerificationServiceSID
                    );

                return(verification.Status);
            }
            catch
            {
                return("Error");
            }
        }
    static void Main(string[] args)
    {
        // Find your Account Sid and Token at twilio.com/console
        // To set up environmental variables, see http://twil.io/secure
        const string accountSid = Environment.GetEnvironmentVariable("TWILIO_ACCOUNT_SID");
        const string authToken  = Environment.GetEnvironmentVariable("TWILIO_AUTH_TOKEN");

        TwilioClient.Init(accountSid, authToken);

        var verification = VerificationResource.Update(
            status: VerificationResource.StatusEnum.Approved,
            pathServiceSid: "VAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
            pathSid: "+15017122661"
            );

        Console.WriteLine(verification.To);
    }
示例#29
0
        public async Task <PasswordVerificationResult> SolicitarCodigoAsync(string phoneNumber, string channel)
        {
            try
            {
                var verificationResource = await VerificationResource.CreateAsync(
                    to : phoneNumber,
                    channel : channel,
                    pathServiceSid : VerificationSid
                    );

                return(new PasswordVerificationResult(verificationResource.Sid));
            }
            catch (TwilioException e)
            {
                return(new PasswordVerificationResult(new List <string> {
                    e.Message
                }));
            }
        }
示例#30
0
        public async Task <VerificationResult> StartVerificationAsync(string phoneNumber, string channel)
        {
            try
            {
                var verificationResource = await VerificationResource.CreateAsync(
                    to : phoneNumber,
                    channel : channel,
                    pathServiceSid : _config.VerificationSid
                    );

                return(new VerificationResult(verificationResource.Sid));
            }
            catch (TwilioException e)
            {
                return(new VerificationResult(new List <string> {
                    e.Message
                }));
            }
        }