lib/tasks/presence/synchronize.rake in social_stream-presence-0.0.10 vs lib/tasks/presence/synchronize.rake in social_stream-presence-0.0.12

- old
+ new

@@ -2,128 +2,21 @@ desc 'Synchronize Xmpp Server with Social Stream Rails Application' task :synchronize => [ 'presence:synchronize:connections', 'presence:synchronize:rosters' ] namespace :synchronize do - desc "Synchronize user presence." + desc "Synchronize user presence" task :connections => :environment do puts "Starting presence:synchronize:connections" - - begin - #XMPP DOMAIN - domain = SocialStream::Presence.domain - #PASSWORD - password= SocialStream::Presence.password - #SS Username - ss_name = SocialStream::Presence.social_stream_presence_username - - ss_sid = ss_name + "@" + domain - client = Jabber::Client.new(Jabber::JID.new(ss_sid)) - client.connect - client.auth(password) - - msg = Jabber::Message::new(ss_sid, "Synchronize") - msg.type=:chat - client.send(msg) - client.close() - - rescue Exception => e - case e - when Errno::ECONNREFUSED - desc "Reset connected users when XMMP Server Down" - puts "Connection to XMPP Server refused: Reset Connected Users" - users = User.find_all_by_connected(true) - users.each do |user| - user.connected = false - user.save! - end - else - puts "Unknown exception: #{e.to_s}" - return - end - end - - puts "Synchronization complete" + SocialStream::Presence::XmppServerOrder::synchronize_presence + puts "Synchronization complete" end desc "Synchronize Xmpp Server database with Social Stream Rails Application database" desc "Remove all rosters and populate rosters from Social Stream data." task :rosters => :environment do puts "Starting presence:synchronize:rosters" - - - if SocialStream::Presence.remote_xmpp_server - - #XMPP DOMAIN - domain = SocialStream::Presence.domain - #PASSWORD - password= SocialStream::Presence.password - #SS Username - ss_name = SocialStream::Presence.social_stream_presence_username - ss_sid = ss_name + "@" + domain - - puts "Connecting to Xmpp Server" - client = Jabber::Client.new(Jabber::JID.new(ss_sid)) - client.connect - puts "Authentication..." - client.auth(password) - puts "Connected to Xmpp Server" - - puts "Remove all rosters" - msg = Jabber::Message::new(ss_sid, "SynchronizeRosters") - msg.type=:chat - client.send(msg) - - - puts "Populate rosters" - users = User.all - checkedUsers = [] - - users.each do |user| - checkedUsers << user.slug - contacts = user.contact_actors(:type=>:user) - contacts.each do |contact| - unless checkedUsers.include?(contact.slug) - user_sid = user.slug + "@" + domain - buddy_sid = contact.slug + "@" + domain - msg = Jabber::Message::new(ss_sid, "SetRosterForBidirectionalTie&" + user_sid + "&" + buddy_sid + "&" + user.name + "&" + contact.name) - msg.type=:chat - client.send(msg) - end - end - end - - puts "Synchronization complete" - puts "Closing connection" - client.close() - puts "Connection closing" - - else - #SocialStream::Presence.remote_xmpp_server=false - - puts "Removing all rosters" - system SocialStream::Presence.scripts_path + "/emanagement removeAllRosters" - puts "Rosters removed" - - puts "Populate rosters" - users = User.all - checkedUsers = [] - - users.each do |user| - checkedUsers << user.slug - contacts = user.contact_actors(:type=>:user) - contacts.each do |contact| - unless checkedUsers.include?(contact.slug) - user_nick = user.name.split(" ")[0] - buddy_nick = contact.name.split(" ")[0] - command = SocialStream::Presence.scripts_path + "/emanagement setBidireccionalBuddys " + user.slug + " " + contact.slug + " " + user_nick + " " + buddy_nick - puts command - system command - end - end - end - - end - + SocialStream::Presence::XmppServerOrder::synchronize_rosters + puts "Rosters Synchronization complete" end end end