twitter-userstream 0.1.1 → 0.1.2
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/Gemfile +0 -0
- data/Gemfile.lock +0 -0
- data/Rakefile +0 -0
- data/Readme.rdoc +0 -0
- data/VERSION +1 -1
- data/image/bird.png +0 -0
- data/lib/userstream.rb +10 -7
- data/lib/userstream/connect.rb +9 -17
- data/lib/userstream/event.rb +0 -0
- data/lib/userstream/event/delete.rb +0 -0
- data/lib/userstream/event/direct_message.rb +0 -0
- data/lib/userstream/event/favorite.rb +0 -0
- data/lib/userstream/event/follow.rb +0 -0
- data/lib/userstream/event/retweet.rb +0 -0
- data/lib/userstream/event/unfavorite.rb +0 -0
- data/lib/userstream/friend.rb +0 -0
- data/lib/userstream/tweet.rb +0 -0
- data/lib/userstream/twitter_object.rb +0 -0
- data/lib/userstream/user.rb +0 -0
- metadata +100 -107
data/Gemfile
CHANGED
File without changes
|
data/Gemfile.lock
CHANGED
File without changes
|
data/Rakefile
CHANGED
File without changes
|
data/Readme.rdoc
CHANGED
File without changes
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.2
|
data/image/bird.png
CHANGED
File without changes
|
data/lib/userstream.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
|
-
require 'eventmachine'
|
1
|
+
#require 'eventmachine'
|
2
2
|
require 'em-http'
|
3
|
+
require 'em-http/middleware/oauth'
|
3
4
|
require 'yajl'
|
4
5
|
require 'pp'
|
5
6
|
require 'load_path_find'
|
@@ -36,10 +37,10 @@ class Userstream
|
|
36
37
|
|
37
38
|
attr_reader :consumer_token, :consumer_secret, :fill_in
|
38
39
|
|
39
|
-
def initialize(options =
|
40
|
-
@consumer_token = options
|
41
|
-
@consumer_secret = options
|
42
|
-
@fill_in = options
|
40
|
+
def initialize(options = {})
|
41
|
+
@consumer_token = options[:consumer_token]
|
42
|
+
@consumer_secret = options[:consumer_secret]
|
43
|
+
@fill_in = options[:fill_in]
|
43
44
|
@connect_url = "https://userstream.twitter.com/2/user.json"
|
44
45
|
@handlers = Handlers.new(*HandlerTypes.map{|h| []})
|
45
46
|
@on_connect_called = {}
|
@@ -98,12 +99,14 @@ class Userstream
|
|
98
99
|
|
99
100
|
def connect(*users)
|
100
101
|
unless EM.reactor_running?
|
101
|
-
EM.run
|
102
|
+
EM.run do
|
103
|
+
connect(*users)
|
104
|
+
end
|
102
105
|
else
|
103
106
|
@users.concat(users)
|
104
107
|
@user_adder ||= EM.add_periodic_timer(1) {
|
105
108
|
users_to_connect = @users.slice!(0, 10)
|
106
|
-
if users_to_connect &&
|
109
|
+
if users_to_connect && users_to_connect.any?
|
107
110
|
users_to_connect.each do |user|
|
108
111
|
connect_single(user)
|
109
112
|
end
|
data/lib/userstream/connect.rb
CHANGED
@@ -22,23 +22,15 @@ class Userstream
|
|
22
22
|
|
23
23
|
def get_connection(user, url, method, extras = nil)
|
24
24
|
options = extras ? extras.merge(:timeout => 0) : {:timeout => 0}
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
end
|
35
|
-
|
36
|
-
def twitter_oauth_consumer
|
37
|
-
OAuth::Consumer.new(consumer_token, consumer_secret, :site => "http://twitter.com")
|
38
|
-
end
|
39
|
-
|
40
|
-
def twitter_oauth_access_token(token=nil,secret=nil)
|
41
|
-
OAuth::AccessToken.new(twitter_oauth_consumer, token, secret)
|
25
|
+
oauthconfig = {
|
26
|
+
:consumer_key => consumer_token,
|
27
|
+
:consumer_secret => consumer_secret,
|
28
|
+
:access_token => user.access_token,
|
29
|
+
:access_token_secret => user.access_secret
|
30
|
+
}
|
31
|
+
request = EM::HttpRequest.new(url)
|
32
|
+
request.use EventMachine::Middleware::OAuth, oauthconfig
|
33
|
+
request.send(method, options)
|
42
34
|
end
|
43
35
|
end
|
44
36
|
end
|
data/lib/userstream/event.rb
CHANGED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/lib/userstream/friend.rb
CHANGED
File without changes
|
data/lib/userstream/tweet.rb
CHANGED
File without changes
|
File without changes
|
data/lib/userstream/user.rb
CHANGED
File without changes
|
metadata
CHANGED
@@ -1,172 +1,169 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: twitter-userstream
|
3
|
-
version: !ruby/object:Gem::Version
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.2
|
4
5
|
prerelease:
|
5
|
-
version: 0.1.1
|
6
6
|
platform: ruby
|
7
|
-
authors:
|
7
|
+
authors:
|
8
8
|
- Joshua Hull
|
9
9
|
- Fabien Penso
|
10
10
|
- Noah Horton
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
|
15
|
-
date: 2011-05-14 00:00:00 -07:00
|
14
|
+
date: 2011-05-30 00:00:00.000000000 -07:00
|
16
15
|
default_executable: chirp_growl
|
17
|
-
dependencies:
|
18
|
-
- !ruby/object:Gem::Dependency
|
16
|
+
dependencies:
|
17
|
+
- !ruby/object:Gem::Dependency
|
19
18
|
name: eventmachine
|
20
|
-
requirement: &
|
19
|
+
requirement: &2156310400 !ruby/object:Gem::Requirement
|
21
20
|
none: false
|
22
|
-
requirements:
|
23
|
-
- -
|
24
|
-
- !ruby/object:Gem::Version
|
21
|
+
requirements:
|
22
|
+
- - ! '>='
|
23
|
+
- !ruby/object:Gem::Version
|
25
24
|
version: 0.12.10
|
26
25
|
type: :runtime
|
27
26
|
prerelease: false
|
28
|
-
version_requirements: *
|
29
|
-
- !ruby/object:Gem::Dependency
|
27
|
+
version_requirements: *2156310400
|
28
|
+
- !ruby/object:Gem::Dependency
|
30
29
|
name: em-http-request
|
31
|
-
requirement: &
|
30
|
+
requirement: &2156309560 !ruby/object:Gem::Requirement
|
32
31
|
none: false
|
33
|
-
requirements:
|
34
|
-
- -
|
35
|
-
- !ruby/object:Gem::Version
|
32
|
+
requirements:
|
33
|
+
- - ! '>='
|
34
|
+
- !ruby/object:Gem::Version
|
36
35
|
version: 0.2.7
|
37
36
|
type: :runtime
|
38
37
|
prerelease: false
|
39
|
-
version_requirements: *
|
40
|
-
- !ruby/object:Gem::Dependency
|
38
|
+
version_requirements: *2156309560
|
39
|
+
- !ruby/object:Gem::Dependency
|
41
40
|
name: yajl-ruby
|
42
|
-
requirement: &
|
41
|
+
requirement: &2156308200 !ruby/object:Gem::Requirement
|
43
42
|
none: false
|
44
|
-
requirements:
|
45
|
-
- -
|
46
|
-
- !ruby/object:Gem::Version
|
43
|
+
requirements:
|
44
|
+
- - ! '>='
|
45
|
+
- !ruby/object:Gem::Version
|
47
46
|
version: 0.7.5
|
48
47
|
type: :runtime
|
49
48
|
prerelease: false
|
50
|
-
version_requirements: *
|
51
|
-
- !ruby/object:Gem::Dependency
|
49
|
+
version_requirements: *2156308200
|
50
|
+
- !ruby/object:Gem::Dependency
|
52
51
|
name: load_path_find
|
53
|
-
requirement: &
|
52
|
+
requirement: &2156306740 !ruby/object:Gem::Requirement
|
54
53
|
none: false
|
55
|
-
requirements:
|
56
|
-
- -
|
57
|
-
- !ruby/object:Gem::Version
|
54
|
+
requirements:
|
55
|
+
- - ! '>='
|
56
|
+
- !ruby/object:Gem::Version
|
58
57
|
version: 0.0.5
|
59
58
|
type: :runtime
|
60
59
|
prerelease: false
|
61
|
-
version_requirements: *
|
62
|
-
- !ruby/object:Gem::Dependency
|
60
|
+
version_requirements: *2156306740
|
61
|
+
- !ruby/object:Gem::Dependency
|
63
62
|
name: oauth
|
64
|
-
requirement: &
|
63
|
+
requirement: &2156297780 !ruby/object:Gem::Requirement
|
65
64
|
none: false
|
66
|
-
requirements:
|
67
|
-
- -
|
68
|
-
- !ruby/object:Gem::Version
|
65
|
+
requirements:
|
66
|
+
- - ! '>='
|
67
|
+
- !ruby/object:Gem::Version
|
69
68
|
version: 0.4.0
|
70
69
|
type: :runtime
|
71
70
|
prerelease: false
|
72
|
-
version_requirements: *
|
73
|
-
- !ruby/object:Gem::Dependency
|
71
|
+
version_requirements: *2156297780
|
72
|
+
- !ruby/object:Gem::Dependency
|
74
73
|
name: rainbow
|
75
|
-
requirement: &
|
74
|
+
requirement: &2156296880 !ruby/object:Gem::Requirement
|
76
75
|
none: false
|
77
|
-
requirements:
|
78
|
-
- -
|
79
|
-
- !ruby/object:Gem::Version
|
80
|
-
version:
|
76
|
+
requirements:
|
77
|
+
- - ! '>='
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: '0'
|
81
80
|
type: :runtime
|
82
81
|
prerelease: false
|
83
|
-
version_requirements: *
|
84
|
-
- !ruby/object:Gem::Dependency
|
82
|
+
version_requirements: *2156296880
|
83
|
+
- !ruby/object:Gem::Dependency
|
85
84
|
name: growl
|
86
|
-
requirement: &
|
85
|
+
requirement: &2156296380 !ruby/object:Gem::Requirement
|
87
86
|
none: false
|
88
|
-
requirements:
|
89
|
-
- -
|
90
|
-
- !ruby/object:Gem::Version
|
91
|
-
version:
|
87
|
+
requirements:
|
88
|
+
- - ! '>='
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: '0'
|
92
91
|
type: :runtime
|
93
92
|
prerelease: false
|
94
|
-
version_requirements: *
|
95
|
-
- !ruby/object:Gem::Dependency
|
93
|
+
version_requirements: *2156296380
|
94
|
+
- !ruby/object:Gem::Dependency
|
96
95
|
name: json
|
97
|
-
requirement: &
|
96
|
+
requirement: &2156295760 !ruby/object:Gem::Requirement
|
98
97
|
none: false
|
99
|
-
requirements:
|
100
|
-
- -
|
101
|
-
- !ruby/object:Gem::Version
|
102
|
-
version:
|
98
|
+
requirements:
|
99
|
+
- - ! '>='
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '0'
|
103
102
|
type: :runtime
|
104
103
|
prerelease: false
|
105
|
-
version_requirements: *
|
106
|
-
- !ruby/object:Gem::Dependency
|
104
|
+
version_requirements: *2156295760
|
105
|
+
- !ruby/object:Gem::Dependency
|
107
106
|
name: eventmachine
|
108
|
-
requirement: &
|
107
|
+
requirement: &2156295080 !ruby/object:Gem::Requirement
|
109
108
|
none: false
|
110
|
-
requirements:
|
111
|
-
- -
|
112
|
-
- !ruby/object:Gem::Version
|
109
|
+
requirements:
|
110
|
+
- - ! '>='
|
111
|
+
- !ruby/object:Gem::Version
|
113
112
|
version: 0.12.10
|
114
113
|
type: :runtime
|
115
114
|
prerelease: false
|
116
|
-
version_requirements: *
|
117
|
-
- !ruby/object:Gem::Dependency
|
115
|
+
version_requirements: *2156295080
|
116
|
+
- !ruby/object:Gem::Dependency
|
118
117
|
name: em-http-request
|
119
|
-
requirement: &
|
118
|
+
requirement: &2156294300 !ruby/object:Gem::Requirement
|
120
119
|
none: false
|
121
|
-
requirements:
|
122
|
-
- -
|
123
|
-
- !ruby/object:Gem::Version
|
120
|
+
requirements:
|
121
|
+
- - ! '>='
|
122
|
+
- !ruby/object:Gem::Version
|
124
123
|
version: 0.2.7
|
125
124
|
type: :runtime
|
126
125
|
prerelease: false
|
127
|
-
version_requirements: *
|
128
|
-
- !ruby/object:Gem::Dependency
|
126
|
+
version_requirements: *2156294300
|
127
|
+
- !ruby/object:Gem::Dependency
|
129
128
|
name: yajl-ruby
|
130
|
-
requirement: &
|
129
|
+
requirement: &2156293500 !ruby/object:Gem::Requirement
|
131
130
|
none: false
|
132
|
-
requirements:
|
133
|
-
- -
|
134
|
-
- !ruby/object:Gem::Version
|
131
|
+
requirements:
|
132
|
+
- - ! '>='
|
133
|
+
- !ruby/object:Gem::Version
|
135
134
|
version: 0.7.5
|
136
135
|
type: :runtime
|
137
136
|
prerelease: false
|
138
|
-
version_requirements: *
|
139
|
-
- !ruby/object:Gem::Dependency
|
137
|
+
version_requirements: *2156293500
|
138
|
+
- !ruby/object:Gem::Dependency
|
140
139
|
name: load_path_find
|
141
|
-
requirement: &
|
140
|
+
requirement: &2156291900 !ruby/object:Gem::Requirement
|
142
141
|
none: false
|
143
|
-
requirements:
|
144
|
-
- -
|
145
|
-
- !ruby/object:Gem::Version
|
142
|
+
requirements:
|
143
|
+
- - ! '>='
|
144
|
+
- !ruby/object:Gem::Version
|
146
145
|
version: 0.0.5
|
147
146
|
type: :runtime
|
148
147
|
prerelease: false
|
149
|
-
version_requirements: *
|
150
|
-
- !ruby/object:Gem::Dependency
|
148
|
+
version_requirements: *2156291900
|
149
|
+
- !ruby/object:Gem::Dependency
|
151
150
|
name: oauth
|
152
|
-
requirement: &
|
151
|
+
requirement: &2156290840 !ruby/object:Gem::Requirement
|
153
152
|
none: false
|
154
|
-
requirements:
|
155
|
-
- -
|
156
|
-
- !ruby/object:Gem::Version
|
153
|
+
requirements:
|
154
|
+
- - ! '>='
|
155
|
+
- !ruby/object:Gem::Version
|
157
156
|
version: 0.4.0
|
158
157
|
type: :runtime
|
159
158
|
prerelease: false
|
160
|
-
version_requirements: *
|
159
|
+
version_requirements: *2156290840
|
161
160
|
description: Eventmachine-based Twitter Userstream client
|
162
161
|
email: noah@involver.com
|
163
|
-
executables:
|
162
|
+
executables:
|
164
163
|
- chirp_growl
|
165
164
|
extensions: []
|
166
|
-
|
167
165
|
extra_rdoc_files: []
|
168
|
-
|
169
|
-
files:
|
166
|
+
files:
|
170
167
|
- Gemfile
|
171
168
|
- Gemfile.lock
|
172
169
|
- Rakefile
|
@@ -190,30 +187,26 @@ files:
|
|
190
187
|
has_rdoc: true
|
191
188
|
homepage: https://github.com/nhorton/twitter-userstream
|
192
189
|
licenses: []
|
193
|
-
|
194
190
|
post_install_message:
|
195
191
|
rdoc_options: []
|
196
|
-
|
197
|
-
require_paths:
|
192
|
+
require_paths:
|
198
193
|
- lib
|
199
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
194
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
200
195
|
none: false
|
201
|
-
requirements:
|
202
|
-
- -
|
203
|
-
- !ruby/object:Gem::Version
|
204
|
-
version:
|
205
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
196
|
+
requirements:
|
197
|
+
- - ! '>='
|
198
|
+
- !ruby/object:Gem::Version
|
199
|
+
version: '0'
|
200
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
206
201
|
none: false
|
207
|
-
requirements:
|
208
|
-
- -
|
209
|
-
- !ruby/object:Gem::Version
|
210
|
-
version:
|
202
|
+
requirements:
|
203
|
+
- - ! '>='
|
204
|
+
- !ruby/object:Gem::Version
|
205
|
+
version: '0'
|
211
206
|
requirements: []
|
212
|
-
|
213
207
|
rubyforge_project:
|
214
208
|
rubygems_version: 1.6.2
|
215
209
|
signing_key:
|
216
210
|
specification_version: 3
|
217
211
|
summary: Eventmachine-based Twitter Userstream client
|
218
212
|
test_files: []
|
219
|
-
|