thinknear 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/VERSION +1 -1
- data/lib/think_near/client.rb +41 -0
- data/lib/think_near/connection.rb +2 -2
- data/lib/think_near/endpoint.rb +28 -1
- data/thinknear.gemspec +1 -1
- metadata +2 -2
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.1.1
|
data/lib/think_near/client.rb
CHANGED
@@ -64,6 +64,47 @@ module ThinkNear
|
|
64
64
|
get Endpoint.feed(city, app_id)
|
65
65
|
end
|
66
66
|
|
67
|
+
def get_ad_unit_by_geo(latitude, longitude, unit_details = {}, past_prices = [])
|
68
|
+
get Endpoint.fetch({:loc_latitude => latitude, :loc_longitude => longitude}, unit_details, past_prices)
|
69
|
+
end
|
70
|
+
|
71
|
+
def get_ad_unit_by_zip_code(zip_code, unit_details = {}, past_prices = [])
|
72
|
+
get Endpoint.fetch({:loc_zip_code => zip_code}, unit_details, past_prices)
|
73
|
+
end
|
74
|
+
|
75
|
+
def get_ad_unit_by_city(city, unit_details = {}, past_prices = [])
|
76
|
+
get Endpoint.fetch({:loc_city => city}, unit_details, past_prices)
|
77
|
+
end
|
78
|
+
|
79
|
+
def get_ad_unit_by_state(state, unit_details = {}, past_prices = [])
|
80
|
+
get Endpoint.fetch({:loc_state => state}, unit_details, past_prices)
|
81
|
+
end
|
82
|
+
|
83
|
+
def get_ad_units_by_geo(latitude, longitude, unit_details = {}, past_prices = [])
|
84
|
+
get Endpoint.collect({:loc_latitude => latitude, :loc_longitude => longitude}, unit_details, past_prices)
|
85
|
+
end
|
86
|
+
|
87
|
+
def get_ad_units_by_zip_code(zip_code, unit_details = {}, past_prices = [])
|
88
|
+
get Endpoint.collect({:loc_zip_code => zip_code}, unit_details, past_prices)
|
89
|
+
end
|
90
|
+
|
91
|
+
def get_ad_units_by_city(city, unit_details = {}, past_prices = [])
|
92
|
+
get Endpoint.collect({:loc_city => city}, unit_details, past_prices)
|
93
|
+
end
|
94
|
+
|
95
|
+
def get_ad_units_by_state(state, unit_details = {}, past_prices = [])
|
96
|
+
get Endpoint.collect({:loc_state => state}, unit_details, past_prices)
|
97
|
+
end
|
98
|
+
|
99
|
+
def get_creatives(state)
|
100
|
+
get Endpoint.creatives(:loc_state => state)
|
101
|
+
end
|
102
|
+
|
103
|
+
def report(bid_id, clicks = nil, impressions = nil, price = nil, report_id = 1)
|
104
|
+
post Endpoint.report({:bid_id => bid_id, :clicks => clicks, :impressions => impressions,
|
105
|
+
:price => price, :report_id => report_id})
|
106
|
+
end
|
107
|
+
|
67
108
|
def get(endpoint)
|
68
109
|
raise NoConnectionEstablished if @@connection.nil?
|
69
110
|
@@connection.get endpoint
|
@@ -60,10 +60,10 @@ module ThinkNear
|
|
60
60
|
|
61
61
|
raise_errors(response)
|
62
62
|
|
63
|
-
if response.body.
|
63
|
+
if response.body.blank?
|
64
64
|
content = nil
|
65
65
|
else
|
66
|
-
if response.content_type == 'application/json'
|
66
|
+
if response.content_type == 'application/json'
|
67
67
|
begin
|
68
68
|
content = JSON.parse(response.body)
|
69
69
|
rescue JSON::ParserError
|
data/lib/think_near/endpoint.rb
CHANGED
@@ -52,10 +52,37 @@ module ThinkNear
|
|
52
52
|
endpoint_url("offers/#{offer_id}/save", {:email => email}.merge(app_id_hash(app_id)))
|
53
53
|
end
|
54
54
|
|
55
|
-
def feed(city)
|
55
|
+
def feed(city, app_id)
|
56
56
|
endpoint_url('feeds', {:city => city}.merge(app_id_hash(app_id)), 'rss')
|
57
57
|
end
|
58
58
|
|
59
|
+
def fetch(location, unit_details, past_prices)
|
60
|
+
get_ad_units('ad_units/fetch', location, unit_details, past_prices)
|
61
|
+
end
|
62
|
+
|
63
|
+
def collect(location, unit_details, past_prices)
|
64
|
+
get_ad_units('ad_units/collect', location, unit_details, past_prices)
|
65
|
+
end
|
66
|
+
|
67
|
+
def get_ad_units(method_endpoint, location, unit_details, past_prices)
|
68
|
+
params = location.with_indifferent_access
|
69
|
+
unit_details.each do |k, v|
|
70
|
+
k = "ud_#{k.to_s}".to_sym
|
71
|
+
end
|
72
|
+
params.merge!(unit_details)
|
73
|
+
p_index = 0
|
74
|
+
params.merge!(Hash[past_prices.map {|p| ["p_#{p_index.to_s}", p] }])
|
75
|
+
endpoint_url(method_endpoint, params)
|
76
|
+
end
|
77
|
+
|
78
|
+
def creatives(location)
|
79
|
+
endpoint_url('ad_units/creatives', location)
|
80
|
+
end
|
81
|
+
|
82
|
+
def report(params)
|
83
|
+
endpoint_url('ad_units/report', params)
|
84
|
+
end
|
85
|
+
|
59
86
|
def endpoint_url(path, params = {}, format = 'json', version = API_VERSION)
|
60
87
|
["http://#{Client.api_host}", version, [path, format].join('.')].join('/') + "?#{params.to_param}"
|
61
88
|
end
|
data/thinknear.gemspec
CHANGED
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: thinknear
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.1.
|
5
|
+
version: 0.1.1
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- John Hinnegan
|
@@ -151,7 +151,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
151
151
|
requirements:
|
152
152
|
- - ">="
|
153
153
|
- !ruby/object:Gem::Version
|
154
|
-
hash:
|
154
|
+
hash: 1254603518259930022
|
155
155
|
segments:
|
156
156
|
- 0
|
157
157
|
version: "0"
|