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