ruboty-twitter 0.0.6 → 0.0.7

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 70269865bf64865ae5e2dad9abac850c9c4eac9a
4
- data.tar.gz: acf427c2df9e0e82ac7cb762ddfd84b4fcae31dd
3
+ metadata.gz: bcd89760887aa4fc864d13f851470a28bba23433
4
+ data.tar.gz: 5ecb4bad1de70cdcb57d2d1ace44088a014cbf76
5
5
  SHA512:
6
- metadata.gz: 2524898473cab1ab03594ad69cf883cb8ff78637eed709694c102d0fb927b10c96becce4fdbda2947639dc197cf3cd6110c41848e22b359759bcea36e77c2788
7
- data.tar.gz: 896a63c330c12ec9de1b79772abba3b5aecef4c8998d70e01664504509f9a540c37e2aa9adae078c9da5de075654e44d02513dd9a81561d74a4773e493b5a301
6
+ metadata.gz: 438c41b94822053d118a28a4a9fa4315ec5cc3b50ca119f686f42d31434c6d35f1e2481e784d8b3d7f5a5db2fff3510042b9a83862c9360d93ae2ec36d692764
7
+ data.tar.gz: ce1e666456c9f3a9a73c56fb8ff0c70ada9782222c67d259e88d3e317c73c5f5320e1ce5c2ab6de6db345975a3ef3b9d9d9f52087d0c8156f97efd0f5afd8d03
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ ## 0.0.7
2
+ - Add follow-back option
3
+
1
4
  ## 0.0.6
2
5
  - Add debug message about running
3
6
 
data/README.md CHANGED
@@ -9,8 +9,9 @@ gem "ruboty-twitter"
9
9
 
10
10
  ## ENV
11
11
  ```
12
- TWITTER_CONSUMER_KEY - Twitter consumer key (a.k.a. API key)
13
- TWITTER_CONSUMER_SECRET - Twitter consumer secret (a.k.a. API secret)
14
12
  TWITTER_ACCESS_TOKEN - Twitter access token
15
13
  TWITTER_ACCESS_TOKEN_SECRET - Twitter access token secret
14
+ TWITTER_CONSUMER_KEY - Twitter consumer key (a.k.a. API key)
15
+ TWITTER_CONSUMER_SECRET - Twitter consumer secret (a.k.a. API secret)
16
+ TWITTER_AUTO_FOLLOW_BACK - Pass 1 to follow back followers (optional)
16
17
  ```
@@ -7,10 +7,11 @@ module Ruboty
7
7
  class Twitter < Base
8
8
  include Mem
9
9
 
10
- env :TWITTER_CONSUMER_KEY, "Twitter consumer key (a.k.a. API key)"
11
- env :TWITTER_CONSUMER_SECRET, "Twitter consumer secret (a.k.a. API secret)"
12
10
  env :TWITTER_ACCESS_TOKEN, "Twitter access token"
13
11
  env :TWITTER_ACCESS_TOKEN_SECRET, "Twitter access token secret"
12
+ env :TWITTER_AUTO_FOLLOW_BACK, "Pass 1 to follow back followers (optional)", optional: true
13
+ env :TWITTER_CONSUMER_KEY, "Twitter consumer key (a.k.a. API key)"
14
+ env :TWITTER_CONSUMER_SECRET, "Twitter consumer secret (a.k.a. API secret)"
14
15
 
15
16
  def run
16
17
  Ruboty.logger.debug("#{self.class}##{__method__} started")
@@ -25,16 +26,28 @@ module Ruboty
25
26
 
26
27
  private
27
28
 
29
+ def enabled_to_auto_follow_back?
30
+ ENV["TWITTER_AUTO_FOLLOW_BACK"] == "1"
31
+ end
32
+
28
33
  def listen
29
- stream.user do |tweet|
30
- case tweet
34
+ stream.user do |message|
35
+ case message
31
36
  when ::Twitter::Tweet
32
- Ruboty.logger.debug("@#{tweet.user.screen_name}: #{tweet.text}")
37
+ Ruboty.logger.debug("#{message.user.screen_name} tweeted #{message.text.inspect}")
33
38
  robot.receive(
34
- body: tweet.text,
35
- from: tweet.user.screen_name,
36
- tweet: tweet
39
+ body: message.text,
40
+ from: message.user.screen_name,
41
+ tweet: message
37
42
  )
43
+ when ::Twitter::Streaming::Event
44
+ if message.name == :follow
45
+ Ruboty.logger.debug("#{message.source.screen_name} followed #{message.target.screen_name}")
46
+ if enabled_to_auto_follow_back? && message.target.screen_name == robot.name
47
+ Ruboty.logger.debug("Trying to follow back #{message.source.screen_name}")
48
+ client.follow(message.source.screen_name)
49
+ end
50
+ end
38
51
  end
39
52
  end
40
53
  end
@@ -1,5 +1,5 @@
1
1
  module Ruboty
2
2
  module Twitter
3
- VERSION = "0.0.6"
3
+ VERSION = "0.0.7"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruboty-twitter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryo Nakamura
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-15 00:00:00.000000000 Z
11
+ date: 2015-02-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport