Sha256: fc8e9085b5f36e35b61afc9c94b68a634886f61fc0223e3c561791083c4618b6
Contents?: true
Size: 1.15 KB
Versions: 3
Compression:
Stored size: 1.15 KB
Contents
module SmsBroker module Client module Response class TwilioError < Error SENDER_ID_NOT_SUPPORTED = %w(21212 21612).freeze def initialize(twilio_response) super :twilio, twilio_response, serialize(twilio_response) end private def serialize(twilio_response) if twilio_response.is_a?(::Twilio::REST::RequestError) serialize_exeception_errors(twilio_response) else serialize_response_error(twilio_response) end end def serialize_response_error(response) errors = { response.error_code.to_s => [response.error_message] } if SENDER_ID_NOT_SUPPORTED.include?(response.error_code.to_s) errors['sender_id'] = ['is invalid'] end errors end def serialize_exeception_errors(exception) errors = { exception.code.to_s => [exception.message] } if SENDER_ID_NOT_SUPPORTED.include?(exception.code.to_s) errors['sender_id'] = ['is invalid'] end errors end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems