class Purdie::Services::Vimeo
Public Class Methods
headers()
click to toggle source
# File lib/purdie/services/vimeo.rb, line 30 def self.headers { 'Authorization' => "bearer #{ENV['VIMEO_BEARER_TOKEN']}", 'Accept' => 'application/json' } end
host()
click to toggle source
# File lib/purdie/services/vimeo.rb, line 49 def self.host 'https://api.vimeo.com' end
matcher()
click to toggle source
# File lib/purdie/services/vimeo.rb, line 45 def self.matcher 'vimeo.com' end
resolve(url)
click to toggle source
# File lib/purdie/services/vimeo.rb, line 37 def self.resolve url return [url] unless url =~ /\/albums?\// target = "#{Vimeo.host}/albums/#{Purdie.get_id url}/videos/" set = JSON.parse (HTTParty.get target, headers: Vimeo.headers).body set['data'].map { |video| video['uri'].sub '/videos', 'https://vimeo.com' } end
Public Instance Methods
distill(url)
click to toggle source
# File lib/purdie/services/vimeo.rb, line 18 def distill url video = get url results = {} results['title'] = video['name'] results['id'] = @id results.attach_license self, video['license'] results end
get(url)
click to toggle source
# File lib/purdie/services/vimeo.rb, line 6 def get url @id = Purdie.get_id url target = "#{Vimeo.host}/videos/#{@id}" response = HTTParty.get target, headers: Vimeo.headers response = JSON.parse response.body if response['error'] == 'You must provide a valid authenticated access token.' raise CredentialsException.new self, 'missing and/or duff' else response end end