public void DeleteProvisionedPhoneNumber(PhoneNumber model) { if (model == null || String.IsNullOrEmpty(model.sid)) { throw new ArgumentNullException("model"); } _parameters.Clear(); AddParametersFromPhoneNumberModel(model); _account.request(String.Format("Accounts/{0}/IncomingPhoneNumbers/{1}.json", _account.id, model.sid), "DELETE", _parameters); }
private void AddParametersFromPhoneNumberModel(PhoneNumber model) { if (String.IsNullOrEmpty(model.phone_number) && !model.areaCode.HasValue) { throw new ArgumentNullException("model"); } if (!String.IsNullOrEmpty(model.phone_number)) { _parameters.Add("PhoneNumber", model.phone_number); } else if (model.areaCode != null) { _parameters.Add("AreaCode", model.areaCode); } if (!String.IsNullOrEmpty(model.friendly_name)) { _parameters.Add("FriendlyName", model.friendly_name); } if (model.voice_url != null) { _parameters.Add("VoiceUrl", model.voice_url); } if (!String.IsNullOrEmpty(model.voice_method)) { _parameters.Add("VoiceMethod", model.voice_method); } if (model.voice_fallback_url != null) { _parameters.Add("VoiceFallbackUrl", model.voice_fallback_url); } if (!String.IsNullOrEmpty(model.voice_fallback_method)) { _parameters.Add("VoiceFallbackMethod", model.voice_fallback_method); } if (!String.IsNullOrEmpty(model.status_callback)) { _parameters.Add("StatusCallback", model.status_callback); } if (!String.IsNullOrEmpty(model.status_callback_method)) { _parameters.Add("StatusCallbackMethod", model.status_callback_method); } if (model.sms_url != null) { _parameters.Add("SmsUrl", model.sms_url); } if (!String.IsNullOrEmpty(model.sms_method)) { _parameters.Add("SmsMethod", model.sms_method); } if (model.sms_fallback_url != null) { _parameters.Add("SmsFallbackUrl", model.sms_fallback_url); } if (!String.IsNullOrEmpty(model.sms_fallback_method)) { _parameters.Add("SmsFallbackMethod", model.sms_fallback_method); } }
public PhoneNumber UpdateProvisionedPhoneNumber(PhoneNumber model) { if (model == null || String.IsNullOrEmpty(model.sid)) { throw new ArgumentNullException("model"); } _parameters.Clear(); AddParametersFromPhoneNumberModel(model); _twilioResponse = _account.request(String.Format("Accounts/{0}/IncomingPhoneNumbers/{1}.json", _account.id, model.sid), "POST", _parameters); dynamic data = ParseResponseData(_twilioResponse); var phone = new PhoneNumber { sid = data.sid, account_sid = data.account_sid, friendly_name = data.friendly_name, phone_number = data.phone_number, voice_url = data.voice_url, voice_method = data.voice_method, voice_fallback_url = data.voice_fallback_url, voice_fallback_method = data.voice_fallback_method, voice_caller_id_lookup = data.voice_caller_id_lookup, date_created = !String.IsNullOrEmpty(data.date_created) ? Convert.ToDateTime(data.date_created) : null, date_updated = !String.IsNullOrEmpty(data.date_updated) ? Convert.ToDateTime(data.date_updated) : null, sms_url = data.sms_url, sms_method = data.sms_method, sms_fallback_url = data.sms_fallback_url, sms_fallback_method = data.sms_fallback_method, capabilities = new Capabilities { sms = !String.IsNullOrEmpty(data.capabilities.sms) ? Convert.ToBoolean(data.capabilities.sms) : null, voice = !String.IsNullOrEmpty(data.capabilities.voice) ? Convert.ToBoolean(data.capabilities.voice) : null }, status_callback = data.status_callback, status_callback_method = data.status_callback_method, api_version = data.api_version, uri = data.uri }; return phone; }
public PhoneNumber ProvisionTollFreePhoneNumber(String phoneNumber, String voiceUrl = null, String voiceFallbackUrl = null) { if ((String.IsNullOrEmpty(phoneNumber))) { throw new ArgumentNullException("phoneNumber"); } _parameters.Clear(); _parameters.Add("PhoneNumber", phoneNumber); if (!String.IsNullOrEmpty(voiceUrl)) { _parameters.Add("VoiceUrl", voiceUrl); _parameters.Add("VoiceMethod", "GET"); } if (!String.IsNullOrEmpty(voiceFallbackUrl)) { _parameters.Add("VoiceFallbackUrl", voiceFallbackUrl); } _twilioResponse = _account.request(String.Format("Accounts/{0}/IncomingPhoneNumbers.json", _account.id), "POST", _parameters); dynamic data = ParseResponseData(_twilioResponse); var phone = new PhoneNumber { sid = data.sid, account_sid = data.account_sid, friendly_name = data.friendly_name, phone_number = data.phone_number, voice_url = data.voice_url, voice_method = data.voice_method, voice_fallback_url = data.voice_fallback_url, voice_fallback_method = data.voice_fallback_method, voice_caller_id_lookup = Convert.ToBoolean(data.voice_caller_id_lookup), date_created = !String.IsNullOrEmpty(data.date_created) ? Convert.ToDateTime(data.date_created) : null, date_updated = !String.IsNullOrEmpty(data.date_updated) ? Convert.ToDateTime(data.date_updated) : null, sms_url = data.sms_url, sms_method = data.sms_method, sms_fallback_url = data.sms_fallback_url, sms_fallback_method = data.sms_fallback_method, capabilities = new Capabilities { sms = !String.IsNullOrEmpty(data.capabilities.sms) ? Convert.ToBoolean(data.capabilities.sms) : null, voice = !String.IsNullOrEmpty(data.capabilities.voice) ? Convert.ToBoolean(data.capabilities.voice) : null }, status_callback = data.status_callback, status_callback_method = data.status_callback_method, api_version = data.api_version, uri = data.uri }; return phone; }
public PhoneNumber ProvisionPhoneNumber(String phoneNumber = null, Int32? areaCode = null, PhoneNumber model = null, String voiceUrl = null, String voiceFallbackUrl = null, String smsUrl = null, String smsFallbackUrl = null) { if ((String.IsNullOrEmpty(phoneNumber) && !areaCode.HasValue) && model == null) { throw new ArgumentNullException("phoneNumber"); } _parameters.Clear(); if (model != null) { AddParametersFromPhoneNumberModel(model); } else if (!String.IsNullOrEmpty(phoneNumber)) { _parameters.Add("PhoneNumber", phoneNumber); } else if (areaCode != null) { _parameters.Add("AreaCode", areaCode); } if (!String.IsNullOrEmpty(voiceUrl)) { _parameters.Add("VoiceUrl", voiceUrl); _parameters.Add("VoiceMethod", "GET"); } if (!String.IsNullOrEmpty(voiceFallbackUrl)) { _parameters.Add("VoiceFallbackUrl", voiceFallbackUrl); } if (!String.IsNullOrEmpty(smsUrl)) { _parameters.Add("smsUrl", smsUrl); _parameters.Add("smsMethod", "GET"); } if (!String.IsNullOrEmpty(smsFallbackUrl)) { _parameters.Add("smsFallbackUrl", smsFallbackUrl); } _twilioResponse = _account.request(String.Format("Accounts/{0}/IncomingPhoneNumbers.json", _account.id), "POST", _parameters); dynamic data = ParseResponseData(_twilioResponse); var phone = new PhoneNumber { sid = data.sid, account_sid = data.account_sid, friendly_name = data.friendly_name, phone_number = data.phone_number, voice_url = data.voice_url, voice_method = data.voice_method, voice_fallback_url = data.voice_fallback_url, voice_fallback_method = data.voice_fallback_method, voice_caller_id_lookup = Convert.ToBoolean(data.voice_caller_id_lookup), date_created = Convert.ToDateTime(data.date_created), date_updated = Convert.ToDateTime(data.date_updated), sms_url = data.sms_url, sms_method = data.sms_method, sms_fallback_url = data.sms_fallback_url, sms_fallback_method = data.sms_fallback_method, capabilities = new Capabilities { sms = Convert.ToBoolean(data.capabilities.sms), voice = Convert.ToBoolean(data.capabilities.voice) }, status_callback = data.status_callback, status_callback_method = data.status_callback_method, api_version = data.api_version, uri = data.uri }; return phone; }
public void DeleteProvisionedPhoneNumberWithNullSidShouldReturnArgumentNullException() { try { var account = new TwilioAccountMock(); var phoneAutomation = new PhoneAutomation(account); var phoneNumber = new PhoneNumber(); phoneAutomation.DeleteProvisionedPhoneNumber(phoneNumber); } catch (System.Exception ex) { Assert.IsInstanceOfType(ex, typeof(System.ArgumentNullException)); } }
public void DeleteProvisionedPhoneNumberWithValidPhoneObjectShouldReturnNullBody() { var account = new TwilioAccountMock(); var phoneAutomation = new PhoneAutomation(account); var phoneNumber = new PhoneNumber{ sid = "1", phone_number = "1" }; phoneAutomation.DeleteProvisionedPhoneNumber(phoneNumber); }