twitter_ebooks 3.0.6 → 3.0.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8a1690e476b3e3374a0a63bd9bf90aa0736cbfe2
4
- data.tar.gz: ca5b19da54cdaef4ca5c263c6c360fdb7fc3829f
3
+ metadata.gz: 47bafb2a17dfcb9baee37d68eb43c063cad66da6
4
+ data.tar.gz: 2fa6c381e4023bd7069d64120cc9330e225fe7bd
5
5
  SHA512:
6
- metadata.gz: 064618e7118a6a1c7e010d8b267c71fa4748f6a1b1ddcae84c6dd3c9ea93588074784fa75ab9b5e9424c2525f36cc32cfd31997bd6122f1438e52d9ffc849afc
7
- data.tar.gz: cb38f8d6ee1ecaa00dd482ff6aa6117c8cb0ca4571b354542a0147e1f289668bd692b06827ff99f156395f3810cb41f87d7eb6fc6b53acc096aa894abdd6ef42
6
+ metadata.gz: 00827d01c020a6d68c086c6624f9388a3e3b91fb16e5da5964cc78356f16fa3bd1cce4001309b8bdf4456d905776b68df30a0304f2b0e59b83448bb25ecda0c1
7
+ data.tar.gz: 3e8a2c6b49ab16f031cee42a86a8b8b32c0f566ed76f4cdab5c273cf7d72685f3cd5b0129c6f5904f43d03f09e6500a254cbf76930e1d1b112e4f0eb8c315d79
@@ -41,7 +41,7 @@ module Ebooks
41
41
  # We want to avoid spamming non-participating users
42
42
  def can_include?(username)
43
43
  @tweets.length <= 4 ||
44
- !@tweets[-4..-1].select { |t| t.user.screen_name.downcase == username.downcase }.empty?
44
+ !@tweets.select { |t| t.user.screen_name.downcase == username.downcase }.empty?
45
45
  end
46
46
  end
47
47
 
@@ -257,10 +257,17 @@ module Ebooks
257
257
  log "DM from @#{ev.sender.screen_name}: #{ev.text}"
258
258
  fire(:message, ev)
259
259
 
260
- elsif ev.respond_to?(:name) && ev.name == :follow
261
- return if ev.source.screen_name.downcase == @username.downcase
262
- log "Followed by #{ev.source.screen_name}"
263
- fire(:follow, ev.source)
260
+ elsif ev.respond_to?(:name)
261
+ if ev.name == :follow
262
+ return if ev.source.screen_name.downcase == @username.downcase
263
+ log "Followed by #{ev.source.screen_name}"
264
+ fire(:follow, ev.source)
265
+
266
+ elsif ev.name == :favorite || ev.name == :unfavorite
267
+ return if ev.source.screen_name.downcase == @username.downcase # Ignore our own favorites
268
+ log "@#{ev.source.screen_name} #{ev.name.to_s}d: #{ev.target_object.text}"
269
+ fire(ev.name, ev.source, ev.target_object)
270
+ end
264
271
 
265
272
  elsif ev.is_a? Twitter::Tweet
266
273
  return unless ev.text # If it's not a text-containing tweet, ignore it
@@ -427,7 +434,7 @@ module Ebooks
427
434
  # @param user [String] username or user id
428
435
  def unfollow(user, *args)
429
436
  log "Unfollowing #{user}"
430
- twiter.unfollow(user, *args)
437
+ twitter.unfollow(user, *args)
431
438
  end
432
439
 
433
440
  # Tweet something
@@ -208,7 +208,7 @@ module Ebooks
208
208
  # Generate some text
209
209
  # @param limit [Integer] available characters
210
210
  # @param generator [SuffixGenerator, nil]
211
- # @param retry_limit [Integer] how many times to retry on duplicates
211
+ # @param retry_limit [Integer] how many times to retry on invalid tweet
212
212
  # @return [String]
213
213
  def make_statement(limit=140, generator=nil, retry_limit=10)
214
214
  responding = !generator.nil?
@@ -1,3 +1,3 @@
1
1
  module Ebooks
2
- VERSION = "3.0.6"
2
+ VERSION = "3.0.7"
3
3
  end
data/skeleton/bots.rb CHANGED
@@ -46,6 +46,11 @@ class MyBot < Ebooks::Bot
46
46
  # Reply to a tweet in the bot's timeline
47
47
  # reply(tweet, "nice tweet")
48
48
  end
49
+
50
+ def on_favorite(user, tweet)
51
+ # Follow user who just favorited bot's tweet
52
+ # follow(user.screen_name)
53
+ end
49
54
  end
50
55
 
51
56
  # Make a MyBot and attach it to an account
@@ -23,7 +23,6 @@ Gem::Specification.new do |gem|
23
23
  gem.add_development_dependency 'yard'
24
24
 
25
25
  gem.add_runtime_dependency 'twitter', '~> 5.0'
26
- gem.add_runtime_dependency 'eventmachine', '~> 1.0.3'
27
26
  gem.add_runtime_dependency 'rufus-scheduler'
28
27
  gem.add_runtime_dependency 'gingerice'
29
28
  gem.add_runtime_dependency 'htmlentities'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twitter_ebooks
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.6
4
+ version: 3.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jaiden Mispy
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-15 00:00:00.000000000 Z
11
+ date: 2015-01-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -108,20 +108,6 @@ dependencies:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
110
  version: '5.0'
111
- - !ruby/object:Gem::Dependency
112
- name: eventmachine
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - "~>"
116
- - !ruby/object:Gem::Version
117
- version: 1.0.3
118
- type: :runtime
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - "~>"
123
- - !ruby/object:Gem::Version
124
- version: 1.0.3
125
111
  - !ruby/object:Gem::Dependency
126
112
  name: rufus-scheduler
127
113
  requirement: !ruby/object:Gem::Requirement
@@ -292,7 +278,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
292
278
  version: '0'
293
279
  requirements: []
294
280
  rubyforge_project:
295
- rubygems_version: 2.2.2
281
+ rubygems_version: 2.4.5
296
282
  signing_key:
297
283
  specification_version: 4
298
284
  summary: Markov chains for all your friends~