Class: LivePaper::QrTrigger

Inherits:
Trigger show all
Defined in:
lib/live_paper/qr_trigger.rb

Constant Summary

Constants inherited from BaseObject

BaseObject::AUTH_URL, BaseObject::AUTH_VALIDATION_URL, BaseObject::LP_API_HOST

Instance Attribute Summary collapse

Attributes inherited from Trigger

#end_date, #start_date, #state

Attributes inherited from BaseObject

#date_created, #date_modified, #id, #link, #name

Instance Method Summary collapse

Methods inherited from Trigger

api_url, #default_end_date, #default_start_date, item_key, list_key, parse

Methods inherited from BaseObject

api_url, #assign_attributes, create, #delete, #errors, get, #initialize, item_key, list, list_key, parse, #rel, request_access_token, request_project_id, rest_request, #save, #update

Constructor Details

This class inherits a constructor from LivePaper::BaseObject

Instance Attribute Details

#qrcode_urlObject

Returns the value of attribute qrcode_url.



5
6
7
# File 'lib/live_paper/qr_trigger.rb', line 5

def qrcode_url
  @qrcode_url
end

Instance Method Details

#download_qrcodeObject



14
15
16
17
# File 'lib/live_paper/qr_trigger.rb', line 14

def download_qrcode
  response = QrTrigger.rest_request( "#{self.qrcode_url}?width=200", :get, accept: "image/jpg" )
  response.body.empty? ? nil : response.body
end

#parse(data) ⇒ Object



7
8
9
10
11
12
# File 'lib/live_paper/qr_trigger.rb', line 7

def parse(data)
  data = JSON.parse(data, symbolize_names: true)[:trigger]
  assign_attributes data
  self.qrcode_url=data[:link].select { |item| item[:rel] == "download" }.first[:href]
  self
end