class InterFAX::Documents

Public Class Methods

new(client) click to toggle source
# File lib/interfax/documents.rb, line 3
def initialize client
  @client = client
end

Public Instance Methods

all(options = {}) click to toggle source
# File lib/interfax/documents.rb, line 23
def all options = {}
  valid_keys = [:limit, :offset]
  @client.get("/outbound/documents", options, valid_keys).map do |document|
    document[:client] = @client
    InterFAX::Document.new(document)
  end
end
cancel(document_id) click to toggle source
# File lib/interfax/documents.rb, line 37
def cancel document_id
  @client.delete("/outbound/documents/#{document_id}")
  true
end
create(name, size, options = {}) click to toggle source
# File lib/interfax/documents.rb, line 7
def create name, size, options = {}
  options[:name] = name
  options[:size] = size

  valid_keys = [:name, :size, :disposition, :shared]
  
  uri = @client.post("/outbound/documents", options, valid_keys)
  InterFAX::Document.new(uri: uri, client: @client)
end
find(document_id) click to toggle source
# File lib/interfax/documents.rb, line 31
def find document_id
  document = @client.get("/outbound/documents/#{document_id}")
  document[:client] = @client
  InterFAX::Document.new(document)
end
upload(document_id, range_start, range_end, chunk) click to toggle source
# File lib/interfax/documents.rb, line 17
def upload document_id, range_start, range_end, chunk
  headers = { 'Range' => "bytes=#{range_start}-#{range_end}" }
  @client.post("/outbound/documents/#{document_id}", {}, {}, headers, chunk)
  true
end