Guest User

Untitled

a guest
Apr 22nd, 2018
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.94 KB | None | 0 0
  1. #!/usr/bin/ruby
  2.  
  3. # requires JSON ruby gem ('gem install json') and growlnotify
  4.  
  5. require 'pp'
  6. require 'rubygems'
  7. require 'json'
  8. require 'net/http'
  9.  
  10. user = "name"
  11. password = "password"
  12. path = "/statuses/friends_timeline.json"
  13. timefile = ENV["HOME"]+"/.twittercheck-date"
  14.  
  15. begin
  16. last = Time.parse(open(timefile).read)
  17. rescue
  18. last = Time.now
  19. end
  20. http = Net::HTTP.new("twitter.com", 80)
  21. http.start do |http|
  22. req = Net::HTTP::Get.new(path, {"User-Agent" => "Juo"})
  23. req.basic_auth(user, password)
  24. response = http.request(req)
  25. resp = response.body
  26. data = JSON.parse(resp)
  27. for twitter in data.select { |d| Time.parse(d["created_at"]) > last } do
  28. title = twitter['user']['name'].gsub("'",'`')
  29. msg = twitter['text'].gsub("'",'`')
  30. system "growlnotify -n twitter --image /Users/mattb/bin/twitter.png -m '#{msg}' '#{title}' --sticky"
  31. end
  32. end
  33.  
  34. open(timefile,"w").write(Time.now.to_s)
Add Comment
Please, Sign In to add comment