optify 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,2 @@
1
+ Gemfile.lock
2
+ coverage
@@ -0,0 +1,8 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.9.3
4
+ - 1.9.2
5
+ - 1.8.7
6
+ - jruby-19mode
7
+ - rbx-19mode
8
+
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in optify.gemspec
4
+ gemspec
@@ -0,0 +1,24 @@
1
+ # A sample Guardfile
2
+ # More info at https://github.com/guard/guard#readme
3
+
4
+ guard 'rspec', :version => 2, :cli => "--color --format nested" do
5
+ watch(%r{^spec/.+_spec\.rb$})
6
+ watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
7
+ watch('spec/spec_helper.rb') { "spec" }
8
+
9
+ # Rails example
10
+ watch(%r{^app/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
11
+ watch(%r{^app/(.*)(\.erb|\.haml)$}) { |m| "spec/#{m[1]}#{m[2]}_spec.rb" }
12
+ watch(%r{^app/controllers/(.+)_(controller)\.rb$}) { |m| ["spec/routing/#{m[1]}_routing_spec.rb", "spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb", "spec/acceptance/#{m[1]}_spec.rb"] }
13
+ watch(%r{^spec/support/(.+)\.rb$}) { "spec" }
14
+ watch('config/routes.rb') { "spec/routing" }
15
+ watch('app/controllers/application_controller.rb') { "spec/controllers" }
16
+
17
+ # Capybara request specs
18
+ watch(%r{^app/views/(.+)/.*\.(erb|haml)$}) { |m| "spec/requests/#{m[1]}_spec.rb" }
19
+
20
+ # Turnip features and steps
21
+ watch(%r{^spec/acceptance/(.+)\.feature$})
22
+ watch(%r{^spec/acceptance/steps/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'spec/acceptance' }
23
+ end
24
+
@@ -0,0 +1,53 @@
1
+ # Optify
2
+
3
+ ## What is this?
4
+
5
+ Optify will be a gem providing Ruby bindings for the Optify API.
6
+
7
+ ## What is Optify (the company)?
8
+
9
+ Optify calls itself "inbound marketing software", which includes tools for:
10
+
11
+ * SEO/SEM
12
+ * Social media campaigns
13
+ * Email marketing
14
+ * Sales enablement
15
+ * Visitor tracking and analytics
16
+ * Salesforce integration
17
+
18
+ See more at [optify.net](http://optify.net)
19
+
20
+ ## Installation
21
+
22
+ When it's turned into a gem, you can install it with:
23
+
24
+ gem install optify
25
+
26
+ If you're using Bundler, add it to your Gemfile:
27
+
28
+ gem 'optify'
29
+
30
+ ## Usage
31
+
32
+ You must have a token to access the Optify API, so first initialize a new instance of the Optify class to get started.
33
+
34
+ @optify = Optify.new('token')
35
+
36
+ Now you can run your queries and parse the output.
37
+
38
+ ## Output Options
39
+
40
+ * XML (default)
41
+ * JSON
42
+
43
+ ## Methods
44
+
45
+ * sites - get all site information
46
+ * site by id - get information on a specific site based on its id
47
+ * visitors by site - get all visitor information for a specific site
48
+ * visitor by site and id - get visitor information for a specific visitor on a specific site
49
+
50
+ ## Resources
51
+ * http://help.optify.net/entries/20270158-introduction-to-optify-s-api
52
+ * http://help.optify.net/forums/20157637-api
53
+
@@ -0,0 +1,19 @@
1
+ require 'rake'
2
+
3
+ desc "`rake` will default to running `rake:spec`"
4
+ task :default => :spec
5
+
6
+ desc "Run all the rspec examples"
7
+ task :spec do
8
+ system "bundle exec rspec -c spec"
9
+ end
10
+
11
+ desc "Start guard"
12
+ task :guard do
13
+ system "bundle exec guard"
14
+ end
15
+
16
+ desc "Delete fixtures to run tests with new data"
17
+ task :cleanup do
18
+ system "rm -rf spec/fixtures"
19
+ end
@@ -0,0 +1,9 @@
1
+ $:.unshift File.dirname(__FILE__)
2
+
3
+ require 'optify/client'
4
+
5
+ module Optify
6
+ def self.new(token)
7
+ Optify::Client.new(token)
8
+ end
9
+ end
@@ -0,0 +1,44 @@
1
+ require 'httparty'
2
+
3
+ module Optify
4
+ class Client
5
+ include HTTParty
6
+ base_uri 'https://api.optify.net'
7
+ format :json
8
+
9
+ def initialize(access_token)
10
+ self.class.default_params :access_token => access_token
11
+ end
12
+
13
+ def all_sites(options={})
14
+ site_path = "/v1/sites.json"
15
+ self.class.get(site_path, :query => clean(options)).parsed_response
16
+ end
17
+
18
+ def site(site_id,options={})
19
+ site_path = "/v1/sites/#{site_id.to_s}.json"
20
+ self.class.get(site_path, :query => clean(options)).parsed_response
21
+ end
22
+
23
+ def all_visitors(site_id,options={})
24
+ site_path = "/v1/sites/#{site_id.to_s}/visitors.json"
25
+ self.class.get(site_path, :query => clean(options)).parsed_response
26
+ end
27
+
28
+ def visitor(site_id,visitor_id,options = {})
29
+ site_path = "/v1/sites/#{site_id.to_s}/visitors/#{visitor_id.to_s}.json"
30
+ self.class.get(site_path, :query => clean(options)).parsed_response
31
+ end
32
+
33
+ def who_am_i
34
+ whois_path = "/whoami"
35
+ self.class.get(whois_path, :format => 'text/plain').parsed_response.chomp
36
+ end
37
+
38
+ private
39
+
40
+ def clean(opts)
41
+ opts.update(opts) { |key,val| val.is_a?(Date) ? val.strftime('%Y-%m-%d %H:%M:%S') : val.to_s }
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,3 @@
1
+ module Optify
2
+ VERSION = "0.1.0"
3
+ end
@@ -0,0 +1,29 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "optify/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "optify"
7
+ s.version = Optify::VERSION
8
+ s.authors = ["Joel Stimson"]
9
+ s.email = ["contact@cleanroomstudios.com"]
10
+ s.homepage = "https://github.com/stim371/optify"
11
+ s.summary = %q{Ruby wrapper for Optify API}
12
+ s.description = %q{This gem provides ruby bindings for the Optify API, allowing you to access the visitor and lead data for sites on your account.}
13
+
14
+ s.files = `git ls-files`.split("\n")
15
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
16
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
17
+ s.require_paths = ["lib"]
18
+
19
+ # specify any dependencies here; for example:
20
+ s.add_development_dependency "rspec"
21
+ s.add_development_dependency "guard-rspec"
22
+ s.add_development_dependency "simplecov"
23
+ s.add_development_dependency "rake"
24
+ s.add_development_dependency "vcr"
25
+ s.add_development_dependency "webmock"
26
+ s.add_development_dependency "simplecov"
27
+
28
+ s.add_runtime_dependency "httparty"
29
+ end
@@ -0,0 +1,30 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.optify.net/v1/sites/4854OOO0.json?access_token=wmjf73ott6f33unj2ztlttor
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers: {}
10
+ response:
11
+ status:
12
+ code: 200
13
+ message: OK
14
+ headers:
15
+ Date:
16
+ - Wed, 15 Aug 2012 05:09:02 GMT
17
+ Server:
18
+ - Jetty(7.x.y-SNAPSHOT)
19
+ Content-Type:
20
+ - application/json
21
+ Connection:
22
+ - close
23
+ Transfer-Encoding:
24
+ - chunked
25
+ body:
26
+ encoding: US-ASCII
27
+ string: ! '{"name":"NetVM (Germany)","site_token":"4854OOO0","url":"http://www.netvm.de"}'
28
+ http_version: !!null
29
+ recorded_at: Wed, 15 Aug 2012 05:09:02 GMT
30
+ recorded_with: VCR 2.2.2
@@ -0,0 +1,34 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.optify.net/v1/sites.json?access_token=wmjf73ott6f33unj2ztlttor
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers: {}
10
+ response:
11
+ status:
12
+ code: 200
13
+ message: OK
14
+ headers:
15
+ Date:
16
+ - Wed, 15 Aug 2012 05:09:01 GMT
17
+ Server:
18
+ - Jetty(7.x.y-SNAPSHOT)
19
+ Content-Type:
20
+ - application/json
21
+ Connection:
22
+ - close
23
+ Transfer-Encoding:
24
+ - chunked
25
+ body:
26
+ encoding: US-ASCII
27
+ string: ! '[{"name":"NetVM (Germany)","site_token":"4854OOO0","url":"http://www.netvm.de"},{"name":"Marketing
28
+ Dashboard","site_token":"16U83LUW","url":"http://www.networktechinc.com/"},{"name":"Netzwerk
29
+ ","site_token":"RRPTZB0A","url":"http://www.tecchannel.de/"},{"name":"SEO
30
+ Dashboard","site_token":"EYNN83MD","url":"http://www.networktechinc.com/"},{"name":"Testing
31
+ Site 101","site_token":"XMAB8FMS","url":"http://www.optify.net"}]'
32
+ http_version: !!null
33
+ recorded_at: Wed, 15 Aug 2012 05:09:02 GMT
34
+ recorded_with: VCR 2.2.2
@@ -0,0 +1,37 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.optify.net/v1/sites/UQP1WJ35/visitors/3CAD1130-b933-4b48-af79-859b89065c64.json?access_token=qbkkw3ir3gtg7bdf4rumb69p
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers: {}
10
+ response:
11
+ status:
12
+ code: 200
13
+ message: OK
14
+ headers:
15
+ Date:
16
+ - Wed, 15 Aug 2012 05:09:03 GMT
17
+ Server:
18
+ - Jetty(7.x.y-SNAPSHOT)
19
+ Content-Type:
20
+ - application/json
21
+ Connection:
22
+ - close
23
+ Transfer-Encoding:
24
+ - chunked
25
+ body:
26
+ encoding: US-ASCII
27
+ string: ! '{"visitor_id":"3CAD1130-b933-4b48-af79-859b89065c64","country":"US","site_token":"UQP1WJ35","hidden":false,"visits":[{"user_agent":"","visit_date":1344952742314,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//search","referral_url":null,"page_title":"Search","ip_address":"64.52.115.178","date_viewed":1344952742314},{"url":"http://www.networktechinc.com//home","referral_url":null,"page_title":"Home","ip_address":"59.85.95.41","date_viewed":1344952802314},{"url":"http://www.networktechinc.com//sitemap","referral_url":null,"page_title":"Sitemap","ip_address":"70.54.34.105","date_viewed":1344952862314},{"url":"http://www.networktechinc.com//sitemap","referral_url":null,"page_title":"Sitemap","ip_address":"206.169.227.26","date_viewed":1344952862314},{"url":"http://www.networktechinc.com//search","referral_url":null,"page_title":"Search","ip_address":"63.115.172.177","date_viewed":1344952982314},{"url":"http://www.networktechinc.com//product","referral_url":null,"page_title":"Product","ip_address":"168.244.164.254","date_viewed":1344953162314}],"forms":[],"visit_id":"Y2WI8A5ITY"},{"user_agent":"","visit_date":1344988742314,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//contact-us","referral_url":null,"page_title":"Contact
28
+ Us","ip_address":"70.54.34.105","date_viewed":1344988742314}],"forms":[],"visit_id":"NQBHNZL8A1"}],"leadScores":[{"hidden":true,"lead_score":-1.0,"previous_lead_score":-1.0,"max_lifetime_lead_score":0.0,"rule_set":"Top
29
+ Leads"},{"hidden":false,"lead_score":21.0,"previous_lead_score":21.0,"max_lifetime_lead_score":21.0,"rule_set":"Active
30
+ Visitors"}],"company_information":[{"address":"1000 Lowes Blvd","name":"Lowe''s
31
+ Companies, Inc.","state_province":"NC","country":"United States","city":"Mooresville","postal_code":"28117-8520","website":"www.lowes.com","revenue":48230000000,"phone_number":"+1.704.758.1000","stock_symbol":"LOW","stock_exchange":"NYSE","ownership":"Publicly
32
+ Traded","employee_count":157000,"employee_range":"> 100K","revenue_range":">
33
+ $1B","industry":"Retail","sub_industry":"Hardware and Building Material Dealers","sic_code":""}],"avg_pageviews_per_visit":3.5,"avg_visit_duration":210000,"is_lead":false,"total_page_views":7,"total_visits":2,"last_visit_date":1344988742314,"last_visit_referral_type":"DIRECT","is_isp":false,"organization_name":"Lowes
34
+ Companies","city":"Mooresville","state_province":"NC","postal_code":"07030","latest_form_submission":null,"default_lead_score":21.0}'
35
+ http_version: !!null
36
+ recorded_at: Wed, 15 Aug 2012 05:09:03 GMT
37
+ recorded_with: VCR 2.2.2
@@ -0,0 +1,110 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.optify.net/v1/sites/UQP1WJ35/visitors.json?access_token=qbkkw3ir3gtg7bdf4rumb69p
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers: {}
10
+ response:
11
+ status:
12
+ code: 200
13
+ message: OK
14
+ headers:
15
+ Date:
16
+ - Wed, 15 Aug 2012 05:09:02 GMT
17
+ Server:
18
+ - Jetty(7.x.y-SNAPSHOT)
19
+ Content-Type:
20
+ - application/json
21
+ Connection:
22
+ - close
23
+ Transfer-Encoding:
24
+ - chunked
25
+ body:
26
+ encoding: US-ASCII
27
+ string: ! '[{"visitor_id":"3CAD1130-b933-4b48-af79-859b89065c64","country":"US","site_token":"UQP1WJ35","hidden":false,"visits":[{"user_agent":"","visit_date":1344952742314,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//search","referral_url":null,"page_title":"Search","ip_address":"64.52.115.178","date_viewed":1344952742314},{"url":"http://www.networktechinc.com//home","referral_url":null,"page_title":"Home","ip_address":"59.85.95.41","date_viewed":1344952802314},{"url":"http://www.networktechinc.com//sitemap","referral_url":null,"page_title":"Sitemap","ip_address":"70.54.34.105","date_viewed":1344952862314},{"url":"http://www.networktechinc.com//sitemap","referral_url":null,"page_title":"Sitemap","ip_address":"206.169.227.26","date_viewed":1344952862314},{"url":"http://www.networktechinc.com//search","referral_url":null,"page_title":"Search","ip_address":"63.115.172.177","date_viewed":1344952982314},{"url":"http://www.networktechinc.com//product","referral_url":null,"page_title":"Product","ip_address":"168.244.164.254","date_viewed":1344953162314}],"forms":[],"visit_id":"Y2WI8A5ITY"},{"user_agent":"","visit_date":1344988742314,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//contact-us","referral_url":null,"page_title":"Contact
28
+ Us","ip_address":"70.54.34.105","date_viewed":1344988742314}],"forms":[],"visit_id":"NQBHNZL8A1"}],"leadScores":[{"hidden":true,"lead_score":-1.0,"previous_lead_score":-1.0,"max_lifetime_lead_score":0.0,"rule_set":"Top
29
+ Leads"},{"hidden":false,"lead_score":21.0,"previous_lead_score":21.0,"max_lifetime_lead_score":21.0,"rule_set":"Active
30
+ Visitors"}],"company_information":[{"address":"1000 Lowes Blvd","name":"Lowe''s
31
+ Companies, Inc.","state_province":"NC","country":"United States","city":"Mooresville","postal_code":"28117-8520","website":"www.lowes.com","revenue":48230000000,"phone_number":"+1.704.758.1000","stock_symbol":"LOW","stock_exchange":"NYSE","ownership":"Publicly
32
+ Traded","employee_count":157000,"employee_range":"> 100K","revenue_range":">
33
+ $1B","industry":"Retail","sub_industry":"Hardware and Building Material Dealers","sic_code":""}],"avg_pageviews_per_visit":3.5,"avg_visit_duration":210000,"is_lead":false,"total_page_views":7,"total_visits":2,"last_visit_date":1344988742314,"last_visit_referral_type":"DIRECT","is_isp":false,"organization_name":"Lowes
34
+ Companies","city":"Mooresville","state_province":"NC","postal_code":"07030","latest_form_submission":null,"default_lead_score":21.0},{"visitor_id":"3CAD9b70-9721-4b8b-bc63-ee1dca949ed5","country":"US","site_token":"UQP1WJ35","hidden":false,"visits":[{"user_agent":"","visit_date":1344988511682,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//blog","referral_url":null,"page_title":"Blog","ip_address":"58.68.79.30","date_viewed":1344988511682},{"url":"http://www.networktechinc.com//downloads","referral_url":null,"page_title":"Downloads","ip_address":"206.80.97.34","date_viewed":1344988631682}],"forms":[],"visit_id":"R1D43LNMNT"}],"leadScores":[{"hidden":true,"lead_score":-1.0,"previous_lead_score":-1.0,"max_lifetime_lead_score":0.0,"rule_set":"Top
35
+ Leads"},{"hidden":false,"lead_score":11.0,"previous_lead_score":11.0,"max_lifetime_lead_score":11.0,"rule_set":"Active
36
+ Visitors"}],"company_information":[],"avg_pageviews_per_visit":2.0,"avg_visit_duration":120000,"is_lead":false,"total_page_views":2,"total_visits":1,"last_visit_date":1344988511682,"last_visit_referral_type":"DIRECT","is_isp":false,"organization_name":"Binary
37
+ Host Centers, LLC","city":"Cincinnati","state_province":"OH","postal_code":"45242","latest_form_submission":null,"default_lead_score":11.0},{"visitor_id":"3CAD47b7-003f-4f97-8678-ec4d3f1de16c","country":"US","site_token":"UQP1WJ35","hidden":false,"visits":[{"user_agent":"","visit_date":1344866028977,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//jobs","referral_url":null,"page_title":"Jobs","ip_address":"18.111.43.59","date_viewed":1344866028977},{"url":"http://www.networktechinc.com//home","referral_url":null,"page_title":"Home","ip_address":"18.111.43.59","date_viewed":1344866148977},{"url":"http://www.networktechinc.com//jobs","referral_url":null,"page_title":"Jobs","ip_address":"72.47.17.242","date_viewed":1344866508977},{"url":"http://www.networktechinc.com//downloads","referral_url":null,"page_title":"Downloads","ip_address":"70.54.34.105","date_viewed":1344866508977},{"url":"http://www.networktechinc.com//home","referral_url":null,"page_title":"Home","ip_address":"85.6.41.176","date_viewed":1344866568977}],"forms":[],"visit_id":"OXJ3RWUKEV"},{"user_agent":"","visit_date":1344988428977,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//jobs","referral_url":null,"page_title":"Jobs","ip_address":"64.52.115.178","date_viewed":1344988428977},{"url":"http://www.networktechinc.com//blog","referral_url":null,"page_title":"Blog","ip_address":"66.166.226.130","date_viewed":1344988608977}],"forms":[],"visit_id":"NV1VXYLYPR"}],"leadScores":[{"hidden":true,"lead_score":-1.0,"previous_lead_score":-1.0,"max_lifetime_lead_score":0.0,"rule_set":"Top
38
+ Leads"},{"hidden":false,"lead_score":21.0,"previous_lead_score":21.0,"max_lifetime_lead_score":21.0,"rule_set":"Active
39
+ Visitors"}],"company_information":[{"address":"5506 6th Ave S","name":"Simon
40
+ Golub ","state_province":"WA","country":"United States","city":"Seattle","postal_code":"98108-2502","website":"www.simongolub.com","revenue":5000000,"phone_number":"+1.206.762.4800","stock_symbol":"","stock_exchange":"","ownership":"Privately
41
+ Held","employee_count":50,"employee_range":"25 - 100","revenue_range":"$1
42
+ - 10M","industry":"Business Services","sub_industry":"Sales Services","sic_code":""}],"avg_pageviews_per_visit":3.5,"avg_visit_duration":360000,"is_lead":false,"total_page_views":7,"total_visits":2,"last_visit_date":1344988428977,"last_visit_referral_type":"DIRECT","is_isp":false,"organization_name":"Simon
43
+ Golub & Sons","city":"Seattle","state_province":"WA","postal_code":"07030","latest_form_submission":null,"default_lead_score":21.0},{"visitor_id":"3CAD8147-7206-4471-9bec-3b8b46eebc70","country":"US","site_token":"UQP1WJ35","hidden":false,"visits":[{"user_agent":"","visit_date":1344988417809,"keyword":"splitter
44
+ tv","referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":"BING","referral_type":"ORGANIC
45
+ SEARCH","pageviews":[{"url":"http://www.networktechinc.com//about-us","referral_url":"http://www.bing.com?q=splitter
46
+ tv","page_title":"About Us","ip_address":"58.68.79.30","date_viewed":1344988417809},{"url":"http://www.networktechinc.com//blog","referral_url":null,"page_title":"Blog","ip_address":"66.46.102.74","date_viewed":1344988597809},{"url":"http://www.networktechinc.com//jobs","referral_url":null,"page_title":"Jobs","ip_address":"63.210.45.140","date_viewed":1344988657809}],"forms":[],"visit_id":"7T0X6QXXV2"}],"leadScores":[{"hidden":true,"lead_score":-1.0,"previous_lead_score":-1.0,"max_lifetime_lead_score":0.0,"rule_set":"Top
47
+ Leads"},{"hidden":false,"lead_score":21.0,"previous_lead_score":11.0,"max_lifetime_lead_score":21.0,"rule_set":"Active
48
+ Visitors"}],"company_information":[{"address":"309 Waverley Oaks Rd Ste 301","name":"mindSHIFT
49
+ Technologies, Inc.","state_province":"MA","country":"United States","city":"Waltham","postal_code":"02452-8460","website":"www.mindshift.com","revenue":75000000,"phone_number":"+1.617.243.2700","stock_symbol":"","stock_exchange":"","ownership":"Privately
50
+ Held","employee_count":500,"employee_range":"250 - 1000","revenue_range":"$50
51
+ - 100M","industry":"Computers & Electronics","sub_industry":"Computers & Electronics
52
+ Other","sic_code":""}],"avg_pageviews_per_visit":3.0,"avg_visit_duration":240000,"is_lead":false,"total_page_views":3,"total_visits":1,"last_visit_date":1344988417809,"last_visit_referral_type":"ORGANIC
53
+ SEARCH","is_isp":false,"organization_name":"Mindshift Technologies","city":"Mc
54
+ Lean","state_province":"VA","postal_code":"","latest_form_submission":null,"default_lead_score":21.0},{"visitor_id":"3CAD725e-eb18-4e68-8076-63d8e1462ab1","country":"US","site_token":"UQP1WJ35","hidden":false,"visits":[{"user_agent":"","visit_date":1344988345794,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//contact-us","referral_url":null,"page_title":"Contact
55
+ Us","ip_address":"159.124.170.10","date_viewed":1344988345794},{"url":"http://www.networktechinc.com//jobs","referral_url":null,"page_title":"Jobs","ip_address":"58.68.79.30","date_viewed":1344988465794},{"url":"http://www.networktechinc.com//sitemap","referral_url":null,"page_title":"Sitemap","ip_address":"63.115.172.177","date_viewed":1344988525794}],"forms":[],"visit_id":"WQ38L077NG"}],"leadScores":[{"hidden":true,"lead_score":-1.0,"previous_lead_score":-1.0,"max_lifetime_lead_score":0.0,"rule_set":"Top
56
+ Leads"},{"hidden":false,"lead_score":11.0,"previous_lead_score":11.0,"max_lifetime_lead_score":11.0,"rule_set":"Active
57
+ Visitors"}],"company_information":[{"address":"21300 Highway 99","name":"Magic
58
+ Toyota","state_province":"WA","country":"United States","city":"Edmonds","postal_code":"98026-7747","website":"www.magictoyota.com","revenue":30000000,"phone_number":"+1.425.775.4422","stock_symbol":"","stock_exchange":"","ownership":"Privately
59
+ Held","employee_count":50,"employee_range":"25 - 100","revenue_range":"$10
60
+ - 50M","industry":"Retail","sub_industry":"Automobile Dealers","sic_code":""}],"avg_pageviews_per_visit":3.0,"avg_visit_duration":180000,"is_lead":false,"total_page_views":3,"total_visits":1,"last_visit_date":1344988345794,"last_visit_referral_type":"DIRECT","is_isp":false,"organization_name":"Magic
61
+ Toyota","city":"Indiana","state_province":"PA","postal_code":"","latest_form_submission":null,"default_lead_score":11.0},{"visitor_id":"3CAD5601-4f27-4cf5-9066-2fa1320c587e","country":"US","site_token":"UQP1WJ35","hidden":false,"visits":[{"user_agent":"","visit_date":1344887380782,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//contact-us","referral_url":null,"page_title":"Contact
62
+ Us","ip_address":"206.169.227.26","date_viewed":1344887380782},{"url":"http://www.networktechinc.com//search","referral_url":null,"page_title":"Search","ip_address":"85.6.41.176","date_viewed":1344887500782},{"url":"http://www.networktechinc.com//help","referral_url":null,"page_title":"Help","ip_address":"72.47.17.242","date_viewed":1344887500782},{"url":"http://www.networktechinc.com//help","referral_url":null,"page_title":"Help","ip_address":"66.46.102.74","date_viewed":1344887920782}],"forms":[],"visit_id":"T6ORPJ0KZ3"},{"user_agent":"","visit_date":1344988180782,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//search","referral_url":null,"page_title":"Search","ip_address":"198.93.154.20","date_viewed":1344988180782},{"url":"http://www.networktechinc.com//about-us","referral_url":null,"page_title":"About
63
+ Us","ip_address":"18.111.43.59","date_viewed":1344988360782},{"url":"http://www.networktechinc.com//downloads","referral_url":null,"page_title":"Downloads","ip_address":"206.169.227.26","date_viewed":1344988540782},{"url":"http://www.networktechinc.com//blog","referral_url":null,"page_title":"Blog","ip_address":"63.210.45.140","date_viewed":1344988720782}],"forms":[],"visit_id":"74KC3AEKRD"}],"leadScores":[{"hidden":true,"lead_score":-1.0,"previous_lead_score":-1.0,"max_lifetime_lead_score":0.0,"rule_set":"Top
64
+ Leads"},{"hidden":false,"lead_score":21.0,"previous_lead_score":21.0,"max_lifetime_lead_score":21.0,"rule_set":"Active
65
+ Visitors"}],"company_information":[{"address":"309 Waverley Oaks Rd Ste 301","name":"mindSHIFT
66
+ Technologies, Inc.","state_province":"MA","country":"United States","city":"Waltham","postal_code":"02452-8460","website":"www.mindshift.com","revenue":75000000,"phone_number":"+1.617.243.2700","stock_symbol":"","stock_exchange":"","ownership":"Privately
67
+ Held","employee_count":500,"employee_range":"250 - 1000","revenue_range":"$50
68
+ - 100M","industry":"Computers & Electronics","sub_industry":"Computers & Electronics
69
+ Other","sic_code":""}],"avg_pageviews_per_visit":4.0,"avg_visit_duration":540000,"is_lead":false,"total_page_views":8,"total_visits":2,"last_visit_date":1344988180782,"last_visit_referral_type":"DIRECT","is_isp":false,"organization_name":"Mindshift
70
+ Technologies","city":"Mc Lean","state_province":"VA","postal_code":"73801","latest_form_submission":null,"default_lead_score":21.0},{"visitor_id":"3CADb4d9-da9f-461f-be69-e734a987c5a4","country":"US","site_token":"UQP1WJ35","hidden":false,"visits":[{"user_agent":"","visit_date":1344988179087,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//sitemap","referral_url":null,"page_title":"Sitemap","ip_address":"66.166.226.130","date_viewed":1344988179087},{"url":"http://www.networktechinc.com//search","referral_url":null,"page_title":"Search","ip_address":"206.169.227.26","date_viewed":1344988299087},{"url":"http://www.networktechinc.com//sitemap","referral_url":null,"page_title":"Sitemap","ip_address":"85.6.41.176","date_viewed":1344988359087},{"url":"http://www.networktechinc.com//help","referral_url":null,"page_title":"Help","ip_address":"18.111.43.59","date_viewed":1344988359087},{"url":"http://www.networktechinc.com//contact-us","referral_url":null,"page_title":"Contact
71
+ Us","ip_address":"198.93.154.20","date_viewed":1344988419087}],"forms":[],"visit_id":"OACCQLZQZ8"}],"leadScores":[{"hidden":true,"lead_score":-1.0,"previous_lead_score":-1.0,"max_lifetime_lead_score":0.0,"rule_set":"Top
72
+ Leads"},{"hidden":false,"lead_score":21.0,"previous_lead_score":21.0,"max_lifetime_lead_score":21.0,"rule_set":"Active
73
+ Visitors"}],"company_information":[{"address":"901 Mission St","name":"San
74
+ Francisco Chronicle","state_province":"CA","country":"United States","city":"San
75
+ Francisco","postal_code":"94103-2905","website":"www.sfgate.com","revenue":150000000,"phone_number":"+1.415.777.6330","stock_symbol":"","stock_exchange":"","ownership":"Privately
76
+ Held","employee_count":500,"employee_range":"250 - 1000","revenue_range":"$100
77
+ - 250M","industry":"Media & Entertainment","sub_industry":"Newspapers, Books
78
+ and Periodicals","sic_code":""},{"address":"901 Mission St","name":"San Francisco
79
+ Chronicle","state_province":"CA","country":"United States","city":"San Francisco","postal_code":"94103-2905","website":"www.sfgate.com","revenue":150000000,"phone_number":"+1.415.777.6330","stock_symbol":"","stock_exchange":"","ownership":"Privately
80
+ Held","employee_count":500,"employee_range":"250 - 1000","revenue_range":"$100
81
+ - 250M","industry":"Media & Entertainment","sub_industry":"Newspapers, Books
82
+ and Periodicals","sic_code":""}],"avg_pageviews_per_visit":5.0,"avg_visit_duration":240000,"is_lead":false,"total_page_views":5,"total_visits":1,"last_visit_date":1344988179087,"last_visit_referral_type":"DIRECT","is_isp":false,"organization_name":"San
83
+ Francisco Chronicle, LLC","city":"Oakland","state_province":"CA","postal_code":"","latest_form_submission":null,"default_lead_score":21.0},{"visitor_id":"3CAD8385-634f-44aa-af8e-9a7132ea4af4","country":"US","site_token":"UQP1WJ35","hidden":false,"visits":[{"user_agent":"","visit_date":1344890900200,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"REFERRAL","pageviews":[{"url":"http://www.networktechinc.com//about-us","referral_url":"http://www.yahoo.com?q=corporate
84
+ law","page_title":"About Us","ip_address":"85.22.12.209","date_viewed":1344890900200},{"url":"http://www.networktechinc.com//help","referral_url":null,"page_title":"Help","ip_address":"85.22.12.209","date_viewed":1344891320200},{"url":"http://www.networktechinc.com//contact-us","referral_url":null,"page_title":"Contact
85
+ Us","ip_address":"70.54.34.105","date_viewed":1344891380200},{"url":"http://www.networktechinc.com//about-us","referral_url":null,"page_title":"About
86
+ Us","ip_address":"85.22.12.209","date_viewed":1344891380200},{"url":"http://www.networktechinc.com//jobs","referral_url":null,"page_title":"Jobs","ip_address":"64.52.115.178","date_viewed":1344891440200}],"forms":[],"visit_id":"M8AS9M2GR1"},{"user_agent":"","visit_date":1344941300200,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//product","referral_url":null,"page_title":"Product","ip_address":"134.78.110.18","date_viewed":1344941300200},{"url":"http://www.networktechinc.com//help","referral_url":null,"page_title":"Help","ip_address":"72.47.17.242","date_viewed":1344941660200},{"url":"http://www.networktechinc.com//product","referral_url":null,"page_title":"Product","ip_address":"200.76.55.67","date_viewed":1344941720200},{"url":"http://www.networktechinc.com//product","referral_url":null,"page_title":"Product","ip_address":"64.52.115.178","date_viewed":1344941720200},{"url":"http://www.networktechinc.com//product","referral_url":null,"page_title":"Product","ip_address":"198.93.154.20","date_viewed":1344941720200},{"url":"http://www.networktechinc.com//product","referral_url":null,"page_title":"Product","ip_address":"206.169.227.26","date_viewed":1344941780200}],"forms":[],"visit_id":"OV830WW1YY"},{"user_agent":"","visit_date":1344988100200,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//search","referral_url":null,"page_title":"Search","ip_address":"98.96.9.38","date_viewed":1344988100200},{"url":"http://www.networktechinc.com//contact-us","referral_url":null,"page_title":"Contact
87
+ Us","ip_address":"98.96.9.38","date_viewed":1344988220200},{"url":"http://www.networktechinc.com//search","referral_url":null,"page_title":"Search","ip_address":"58.68.79.30","date_viewed":1344988280200},{"url":"http://www.networktechinc.com//search","referral_url":null,"page_title":"Search","ip_address":"200.76.55.67","date_viewed":1344988520200},{"url":"http://www.networktechinc.com//jobs","referral_url":null,"page_title":"Jobs","ip_address":"159.124.170.10","date_viewed":1344988580200}],"forms":[],"visit_id":"XWXBX64025"}],"leadScores":[{"hidden":true,"lead_score":-1.0,"previous_lead_score":-1.0,"max_lifetime_lead_score":0.0,"rule_set":"Top
88
+ Leads"},{"hidden":false,"lead_score":32.0,"previous_lead_score":32.0,"max_lifetime_lead_score":32.0,"rule_set":"Active
89
+ Visitors"}],"company_information":[{"address":"6501 Watts Rd","name":"Mead
90
+ and Hunt, Inc.","state_province":"WI","country":"United States","city":"Madison","postal_code":"53719-1361","website":"www.meadhunt.com","revenue":75000000,"phone_number":"+1.920.496.0500","stock_symbol":"","stock_exchange":"","ownership":"Privately
91
+ Held","employee_count":500,"employee_range":"250 - 1000","revenue_range":"$50
92
+ - 100M","industry":"Real Estate & Construction","sub_industry":"Architecture,Engineering
93
+ and Design","sic_code":""}],"avg_pageviews_per_visit":5.3333335,"avg_visit_duration":500000,"is_lead":false,"total_page_views":16,"total_visits":3,"last_visit_date":1344988100200,"last_visit_referral_type":"DIRECT","is_isp":false,"organization_name":"Mead
94
+ Corporation","city":"Renton","state_province":"WA","postal_code":"07030","latest_form_submission":null,"default_lead_score":32.0},{"visitor_id":"3CAD124a-f411-40d9-b7d5-ee153a4e0972","country":"US","site_token":"UQP1WJ35","hidden":false,"visits":[{"user_agent":"","visit_date":1344966468123,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":"TestCampaign","custom_referral_type":"TWITTER","referral_search_engine":null,"referral_type":"REFERRAL","pageviews":[{"url":"http://www.networktechinc.com//downloads","referral_url":"http://www.reddit.com/394238","page_title":"Downloads","ip_address":"206.169.227.26","date_viewed":1344966468123},{"url":"http://www.networktechinc.com//product","referral_url":"http://www.networktechinc.com//product","page_title":"Product","ip_address":"168.244.164.254","date_viewed":1344966648123},{"url":"http://www.networktechinc.com//search","referral_url":"http://www.networktechinc.com//downloads","page_title":"Search","ip_address":"84.108.219.152","date_viewed":1344966708123},{"url":"http://www.networktechinc.com//jobs","referral_url":"http://www.networktechinc.com//home","page_title":"Jobs","ip_address":"206.169.227.26","date_viewed":1344966708123},{"url":"http://www.networktechinc.com//contact-us","referral_url":"http://www.networktechinc.com//help","page_title":"Contact
95
+ Us","ip_address":"216.81.156.209","date_viewed":1344966768123}],"forms":[],"visit_id":"BRIEPGMYKE"},{"user_agent":"","visit_date":1344988068123,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//sitemap","referral_url":null,"page_title":"Sitemap","ip_address":"59.85.95.41","date_viewed":1344988068123},{"url":"http://www.networktechinc.com//contact-us","referral_url":null,"page_title":"Contact
96
+ Us","ip_address":"168.244.164.254","date_viewed":1344988248123},{"url":"http://www.networktechinc.com//blog","referral_url":null,"page_title":"Blog","ip_address":"134.78.110.18","date_viewed":1344988308123},{"url":"http://www.networktechinc.com//help","referral_url":null,"page_title":"Help","ip_address":"206.80.97.34","date_viewed":1344988488123},{"url":"http://www.networktechinc.com//downloads","referral_url":null,"page_title":"Downloads","ip_address":"85.6.41.176","date_viewed":1344988488123}],"forms":[],"visit_id":"W0Y19UIVUS"}],"leadScores":[{"hidden":true,"lead_score":-1.0,"previous_lead_score":-1.0,"max_lifetime_lead_score":0.0,"rule_set":"Top
97
+ Leads"},{"hidden":false,"lead_score":21.0,"previous_lead_score":21.0,"max_lifetime_lead_score":21.0,"rule_set":"Active
98
+ Visitors"}],"company_information":[],"avg_pageviews_per_visit":5.0,"avg_visit_duration":360000,"is_lead":false,"total_page_views":10,"total_visits":2,"last_visit_date":1344988068123,"last_visit_referral_type":"DIRECT","is_isp":false,"organization_name":"Binary
99
+ Host Centers, LLC","city":"Cincinnati","state_province":"OH","postal_code":"45242","latest_form_submission":null,"default_lead_score":21.0},{"visitor_id":"3CAD319f-9fe3-4b65-9932-365b55036170","country":"US","site_token":"UQP1WJ35","hidden":false,"visits":[{"user_agent":"","visit_date":1344988052598,"keyword":null,"referral_serp_rank":null,"custom_referral_detail":null,"custom_referral_type":null,"referral_search_engine":null,"referral_type":"DIRECT","pageviews":[{"url":"http://www.networktechinc.com//contact-us","referral_url":null,"page_title":"Contact
100
+ Us","ip_address":"18.111.43.59","date_viewed":1344988052598},{"url":"http://www.networktechinc.com//product","referral_url":null,"page_title":"Product","ip_address":"18.111.43.59","date_viewed":1344988112598},{"url":"http://www.networktechinc.com//contact-us","referral_url":null,"page_title":"Contact
101
+ Us","ip_address":"70.54.34.105","date_viewed":1344988232598},{"url":"http://www.networktechinc.com//help","referral_url":null,"page_title":"Help","ip_address":"84.108.219.152","date_viewed":1344988472598}],"forms":[],"visit_id":"XXKVMOM3RQ"}],"leadScores":[{"hidden":true,"lead_score":-1.0,"previous_lead_score":-1.0,"max_lifetime_lead_score":0.0,"rule_set":"Top
102
+ Leads"},{"hidden":false,"lead_score":21.0,"previous_lead_score":21.0,"max_lifetime_lead_score":21.0,"rule_set":"Active
103
+ Visitors"}],"company_information":[{"address":"77 Massachusetts Ave","name":"Massachusetts
104
+ Institute of Technology ","state_province":"MA","country":"United States","city":"Cambridge","postal_code":"02139-4301","website":"www.mit.edu","revenue":1000000000,"phone_number":"+1.617.253.1000","stock_symbol":"","stock_exchange":"","ownership":"Other","employee_count":25000,"employee_range":"10K
105
+ - 50K","revenue_range":"> $1B","industry":"Education","sub_industry":"Colleges
106
+ and Universities","sic_code":""}],"avg_pageviews_per_visit":4.0,"avg_visit_duration":420000,"is_lead":false,"total_page_views":4,"total_visits":1,"last_visit_date":1344988052598,"last_visit_referral_type":"DIRECT","is_isp":false,"organization_name":"Massachusetts
107
+ Institute of Technology","city":"Cambridge","state_province":"MA","postal_code":"02139","latest_form_submission":null,"default_lead_score":21.0}]'
108
+ http_version: !!null
109
+ recorded_at: Wed, 15 Aug 2012 05:09:02 GMT
110
+ recorded_with: VCR 2.2.2
@@ -0,0 +1,34 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.optify.net/whoami?access_token=wmjf73ott6f33unj2ztlttor
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers: {}
10
+ response:
11
+ status:
12
+ code: 200
13
+ message: OK
14
+ headers:
15
+ Date:
16
+ - Wed, 15 Aug 2012 05:09:03 GMT
17
+ Server:
18
+ - Jetty(7.x.y-SNAPSHOT)
19
+ Content-Type:
20
+ - text/plain; charset=UTF-8
21
+ Vary:
22
+ - Accept-Encoding
23
+ Connection:
24
+ - close
25
+ Transfer-Encoding:
26
+ - chunked
27
+ body:
28
+ encoding: US-ASCII
29
+ string: ! 'Ting Wang
30
+
31
+ '
32
+ http_version: !!null
33
+ recorded_at: Wed, 15 Aug 2012 05:09:03 GMT
34
+ recorded_with: VCR 2.2.2
@@ -0,0 +1,77 @@
1
+ require 'spec_helper'
2
+
3
+ describe Optify::Client do
4
+
5
+ subject { Optify.new('wmjf73ott6f33unj2ztlttor') }
6
+
7
+ context "getting started" do
8
+
9
+ describe "#initialize" do
10
+ it "should raise an error if no token given" do
11
+ lambda { Optify.new }.should raise_error
12
+ end
13
+ end
14
+
15
+ describe "setup" do
16
+ it "should have the base url set to the Optify API endpoint" do
17
+ Optify::Client.base_uri.should eq "https://api.optify.net"
18
+ end
19
+ end
20
+ end
21
+
22
+ describe "#all_sites", :vcr => { :cassette_name => "optify_sites" } do
23
+
24
+ let(:sites) { subject.all_sites }
25
+
26
+ specify { sites.should_not be_nil }
27
+
28
+ it "should have site details" do
29
+ sites[0]["name"].should eq "NetVM (Germany)"
30
+ end
31
+ end
32
+
33
+ describe "#site", :vcr => { :cassette_name => "optify_site" } do
34
+
35
+ let(:site) { subject.site("4854OOO0") }
36
+
37
+ it "should only return a single hash" do
38
+ site.class.should eq Hash
39
+ end
40
+
41
+ it "should get site info for a specific site" do
42
+ site["name"].should eq "NetVM (Germany)"
43
+ end
44
+ end
45
+
46
+ describe "#all_visitors", :vcr => { :cassette_name => "site_visitors" } do
47
+ # need to get updated api content that actually has visitors
48
+ let(:visitors) { Optify.new("qbkkw3ir3gtg7bdf4rumb69p").all_visitors("UQP1WJ35") }
49
+
50
+ specify { visitors.should_not be_empty }
51
+ end
52
+
53
+ describe "#visitor", :vcr => { :cassette_name => "site_visitor" } do
54
+
55
+ let(:visitor) { Optify.new("qbkkw3ir3gtg7bdf4rumb69p").visitor("UQP1WJ35","3CAD1130-b933-4b48-af79-859b89065c64") }
56
+
57
+ specify { visitor.should_not be_empty }
58
+
59
+ it "should only return a single hash" do
60
+ visitor.class.should be Hash
61
+ end
62
+
63
+ it "should provide information on one user" do
64
+ visitor["visitor_id"].should eq "3CAD1130-b933-4b48-af79-859b89065c64"
65
+ visitor["country"].should eq "US"
66
+ visitor["site_token"].should eq "UQP1WJ35"
67
+ visitor["hidden"].should eq false
68
+ end
69
+ end
70
+
71
+ describe "#who_am_i", :vcr => { :cassette_name => "specific site visitor" } do
72
+
73
+ it "should tell me my name" do
74
+ subject.who_am_i.should_not be_nil
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,20 @@
1
+ require 'simplecov'
2
+ SimpleCov.start
3
+
4
+ require 'optify'
5
+ require 'vcr'
6
+ require 'webmock/rspec'
7
+
8
+ VCR.configure do |c|
9
+ c.cassette_library_dir = 'spec/fixtures/optify_cassettes'
10
+ c.hook_into :webmock
11
+ c.allow_http_connections_when_no_cassette = false
12
+ c.configure_rspec_metadata!
13
+ c.default_cassette_options = {
14
+ :record => :once
15
+ }
16
+ end
17
+
18
+ RSpec.configure do |c|
19
+ c.treat_symbols_as_metadata_keys_with_true_values = true
20
+ end
metadata ADDED
@@ -0,0 +1,159 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: optify
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Joel Stimson
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-08-17 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rspec
16
+ requirement: &2155742460 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: *2155742460
25
+ - !ruby/object:Gem::Dependency
26
+ name: guard-rspec
27
+ requirement: &2155742040 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: *2155742040
36
+ - !ruby/object:Gem::Dependency
37
+ name: simplecov
38
+ requirement: &2155741620 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *2155741620
47
+ - !ruby/object:Gem::Dependency
48
+ name: rake
49
+ requirement: &2155741200 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *2155741200
58
+ - !ruby/object:Gem::Dependency
59
+ name: vcr
60
+ requirement: &2155740780 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ type: :development
67
+ prerelease: false
68
+ version_requirements: *2155740780
69
+ - !ruby/object:Gem::Dependency
70
+ name: webmock
71
+ requirement: &2155740360 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: *2155740360
80
+ - !ruby/object:Gem::Dependency
81
+ name: simplecov
82
+ requirement: &2155739940 !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ! '>='
86
+ - !ruby/object:Gem::Version
87
+ version: '0'
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: *2155739940
91
+ - !ruby/object:Gem::Dependency
92
+ name: httparty
93
+ requirement: &2155739520 !ruby/object:Gem::Requirement
94
+ none: false
95
+ requirements:
96
+ - - ! '>='
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
99
+ type: :runtime
100
+ prerelease: false
101
+ version_requirements: *2155739520
102
+ description: This gem provides ruby bindings for the Optify API, allowing you to access
103
+ the visitor and lead data for sites on your account.
104
+ email:
105
+ - contact@cleanroomstudios.com
106
+ executables: []
107
+ extensions: []
108
+ extra_rdoc_files: []
109
+ files:
110
+ - .gitignore
111
+ - .travis.yml
112
+ - Gemfile
113
+ - Guardfile
114
+ - README.md
115
+ - Rakefile
116
+ - lib/optify.rb
117
+ - lib/optify/client.rb
118
+ - lib/optify/version.rb
119
+ - optify.gemspec
120
+ - spec/fixtures/optify_cassettes/optify_site.yml
121
+ - spec/fixtures/optify_cassettes/optify_sites.yml
122
+ - spec/fixtures/optify_cassettes/site_visitor.yml
123
+ - spec/fixtures/optify_cassettes/site_visitors.yml
124
+ - spec/fixtures/optify_cassettes/specific_site_visitor.yml
125
+ - spec/optify_spec.rb
126
+ - spec/spec_helper.rb
127
+ homepage: https://github.com/stim371/optify
128
+ licenses: []
129
+ post_install_message:
130
+ rdoc_options: []
131
+ require_paths:
132
+ - lib
133
+ required_ruby_version: !ruby/object:Gem::Requirement
134
+ none: false
135
+ requirements:
136
+ - - ! '>='
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ required_rubygems_version: !ruby/object:Gem::Requirement
140
+ none: false
141
+ requirements:
142
+ - - ! '>='
143
+ - !ruby/object:Gem::Version
144
+ version: '0'
145
+ requirements: []
146
+ rubyforge_project:
147
+ rubygems_version: 1.8.10
148
+ signing_key:
149
+ specification_version: 3
150
+ summary: Ruby wrapper for Optify API
151
+ test_files:
152
+ - spec/fixtures/optify_cassettes/optify_site.yml
153
+ - spec/fixtures/optify_cassettes/optify_sites.yml
154
+ - spec/fixtures/optify_cassettes/site_visitor.yml
155
+ - spec/fixtures/optify_cassettes/site_visitors.yml
156
+ - spec/fixtures/optify_cassettes/specific_site_visitor.yml
157
+ - spec/optify_spec.rb
158
+ - spec/spec_helper.rb
159
+ has_rdoc: