Sha256: 298040684b2e1e0011133b5bf1f48c81225989eb2c737d11c54394c2224bf247

Contents?: true

Size: 649 Bytes

Versions: 1

Compression:

Stored size: 649 Bytes

Contents

# frozen_string_literal: true

module GroupMe
  class ImageClient
    API_BASE_URL = 'https://image.groupme.com/'

    attr_accessor :access_token

    def initialize(args = {})
      @access_token = args[:access_token] || GroupMe.configuration.access_token
      @client = HTTPClient.new(base_url: API_BASE_URL, default_header: { 'X-Access-Token': @access_token, 'Content-Type': 'image/jpeg' })
    end

    def upload(body = {})
      response = @client.post('pictures', body&.to_json)\

      return response.reason unless response.ok?

      image = JSON.parse(response.body, symbolize_names: true)
      image[:payload][:url]
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
groupme-api-0.7.0 lib/groupme/image_client.rb