twilio.sugar.Model.PhoneAutomation.AvailableTollFreePhoneNumbers C# (CSharp) Method

AvailableTollFreePhoneNumbers() public method

public AvailableTollFreePhoneNumbers ( String contains = null ) : IList
contains String
return IList
        public IList<AvailablePhoneNumber> AvailableTollFreePhoneNumbers(String contains = null)
        {
            _parameters.Clear();
            if (!String.IsNullOrEmpty(contains)) {
                _parameters.Add("Contains", contains);
            }

            _twilioResponse = _account.request(String.Format("Accounts/{0}/AvailablePhoneNumbers/{1}/TollFree.json", _account.id, IsoCountryCode), "GET", _parameters);
            dynamic data = ParseResponseData(_twilioResponse);

            IList<AvailablePhoneNumber> phoneNumbers = new List<AvailablePhoneNumber>();

            foreach (dynamic item in data.available_phone_numbers) {
                phoneNumbers.Add(new AvailablePhoneNumber {
                    friendly_name = item.friendly_name,
                    iso_country = item.iso_country,
                    lata = item.lata,
                    latitude = !String.IsNullOrEmpty(item.latitude) ? Convert.ToDecimal(item.latitude) : null,
                    longitude = !String.IsNullOrEmpty(item.longitude) ? Convert.ToDecimal(item.longitude) : null,
                    phone_number = item.phone_number,
                    postal_code = item.postal_code,
                    rate_center = item.rate_center,
                    region = item.region
                });
            }

            return phoneNumbers;
        }

Usage Example

        public void AvailableTollFreePhoneNumbersShouldReturnAvailablePhoneNumbersList()
        {
            var account = new TwilioAccountMock();
            var phoneAutomation = new PhoneAutomation(account);
            var availablePhoneNumbers = phoneAutomation.AvailableTollFreePhoneNumbers();

            Assert.IsNotNull(availablePhoneNumbers);
        }