Twitter 轨道&x2B;TweetStream gem重新连接

Twitter 轨道&x2B;TweetStream gem重新连接,twitter,streaming,stream,backgroundworker,tweets,Twitter,Streaming,Stream,Backgroundworker,Tweets,嘿,我刚刚测试了TweetStream gem 例如: TweetStream::Client.new('myuser','mypass').track('ruby', 'rails') do |status| puts "[#{status.user.screen_name}] #{status.text}" end 这个例子很有效 问题: 我尝试重新启动我的路由器(互联网连接丢失),之后没有新消息到达。有人能给我解释一下这种行为吗 我测试了守护进程。如果一天或更长时间没有可用的in

嘿,我刚刚测试了TweetStream gem

例如:

TweetStream::Client.new('myuser','mypass').track('ruby', 'rails') do |status|  
 puts "[#{status.user.screen_name}] #{status.text}" 
end
这个例子很有效

问题:

  • 我尝试重新启动我的路由器(互联网连接丢失),之后没有新消息到达。有人能给我解释一下这种行为吗
  • 我测试了守护进程。如果一天或更长时间没有可用的internet连接,会发生什么情况?它会自动重新连接吗
  • 我喜欢rufusgem(用于后台处理)。我是否可以以某种方式将此代码与Rufus集成,以便检查流程是否仍然处于活动状态
  • 我的重新连接解决方案(config/initializers/tweet_stream.rb):


    谢谢

    你有没有可能解决这个问题?我也在试着这么做。谢谢你有机会解决这个问题吗?我也在试着这么做。谢谢
    client = nil
    scheduler = Rufus::Scheduler.start_new
    scheduler.every '30min', :first_in => '1s' do |job|
      client.stop rescue nil
      client = TweetStream::Client.new('user','pass').on_error do |message|
        Rails.logger.info "[Rufus][#{Time.now}] TweetStream error: #{message}"
      end.track('love') do |status|
        Rails.logger.error "[TweetStream] Status: #{status.id}"
      end
    end