Sha256: 306273f0d0aefe163409c49206247554bb2bc85277581e455e482bbf902ef696

Contents?: true

Size: 574 Bytes

Versions: 1

Compression:

Stored size: 574 Bytes

Contents

require 'addressable/template'
require_relative 'response'

module Smsc
  # @private
  module Request
    URL_TEMPLATE = '{scheme}://{host}/sys/{endpoint}.php{?params*}'.freeze

    private

    def request(request_params)
      request_url = Addressable::Template.new(URL_TEMPLATE).expand(
        scheme: config.ssl ? 'https' : 'http',
        host: config.host,
        endpoint: request_params[:endpoint],
        params: request_params[:params]
      )

      response = connection(request_url).get
      Response.parse(response.body, request_params)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
smsc_ru-0.1.0 lib/smsc/request.rb