· 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 do
11 begin
12 Identity.find(:all, :conditions => ["service = 'fireeagle' and identifier is not null"]).map { |i|
13 puts i.identifier
14 @config[:oauth_token] = i.identifier
15 @config[:oauth_token_secret] = i.extra[:secret]
16 [i, pubsub.subscribe_to("/api/0.1/user/#{@oauth_token.token}", @oauth_consumer, @oauth_token)]
17 }
18 rescue Jabber::ServerError => e
19 puts e
20 end
21 end
22
23 # define here or as hydrant.subscriptions_received
24 def subscribed(subs)
25 subs.each { |identity, subscription|
26 if subscription.subscription == :subscribed
27 puts "#{identity.traveller.name}: Subscribe successful."
28 else
29 puts "#{identity.traveller.name}: Subscribe failed!"
30 end
31 }
32 end
33end
34
35hydrant.run!