Sha256: 104abb9a28fe2c72245c7742408ff97e62709882d3d15c46c5bcd0ee91ff12a6

Contents?: true

Size: 990 Bytes

Versions: 4

Compression:

Stored size: 990 Bytes

Contents

require 'sms_manager/error/error'

module SmsManager
  class SendingError < Error
    def initialize(body)
      code = body.split('|').last.to_i
      super code_to_message(code)
    end

    private

    def code_to_message(code)
      if code >= 900 && code <= 999
        CODE_9XX
      elsif CODES[code]
        CODES[code]
      else
        'Neznámý chybový kód'
      end
    end

    CODES = {
      101 => 'Neexistující data požadavku (chybí XMLDATA parametr u XML API)',
      102 => 'Metoda neexistuje',
      103 => 'Neplatné uživatelské jméno nebo heslo',
      104 => 'Neplatný parametr gateway',
      105 => 'Nedostatek kreditu pro prepaid',
      201 => 'Žádná platná telefonní čísla v požadavku',
      202 => 'Text zprávy neexistuje nebo je příliš dlouhý',
      203 => 'Neplatný parametr sender (odesílatele nejprve nastavte ve webovém rozhraní)'
    }
    CODE_9XX = 'Systémová chyba (informujte se na support@smsmanager.cz)'
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
sms_manager-0.3.3 lib/sms_manager/error/sending_error.rb
sms_manager-0.3.2 lib/sms_manager/error/sending_error.rb
sms_manager-0.3.1 lib/sms_manager/error/sending_error.rb
sms_manager-0.3.0 lib/sms_manager/error/sending_error.rb