· 7 years ago · Feb 21, 2018, 01:28 AM
1#!/usr/bin/env ruby
2require '/Users/mattb/Work/Dopplr/code/dopplr/config/environment'
3require 'fire_hydrant'
4config = YAML.load(File.read("fire_hydrant.yml"))
5
6hydrant = FireHydrant.new(config, false)
7hydrant.jack!(OAuthPubSubJack)
8
9hydrant.on_startup do
10 defer :subscribed, 0 do
11 begin
12 Identity.find(:all, :conditions => ["service = 'fireeagle' and identifier is not null"]).map { |i|
13 puts i.identifier
14 @oauth_token = OAuth::Token.new(i.identifier, i.extra[:secret])
15 [i, pubsub.subscribe_to("/api/0.1/user/#{@oauth_token.token}", @oauth_consumer, @oauth_token)]
16 }
17 rescue Jabber::ServerError => e
18 puts e
19 end
20 end
21
22 # define here or as hydrant.subscriptions_received
23 def subscribed(subs)
24 subs.each { |identity, subscription|
25 if subscription.subscription == :subscribed
26 puts "#{identity.traveller.name}: Subscribe successful."
27 else
28 puts "#{identity.traveller.name}: Subscribe failed!"
29 end
30 }
31 end
32end
33
34hydrant.run!