Readme.markdown in sonos-0.1.1 vs Readme.markdown in sonos-0.2.0

- old
+ new

@@ -24,21 +24,21 @@ $ gem install sonos ``` ## Usage -I'm working on a CLI client. For now, we'll use IRB. You will need the IP address of a speaker (auto-detection is on my list too). To get the IP of a speaker, one of your Sonos controllers and go to "About My Sonos System". +I'm working on a CLI client. For now, we'll use IRB. ``` shell $ gem install sonos $ irb ``` ``` ruby require 'rubygems' require 'sonos' -speaker = Sonos::Speaker('10.0.1.10') # or whatever the IP is +speaker = Sonos.discover ``` Now that we have a reference to the speaker, we can do all kinds of stuff. ``` ruby @@ -47,23 +47,38 @@ speaker.play 'http://assets.samsoff.es/music/Airports.mp3' # Stream! speaker.now_playing speaker.volume speaker.volume = 70 speaker.volume -= 10 +speaker.queue +speaker.save_queue 'Jams' +speaker.clear_queue ``` +### Topology + +`Sonos.discover` finds the first speaker it can. We can get all of the Sonos devices (including Bridges, etc) by calling `speaker.topology`. This is going to get refactored a bit. Right now everything is nested under speaker which is kinda messy and confusing. + +### CLI + +There is a very limited CLI right now. You can run `sonos discover` to get the IP of one of your devices. Run `sonos discover --all` to get all of them. + ## To Do +* Refactor all of the things +* Nonblocking calls with Celluloid::IO +* List other speakers * Loudness -* Party Mode -* Join -* Line-in +* Alarm clock +* Group management + * Party Mode + * Join +* Line-in (I don't have a PLAY:5, so I'll need help testing this one) * Handle errors better * Fix album art in `now_playing` * Handle line-in in `now_playing` -* Auto-discovery * Better support for stero pairs -* CLI client +* CLI client for everything ## Contributing 1. Fork it 2. Create your feature branch (`git checkout -b my-new-feature`)