public IList<AvailablePhoneNumber> AvailableLocalPhoneNumbers(Int32? areaCode = null, String contains = null, String inRegion = null, Int32? inPostalCode = null)
{
_parameters.Clear();
if (areaCode.HasValue) {
_parameters.Add("AreaCode", areaCode);
}
if (!String.IsNullOrEmpty(contains)) {
_parameters.Add("Contains", contains);
}
if (!String.IsNullOrEmpty(inRegion)) {
_parameters.Add("InRegion", inRegion);
}
if (inPostalCode.HasValue) {
_parameters.Add("InPostalCode", inPostalCode);
}
_twilioResponse = _account.request(String.Format("Accounts/{0}/AvailablePhoneNumbers/{1}/Local.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;
}