Class: ShareLinuxFr
- Inherits:
-
Object
- Object
- ShareLinuxFr
- Defined in:
- lib/share-linuxfr.rb,
lib/share-linuxfr/version.rb
Constant Summary collapse
- VERSION =
"0.1.6"
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(base_url) ⇒ ShareLinuxFr
constructor
A new instance of ShareLinuxFr.
- #start ⇒ Object
- #tweet(news) ⇒ Object
Constructor Details
#initialize(base_url) ⇒ ShareLinuxFr
Returns a new instance of ShareLinuxFr.
29 30 31 32 |
# File 'lib/share-linuxfr.rb', line 29 def initialize(base_url) @redis = Redis.new @base_url = base_url end |
Class Method Details
.configure_twitter(options) ⇒ Object
20 21 22 23 24 25 26 27 |
# File 'lib/share-linuxfr.rb', line 20 def self.configure_twitter() @@client = Twitter::REST::Client.new do |config| config.consumer_key = ['consumer_key'] config.consumer_secret = ['consumer_secret'] config.access_token = ['access_token'] config.access_token_secret = ['access_token_secret'] end end |
.run(base_url) ⇒ Object
12 13 14 15 16 17 18 |
# File 'lib/share-linuxfr.rb', line 12 def self.run(base_url) instance = self.new(base_url) loop do instance.start sleep 1 end end |
Instance Method Details
#start ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/share-linuxfr.rb', line 34 def start @redis.subscribe("news") do |on| on. do |chan,| msg = Yajl::Parser.parse() puts "Publish a new message: #{msg.inspect}" tweet msg end end rescue Errno::ECONNREFUSED => err $stderr.puts "Connection to redis has been lost" end |
#tweet(news) ⇒ Object
46 47 48 49 50 51 52 53 |
# File 'lib/share-linuxfr.rb', line 46 def tweet(news) title = news['title'].slice(0, 115) status = "#{title}#{'…' if title != news['title']} #{@base_url}#{news['id']}" @@client.update status rescue => err puts "Error on twitter: #{err}" puts "\tstatus = #{status.inspect}" end |