Sha256: 266d759d3c13c72a5eec5e6501ce39d36fd540d258c8fda6f01359624af3cb4d
Contents?: true
Size: 1.44 KB
Versions: 1
Compression:
Stored size: 1.44 KB
Contents
require 'uri' module Clickatell class Text def initialize(username, password, api_id) @username, @password, @api_id = username, password, api_id end def send(to, message) url = send_url(to, message) response = Typhoeus::Request.get(url) respond(response) end private def send_url(to, message) "https://api.clickatell.com/http/sendmsg?user=#{@username}&password=#{@password}&api_id=#{@api_id}&to=#{to}&text=#{URI.escape(message)}" end def respond(response) case response.code when 200 true when 001 raise AuthenticationFailed.new(response.body) when 002 raise UnknownUsernameOrPassword.new(response.body) when 004 raise AccountFrozen.new(response.body) when 007 raise IPLockdownViolation.new(response.body) when 106 raise InvalidNumber.new(response.body) when 107 raise EmptyMessage.new(response.body) when 108 raise InvalidAPIID.new(response.body) when 113 raise MessageTooLong.new(response.body) when 121 raise NumberBlocked.new(response.body) when 128 raise NumberDelisted.new(response.body) when 301 raise NoCreditLeft.new(response.body) when 302 raise MaxAllowedCredit.new(response.body) else raise UnknownError.new("#{response.code} - #{response.body}") end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
reddavis-clickatell-0.0.0 | lib/clickatell/text.rb |