Class: Vimeo::Advanced::Upload

Inherits:
Base
  • Object
show all
Defined in:
lib/vimeo/advanced/upload.rb

Instance Method Summary collapse

Methods inherited from Base

#initialize, #login_link, #upload_sig

Constructor Details

This class inherits a constructor from Vimeo::Advanced::Base

Instance Method Details

#check_upload_status(ticket_id, auth_token) ⇒ Object



19
20
21
22
23
24
25
26
27
# File 'lib/vimeo/advanced/upload.rb', line 19

def check_upload_status(ticket_id, auth_token)
  sig_options = {
    :ticket_id => ticket_id,
    :auth_token => auth_token,
    :method => "vimeo.videos.checkUploadStatus"
  }

  make_request sig_options
end

#get_upload_ticket(auth_token) ⇒ Object



10
11
12
13
14
15
16
17
# File 'lib/vimeo/advanced/upload.rb', line 10

def get_upload_ticket(auth_token)
  sig_options = {
    :auth_token => auth_token,
    :method => "vimeo.videos.getUploadTicket"
  }

  make_request sig_options
end

#signature_for_file_upload(ticket_id, auth_token) ⇒ Object



46
47
48
49
50
51
52
# File 'lib/vimeo/advanced/upload.rb', line 46

def signature_for_file_upload(ticket_id, auth_token)
  sig_options = {
    :ticket_id => ticket_id,
    :auth_token => auth_token
  }
  generate_api_sig sig_options
end

#upload(file, ticket_id, auth_token) ⇒ Object

Upload file to vimeo with ticket_id and auth_token



31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/vimeo/advanced/upload.rb', line 31

def upload file, ticket_id, auth_token
  params = {
    :auth_token => auth_token,
    :ticket_id  => ticket_id
  }
  params[:api_sig] = generate_api_sig params

  c = Curl::Easy.new('http://vimeo.com/services/upload')
  c.multipart_form_post = true
  c.http_post(
    *(params.map { |k,v| Curl::PostField.content(k.to_s, v) } +
    [Curl::PostField.file('video', file)])
  )
end