instafavs 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/README.textile ADDED
@@ -0,0 +1,30 @@
1
+ h1. instafavs
2
+
3
+ by Brad Bollenbach
4
+
5
+ instafavs extracts links from favorited tweets and sends them to Instapaper.
6
+
7
+ h2. Install
8
+
9
+ <pre>
10
+ $ instafavs --configure
11
+ Twitter username: 30sleeps
12
+ Instapaper username: bradb@30sleeps.com
13
+ Instapaper password: somepass
14
+ Configuration saved successfully.
15
+ </pre>
16
+
17
+ The install instafavs into your crontab:
18
+
19
+ <pre>
20
+ $ crontab -e
21
+ </pre>
22
+
23
+ To check your Twitter feed every 5 minutes for new favorites:
24
+
25
+ <pre>
26
+ # This is what works for my rvm-based setup!
27
+ */5 * * * * bash --login -c instafavs
28
+ </pre>
29
+
30
+ Please email any feedback or bug reports to "bradb@30sleeps.com":mailto:bradb@30sleeps.com.
data/bin/instafavs CHANGED
@@ -6,8 +6,11 @@ require File.join(File.expand_path(File.dirname(__FILE__)), "..", "lib", "instaf
6
6
 
7
7
  $verbose = false
8
8
 
9
- def verbose(msg)
10
- puts msg if $verbose
9
+ def verbose(msg, level=1)
10
+ if $verbose
11
+ puts "* #{msg}" if level == 1
12
+ puts " -> #{msg}" if level == 2
13
+ end
11
14
  end
12
15
 
13
16
  def send_links_from_fav_tweets_to_instapaper
@@ -16,15 +19,21 @@ def send_links_from_fav_tweets_to_instapaper
16
19
  seen_fav_ids = Set.new
17
20
  favorites = Twitter.favorites(Instafavs::Config.twitter_username)
18
21
  verbose("found #{favorites.size} latest favorites for user #{Instafavs::Config.twitter_username}")
19
- favorites.each do |f|
22
+ favorites.each_with_index do |f, i|
20
23
  seen_fav_ids << f.id_str
21
- next if Instafavs::Config.last_seen_fav_ids.include?(f.id_str)
24
+ if Instafavs::Config.last_seen_fav_ids.include?(f.id_str)
25
+ verbose("skipping ##{i + 1} '#{f.text}', already seen")
26
+ next
27
+ end
28
+ verbose("scanning #{f.text} for urls to extract")
22
29
  f.text.scan(%r{http(?:s?)://[^ ]+}).each do |url|
30
+ verbose("found #{url}, sending to instapaper", 2)
23
31
  HTTParty.post("https://www.instapaper.com/api/add",
24
32
  :query => { :url => url, :username => Instafavs::Config.instapaper_username,
25
33
  :password => Instafavs::Config.instapaper_password })
26
34
  end
27
35
  end
36
+ verbose("updating config with #{seen_fav_ids.size} latest seen ids")
28
37
  Instafavs::Config.update_last_seen_fav_ids!(seen_fav_ids)
29
38
  end
30
39
 
@@ -46,7 +55,7 @@ $verbose = options[:verbose]
46
55
 
47
56
  if options[:configure]
48
57
  Instafavs::Config.save!(collect_config_info)
49
- puts "Your configuration has been saved."
58
+ puts "Configuration saved successfully."
50
59
  else
51
60
  send_links_from_fav_tweets_to_instapaper
52
61
  end
data/instafavs.gemspec CHANGED
@@ -15,19 +15,7 @@ Gem::Specification.new do |s|
15
15
  s.post_install_message = <<SETUP
16
16
  ********************************************************************************
17
17
 
18
- To setup instafavs, follow these steps:
19
-
20
- 1. Run instafavs --configure. Fill in the info required.
21
-
22
- 2. Install instafavs into your crontab, e.g.
23
-
24
- $ crontab -e
25
-
26
- to check your Twitter feed every 5 minutes for new favorites, add this line:
27
-
28
- */5 * * * * /path/to/instafavs
29
-
30
- Please email any feedback or bug reports to bradb@30sleeps.com.
18
+ To install instafavs, please see docs at: https://github.com/bradb/instafavs
31
19
 
32
20
  ********************************************************************************
33
21
  SETUP
@@ -1,3 +1,3 @@
1
1
  module Instafavs
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 0
8
- - 1
9
- version: 0.0.1
8
+ - 2
9
+ version: 0.0.2
10
10
  platform: ruby
11
11
  authors:
12
12
  - Brad Bollenbach
@@ -59,7 +59,7 @@ extra_rdoc_files: []
59
59
  files:
60
60
  - .gitignore
61
61
  - Gemfile
62
- - README
62
+ - README.textile
63
63
  - Rakefile
64
64
  - bin/instafavs
65
65
  - instafavs.gemspec
@@ -72,19 +72,7 @@ licenses: []
72
72
  post_install_message: |
73
73
  ********************************************************************************
74
74
 
75
- To setup instafavs, follow these steps:
76
-
77
- 1. Run instafavs --configure. Fill in the info required.
78
-
79
- 2. Install instafavs into your crontab, e.g.
80
-
81
- $ crontab -e
82
-
83
- to check your Twitter feed every 5 minutes for new favorites, add this line:
84
-
85
- */5 * * * * /path/to/instafavs
86
-
87
- Please email any feedback or bug reports to bradb@30sleeps.com.
75
+ To install instafavs, please see docs at: https://github.com/bradb/instafavs
88
76
 
89
77
  ********************************************************************************
90
78
 
data/README DELETED
@@ -1 +0,0 @@
1
- Extract links from favorited tweets and send them to Instapaper.