trackablaze 0.1.5 → 0.1.6
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/lib/trackablaze/command.rb +1 -1
- data/lib/trackablaze/tracker.rb +10 -0
- data/lib/trackablaze/tracker_item.rb +5 -1
- data/trackers/klout.rb +39 -0
- data/trackers/klout.yml +43 -0
- data/version.rb +1 -1
- metadata +21 -8
data/lib/trackablaze/command.rb
CHANGED
@@ -20,7 +20,7 @@ module Trackablaze
|
|
20
20
|
|
21
21
|
tracker_items.each do |tracker_item|
|
22
22
|
puts "[ #{tracker_item.title} ]".center(75,'-')
|
23
|
-
puts "Key: #{tracker_item.
|
23
|
+
puts "Key: #{tracker_item.key2}"
|
24
24
|
puts "params: #{tracker_item.params}"
|
25
25
|
puts "results: #{results[tracker_item.key]}"
|
26
26
|
end
|
data/lib/trackablaze/tracker.rb
CHANGED
@@ -13,6 +13,16 @@ module Trackablaze
|
|
13
13
|
sb.push((config['metrics'] || default_metrics).flatten)
|
14
14
|
sb.flatten.join('_')
|
15
15
|
end
|
16
|
+
|
17
|
+
# A string that uniquely identifies this instance of the tracker, without the metrics list
|
18
|
+
# This is used in the csv output
|
19
|
+
def self.key2(config)
|
20
|
+
# By default we use all params and metrics
|
21
|
+
sb = []
|
22
|
+
sb.push(self.handle)
|
23
|
+
sb.push(config['params'].flatten) if config['params']
|
24
|
+
sb.flatten.join('_')
|
25
|
+
end
|
16
26
|
|
17
27
|
class << self
|
18
28
|
attr_accessor :trackers
|
data/trackers/klout.rb
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
require 'klout'
|
2
|
+
|
3
|
+
module Trackablaze
|
4
|
+
class Klout < Tracker
|
5
|
+
def get_metrics(tracker_items)
|
6
|
+
@klout_client = Kloutbg.new("zxz2p64gv3caabbqmvzaub9p")
|
7
|
+
tracker_items.collect {|tracker_item| get_metrics_single(tracker_item)}
|
8
|
+
end
|
9
|
+
|
10
|
+
def get_metrics_single(tracker_item)
|
11
|
+
metrics = {}
|
12
|
+
|
13
|
+
if (tracker_item.params["username"].nil? || tracker_item.params["username"].empty?)
|
14
|
+
add_error(metrics, "No username supplied", "username")
|
15
|
+
return metrics
|
16
|
+
end
|
17
|
+
|
18
|
+
response = nil
|
19
|
+
begin
|
20
|
+
response = @klout_client.show(tracker_item.params["username"])
|
21
|
+
rescue
|
22
|
+
end
|
23
|
+
|
24
|
+
if (response.nil? || response['status'] == 404)
|
25
|
+
add_error(metrics, "Invalid username supplied", "username")
|
26
|
+
return metrics
|
27
|
+
end
|
28
|
+
|
29
|
+
s = response['users'][0]['score']
|
30
|
+
|
31
|
+
tracker_item.metrics.each do |metric|
|
32
|
+
metrics[metric] = s[metric]
|
33
|
+
end
|
34
|
+
|
35
|
+
metrics
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
data/trackers/klout.yml
ADDED
@@ -0,0 +1,43 @@
|
|
1
|
+
title: 'Klout'
|
2
|
+
|
3
|
+
params:
|
4
|
+
username:
|
5
|
+
name: 'Username'
|
6
|
+
description: 'Klout username'
|
7
|
+
type: string
|
8
|
+
|
9
|
+
metrics:
|
10
|
+
kscore:
|
11
|
+
name: 'Score'
|
12
|
+
description: 'Klout score'
|
13
|
+
default: true
|
14
|
+
|
15
|
+
slope:
|
16
|
+
name: 'Slope'
|
17
|
+
description: 'How fast Klout score is changing'
|
18
|
+
|
19
|
+
kclass:
|
20
|
+
name: 'Class'
|
21
|
+
description: 'Klout class assigned to the user'
|
22
|
+
default: true
|
23
|
+
|
24
|
+
network_score:
|
25
|
+
name: 'Network score'
|
26
|
+
description: 'Network Influence is the influence level of your engaged audience (see http://corp.klout.com/kscore)'
|
27
|
+
|
28
|
+
amplification_score:
|
29
|
+
name: 'Amplification probability'
|
30
|
+
description: 'Amplification Probability is the likelihood that your content will be acted upon (see http://corp.klout.com/kscore)'
|
31
|
+
|
32
|
+
true_reach:
|
33
|
+
name: 'True reach'
|
34
|
+
description: 'True Reach is the size of your engaged audience (see http://corp.klout.com/kscore)'
|
35
|
+
|
36
|
+
delta_1day:
|
37
|
+
name: '1 day delta'
|
38
|
+
description: 'Change in Klout score in 1 day'
|
39
|
+
default: true
|
40
|
+
|
41
|
+
delta_5day:
|
42
|
+
name: '5 day delta'
|
43
|
+
description: 'Change in Klout score in 5 days'
|
data/version.rb
CHANGED
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: trackablaze
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.1.
|
5
|
+
version: 0.1.6
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Amol Kelkar
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-06-
|
13
|
+
date: 2011-06-19 00:00:00 -07:00
|
14
14
|
default_executable:
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
@@ -69,38 +69,49 @@ dependencies:
|
|
69
69
|
type: :runtime
|
70
70
|
version_requirements: *id005
|
71
71
|
- !ruby/object:Gem::Dependency
|
72
|
-
name:
|
72
|
+
name: kloutbg
|
73
73
|
prerelease: false
|
74
74
|
requirement: &id006 !ruby/object:Gem::Requirement
|
75
|
+
none: false
|
76
|
+
requirements:
|
77
|
+
- - ">="
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: "0"
|
80
|
+
type: :runtime
|
81
|
+
version_requirements: *id006
|
82
|
+
- !ruby/object:Gem::Dependency
|
83
|
+
name: rspec
|
84
|
+
prerelease: false
|
85
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
75
86
|
none: false
|
76
87
|
requirements:
|
77
88
|
- - ~>
|
78
89
|
- !ruby/object:Gem::Version
|
79
90
|
version: 2.5.0
|
80
91
|
type: :development
|
81
|
-
version_requirements: *
|
92
|
+
version_requirements: *id007
|
82
93
|
- !ruby/object:Gem::Dependency
|
83
94
|
name: mg
|
84
95
|
prerelease: false
|
85
|
-
requirement: &
|
96
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
86
97
|
none: false
|
87
98
|
requirements:
|
88
99
|
- - ">="
|
89
100
|
- !ruby/object:Gem::Version
|
90
101
|
version: "0"
|
91
102
|
type: :development
|
92
|
-
version_requirements: *
|
103
|
+
version_requirements: *id008
|
93
104
|
- !ruby/object:Gem::Dependency
|
94
105
|
name: rails
|
95
106
|
prerelease: false
|
96
|
-
requirement: &
|
107
|
+
requirement: &id009 !ruby/object:Gem::Requirement
|
97
108
|
none: false
|
98
109
|
requirements:
|
99
110
|
- - ">="
|
100
111
|
- !ruby/object:Gem::Version
|
101
112
|
version: 3.0.0
|
102
113
|
type: :development
|
103
|
-
version_requirements: *
|
114
|
+
version_requirements: *id009
|
104
115
|
description: Track metrics such as a Twitter account's number of followers, count of tweets, etc
|
105
116
|
email:
|
106
117
|
- amolk@aflatune.com
|
@@ -118,6 +129,8 @@ files:
|
|
118
129
|
- lib/trackablaze.rb
|
119
130
|
- trackers/facebook_page.rb
|
120
131
|
- trackers/facebook_page.yml
|
132
|
+
- trackers/klout.rb
|
133
|
+
- trackers/klout.yml
|
121
134
|
- trackers/pagerank.rb
|
122
135
|
- trackers/pagerank.yml
|
123
136
|
- trackers/twitter.rb
|