## Usage from inside Rails FacebookPublisher.queue :deliver_email_winner, arguments, here ## Facebook Publisher Rails model class FacebookPublisher < Facebooker::Rails::Publisher include ApplicationHelper def self.queue action, args STARLING.set "facebook_actions", { :action => action, :args => args } end # ... end ## Facebook Daemon #!/usr/bin/env ruby require 'rubygems' require 'daemons' require File.dirname(__FILE__) + "/../config/environment" class FacebookDaemon def self.update loop do begin result = STARLING.get("facebook_actions") return unless result puts "got #{ result }" action, args = result[:action], result[:args] puts "running FacebookPublisher.#{action} with #{ args.inspect}" FacebookPublisher.send action, *args rescue Exception => e puts e end end end end ActiveRecord::Base.logger = Logger.new STDOUT Daemons.run_proc("facebook_daemon") do loop do FacebookDaemon.update sleep 1 end end