(formerly-in-use) A toolkit for assembling XMPP clients and interacting with XMPP servers.
Ruby
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
bin
examples
lib
.gitignore
History.txt
README.markdown
Rakefile
switchboard.gemspec

README.markdown

Switchboard

Switchboard is both a toolkit for assembling XMPP clients as well as a set of command-line tools for interacting with XMPP servers.

Docs

Mailing List

Switchboard Google Group

Getting Started

Install it:

$ sudo gem install switchboard

Install optional dependencies for additional functionality.

OAuth PubSub support:

$ sudo gem install oauth

User Location (XEP-0080) support via Fire Eagle:

$ sudo gem install mojodna-fire-hydrant -s http://gems.github.com

Note: you will need to set up a PubSub subscription to your location via Fire Eagle for this to work.

User Tune (XEP-0118) support via iTunes (on Mac OS X):

$ sudo gem install rb-appscript

Configure it:

$ switchboard config jid jid@example.com
$ switchboard config password pa55word

Settings will be stored in $HOME/.switchboardrc

Run it:

$ switchboard <command> <args>
$ switchboard roster list
$ switchboard roster add fireeagle.com
$ ...

Subscribe to a node using OAuth, overriding default settings:

$ switchboard --jid subscriber@example.com --password pa55word \
    pubsub --oauth \
    --oauth-consumer-key <consumer key> \
    --oauth-consumer-secret <consumer secret> \
    --oauth-token <token> \
    --oauth-token-secret <token secret> \
    --server fireeagle.com \
    --node "/api/0.1/user/<token>" \
    subscribe

Publish iTunes' current track using User Tune (XEP-0118):

$ switchboard --resource switchtunes pep tune

You can do this using a JID that is already online.