Example #1
0
        public IEnumerable <VoipPhone> GetAvailablePhoneNumbers(PhoneNumberType phoneNumberType, string isoCountryCode)
        {
            var result  = new AvailablePhoneNumberResult();
            var request = new AvailablePhoneNumberListRequest {
                VoiceEnabled = true
            };

            switch (phoneNumberType)
            {
            case PhoneNumberType.Local:
                result = client.ListAvailableLocalPhoneNumbers(isoCountryCode, request);
                break;

            /*                case PhoneNumberType.Mobile:
             *                  result = twilio.ListAvailableMobilePhoneNumbers(isoCountryCode, request);
             *                  break;*/
            case PhoneNumberType.TollFree:
                result = client.ListAvailableTollFreePhoneNumbers(isoCountryCode);
                break;
            }
            ThrowIfError(result);
            return(result.AvailablePhoneNumbers.Select(r => new TwilioPhone(client)
            {
                Number = r.PhoneNumber
            }));
        }
        public void ShouldListAvailableTollFreePhoneNumbersAsynchronouslyThatContain()
        {
            manualResetEvent = new ManualResetEvent(false);

            var client = new TwilioRestClient(Credentials.AccountSid, Credentials.AuthToken);

            AvailablePhoneNumberListRequest options = new AvailablePhoneNumberListRequest();
            AvailablePhoneNumberResult      result  = null;

            client.ListAvailableTollFreePhoneNumbers("US", "EA", numbers => {
                result = numbers;
                manualResetEvent.Set();
            });

            manualResetEvent.WaitOne();
            Assert.IsNotNull(result);
            Assert.IsNull(result.RestException);
            Assert.IsNotNull(result.AvailablePhoneNumbers);
        }