<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>fire_hydrant.gemspec</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,22 +1,86 @@
-## Fire Hydrant
+# Fire Hydrant
 
-This includes a sample consumer for Fire Eagle's preliminary XMPP pubsub node.
-It does *not* appear to work with Google Talk accounts, but Jabber.org
-accounts seem fine.
+Fire Hydrant is a set of tools for consuming [Fire
+Eagle](http://fireeagle.yahoo.net/ &quot;Fire Eagle&quot;)'s XMPP
+[PubSub](http://xmpp.org/extensions/xep-0060.html &quot;XEP-0060:
+Publish-Subscribe&quot;) feed.
 
-This requires switchboard (github.com/mojodna.net/switchboard) to be installed somewhere in your RUBYLIB.  Both should be gems, but I haven't built the gemspecs for them yet.
+## Getting Started
 
-For Fire Eagle subscriptions to work properly, you'll have to obtain a valid
-OAuth access token and put it in `fire_hydrant.yml` (use `authorize.rb` for this).
+Install it:
 
-You'll also need a General Purpose access token (issued to apps that register
-using 'web' auth) in order to list subscriptions. Before running the consumer,
-you should add 'fireeagle.com' to your roster.
+    $ sudo gem install mojodna-fire_hydrant-s http://gems.github.com
 
-There's also the chance that our pubsub node has gone offline, which won't
-help you with debugging ;-) I did mention that all of this is pre-alpha
-preliminary, etc?
+Configure it:
 
-Please please please let me know how this works for you.
+    $ cp fire_hydrant.yml.sample fire_hydrant.yml
+    $ vi fire_hydrant.yml
 
-email/im: seth@mojodna.net
+_Switchboard settings are not presently used._
+
+Configure switchboard:
+
+    $ switchboard config jid jid@example.com
+    $ switchboard config password pa55word
+    $ switchboard config oauth.consumer_key asdf
+    $ switchboard config oauth.consumer_secret qwerty
+    $ switchboard config oauth.token asdf
+    $ switchboard config oauth.token_secret qwerty
+    $ switchboard config oauth.general_token asdf
+    $ switchboard config oauth.general_token_secret qwerty
+    $ switchboard config pubsub.server fireeagle.com
+
+Subscribe to location updates corresponding to the configured token:
+
+    $ switchboard pubsub subscribe
+
+Check subscriptions:
+
+    $ switchboard pubsub subscriptions
+
+Run it:
+
+    $ examples/fire_eagle_consumer.rb
+
+If you'd like to unsubscribe:
+
+    $ switchboard pubsub unsubscribe
+
+## Notes and Gotchas
+
+Subscribing to / unsubscribing from nodes is an awkward process at the moment,
+as switchboard must be re-configured with each OAuth token/secret pair that
+you wish to subscribe to.
+
+If you need to authorize your application to receive updates, you can add your
+OAuth consumer key to _fire\_hydrant.yml_ and run:
+
+    $ examples/authorize.rb
+
+You can then add the token and secret to your switchboard configuration in
+order to subscribe.
+
+Google Talk accounts do not appear to work, but Jabber.org accounts seem to
+work fine. (If you plan to use this in production, you should be running your
+own XMPP server and should **not** use Jabber.org.)
+
+## Getting Help
+
+Your best bet for help is to post a message to the Fire Eagle Yahoo! Group:
+[http://tech.groups.yahoo.com/group/fireeagle/](http://tech.groups.yahoo.com/group/fireeagle/
+&quot;Fire Eagle Yahoo! Group&quot;)
+
+## Google Earth Integration
+
+If you're on a Mac, install [Google Earth](http://earth.google.com/ &quot;Google
+Earth&quot;) and
+[rb-appscript](http://appscript.sourceforge.net/rb-appscript/index.html &quot;Ruby
+Appscript&quot;):
+
+    $ sudo gem install rb-appscript
+
+Start Google Earth and run:
+
+    $ examples/fire_eagle_visualizer.rb
+
+To see your users' locations in real-time as they change.</diff>
      <filename>README.markdown</filename>
    </modified>
    <modified>
      <diff>@@ -9,15 +9,15 @@ require 'fireeagle'
 # read the configuration
 config = YAML.load(open(&quot;fire_hydrant.yml&quot;).read)
 
-if config.has_key?(&quot;oauth_token&quot;) &amp;&amp; config.has_key?(&quot;oauth_token_secret&quot;)
+if config.has_key?(&quot;oauth.token&quot;) &amp;&amp; config.has_key?(&quot;oauth.token_secret&quot;)
   puts &quot;Application has already been authorized.&quot;
   exit
 end
 
 # initialize a Fire Eagle client
 client = FireEagle::Client.new \
-  :consumer_key =&gt; config[&quot;oauth_consumer_key&quot;],
-  :consumer_secret =&gt; config[&quot;oauth_consumer_secret&quot;]
+  :consumer_key    =&gt; config[&quot;oauth.consumer_key&quot;],
+  :consumer_secret =&gt; config[&quot;oauth.consumer_secret&quot;]
 
 ## Step 1 - Get a request token
 </diff>
      <filename>examples/authorize.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,3 +1,7 @@
 jid: client@xmpp-server
 password: password
 pubsub.server: fireeagle.com
+
+# for authorization
+oauth.consumer_key: asdf
+oauth.consumer_secret: qwerty</diff>
      <filename>fire_hydrant.yml.sample</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>ad9087064447582a4ca87e26607d933a15d397d2</id>
    </parent>
  </parents>
  <author>
    <name>Seth Fitzsimmons</name>
    <email>seth@mojodna.net</email>
  </author>
  <url>http://github.com/mojodna/fire-hydrant/commit/c95cc08df3709be6e0ddaba1bcff296eb323405b</url>
  <id>c95cc08df3709be6e0ddaba1bcff296eb323405b</id>
  <committed-date>2008-11-13T11:42:34-08:00</committed-date>
  <authored-date>2008-11-13T11:42:34-08:00</authored-date>
  <message>updated docs, gem-ified</message>
  <tree>3709f38db7a69baac688327dbf3b170bba4dfa3b</tree>
  <committer>
    <name>Seth Fitzsimmons</name>
    <email>seth@mojodna.net</email>
  </committer>
</commit>
