class AsanaGodContact::Connector
Public Class Methods
new(options)
click to toggle source
# File lib/asana-god-contact/asana_connector.rb, line 10 def initialize(options) AsanaGodContact::Config::PARAMS.each do |param| raise "Required option #{param} not set." unless options[param] end @options = options @uri = URI.parse(AsanaGodContact::Config::ASANA_URL) end
Public Instance Methods
create_task()
click to toggle source
# File lib/asana-god-contact/asana_connector.rb, line 19 def create_task http = Net::HTTP.new(@uri.host, @uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_PEER res = http.start { |http| http.request(request_params) } AsanaGodContact::Logger.responce_message JSON.parse(res.body) end
Private Instance Methods
request_body()
click to toggle source
# File lib/asana-god-contact/asana_connector.rb, line 37 def request_body { "data" => { "workspace" => @options[:workspace_id], "name" => @options[:message], "assignee" => @options[:assignee], "projects" => @options[:projects], "folowers" => @options[:folowers], "notes" => AsanaGodContact::Stats.list } }.to_json() end
request_params()
click to toggle source
# File lib/asana-god-contact/asana_connector.rb, line 29 def request_params header = {"Content-Type" => "application/json"} req = Net::HTTP::Post.new(@uri.path, header) req.basic_auth(@options[:api_key], '') req.body = request_body req end