Commit 0b071d8c807ec9e8feacd7c603f97636461bc19d

Authored by Evandro Junior
1 parent 2de02179

user profile picture embeded in comment

plugins/community_hub/lib/community_hub_plugin/hub.rb
... ... @@ -6,10 +6,10 @@ class CommunityHubPlugin::Hub < Folder
6 6 settings_items :proxy_url, :type => :string, :default => 'http://161.148.1.167:3128' # Remember to use add the port, in case needed.
7 7 settings_items :twitter_enabled, :type => :boolean, :default => false
8 8 settings_items :twitter_hashtags, :type => :string, :default => "participa.br,participabr,arenanetmundial,netmundial"
9   - settings_items :twitter_consumer_key, :type => :string, :default => ""
10   - settings_items :twitter_consumer_secret, :type => :string, :default => ""
11   - settings_items :twitter_access_token, :type => :string, :default => ""
12   - settings_items :twitter_access_token_secret, :type => :string, :default => ""
  9 + settings_items :twitter_consumer_key, :type => :string, :default => ""
  10 + settings_items :twitter_consumer_secret, :type => :string, :default => ""
  11 + settings_items :twitter_access_token, :type => :string, :default => ""
  12 + settings_items :twitter_access_token_secret, :type => :string, :default => ""
13 13 settings_items :facebook_enabled, :type => :boolean, :default => false
14 14 settings_items :facebook_page_id, :type => :string, :default => "participabr"
15 15 settings_items :facebook_pooling_time, :type => :integer, :default => 5 # Time in seconds
... ...
plugins/community_hub/twitter/stream.rb
... ... @@ -10,34 +10,43 @@ def UTF8Filter(string)
10 10 end
11 11  
12 12 def listen_twitter_stream(hub, author_id)
  13 +
13 14 connected = false
  15 + tries = 0
14 16 while !connected
15 17 begin
  18 + tries += 1
16 19 client = Twitter::Streaming::Client.new do |config|
17 20 config.consumer_key = hub.twitter_consumer_key
18 21 config.consumer_secret = hub.twitter_consumer_secret
19 22 config.access_token = hub.twitter_access_token
20 23 config.access_token_secret = hub.twitter_access_token_secret
21 24 end
  25 + puts client.inspect
22 26 connected = true
  27 + tries = 0
23 28 rescue => e
24 29 puts "Error connecting to twitter stream: #{e.inspect}"
25   - sleep 10
  30 + sleep (10 + 2 ** tries)
26 31 end
27 32 end
  33 +
  34 + tries = 0
28 35 while true
29 36 begin
  37 + tries += 1
30 38 client.filter(:track => hub.twitter_hashtags) do |object|
31 39 if object.is_a?(Twitter::Tweet)
32   - puts '@' + object.user.screen_name + ' said: ' + object.text
  40 +# puts '@' + object.user.screen_name + ' said: ' + object.text
33 41 # puts object.user.profile_image_url
34 42 comment = Comment.new
35 43 comment.title = 'hub-message-twitter'
36 44 comment.source = hub
37   - comment.body = UTF8Filter(object.text)
  45 + comment.body = UTF8Filter(object.text + "<picture>#{object.user.profile_image_url}</picture>")
38 46 comment.author_id = author_id
39 47 comment.name = UTF8Filter(object.user.screen_name)
40 48 comment.email = 'admin@localhost.local'
  49 + tries = 0
41 50 begin
42 51 comment.save!
43 52 rescue => e
... ... @@ -47,7 +56,7 @@ def listen_twitter_stream(hub, author_id)
47 56 end
48 57 rescue => e
49 58 puts "Erro lendo stream #{e.inspect}"
50   - sleep 10
  59 + sleep (10 + 2 ** tries)
51 60 break
52 61 end
53 62 end
... ...