README.md in rockstar-0.6.3 vs README.md in rockstar-0.6.4

- old
+ new

@@ -12,17 +12,21 @@ Rockstar.lastfm = YAML.load_file('lastfm.yml') Here is an example lastfm.yml: api_key: "API" - api_secret: "SECRET" + api_secret: "SECRET" If you want to use the api in an rails app, you could add an initializer in config/initializers/lastm.rb and load a config/lastfm.yml file. rails_root = ENV['RAILS_ROOT'] || File.dirname(__FILE__) + '/../..' Rockstar.lastfm = YAML.load_file(rails_root + '/config/lastfm.yml') + +Alternatively you can provide a hash with the api key and secret: + Rockstar.lastfm = {:api_key => "API", :api_secret => "SECRET"} + ## Users user = Rockstar::User.new('jnunemaker') puts "#{user.username}'s Recent Tracks" @@ -33,87 +37,91 @@ puts puts "#{user.username}'s Top Tracks" puts "=" * (user.username.length + 13) user.top_tracks.each { |t| puts "(#{t.playcount}) #{t.name}" } - + ## Albums - + album = Rockstar::Album.new('Carrie Underwood', 'Some Hearts', :include_info => true) puts "Album: #{album.name}" puts "Artist: #{album.artist}" puts "URL: #{album.url}" puts "Release Date: #{album.release_date.strftime('%m/%d/%Y')}" ## Artists - - artist = Rockstar::Artist.new('Carrie Underwood') +If you want to load all informations about an artist or any other +object, you have to add `:include_info => true` . + + artist = Rockstar::Artist.new('Carrie Underwood', :include_info => true) + + puts artist.url + puts 'Top Tracks' puts "=" * 10 artist.top_tracks.each { |t| puts "(#{t.name}" } puts puts 'Similar Artists' puts "=" * 15 artist.similar.each { |a| puts "(#{a.match}%) #{a.name}" } - -## Tags - + +## Tags + tag = Rockstar::Tag.new('country') puts 'Top Albums' tag.top_albums.each { |a| puts "(#{a.count}) #{a.name} by #{a.artist}" } puts puts 'Top Tracks' tag.top_tracks.each { |t| puts "(#{t.count}) #{t.name} by #{t.artist}" } - -## Tracks - - track = Rockstar::Track.new('Carrie Underwood', 'Before He Cheats') - puts 'Fans' - puts "=" * 4 - track.fans.each { |u| puts "(#{u.weight}) #{u.username}" } - - # Love a song, session_key is returned by Rockstar::Auth. See Rockstar::TokenAuth or - # examples/scrobble.rb for a complete example - track.love(session_key) ## Geo geo = Rockstar::Geo.new - - # Get events for a lat/long + + # Get events for a lat/long geo.events(:lat => 50.0, :long => 12.3).each{|e| p "#{e.title} at #{e.venue.name}"} - + # Get events for a location geo.events(:location => 'london').each{|e| p "#{e.title} at #{e.venue.name}"} - + # To get a list of possible locations use geo.metros("germany").each{|m| p m.name} ## Get rights to access the user data for scrobbing, now playing, events etc... a = Rockstar::Auth.new token = a.token - + puts puts "Please open http://www.last.fm/api/auth/?api_key=#{Rockstar.lastfm_api_key}&token=#{token}" puts puts "Press enter when done." - + gets - + session = a.session(token) -You can store the session.key somewhere and use it from now on to identify the user. +You can store the session.key somewhere and use it from now on to identify the user. More +details can be found in Rockstar::Auth or examples/scrobble.rb +## Tracks + + track = Rockstar::Track.new('Carrie Underwood', 'Before He Cheats') + puts 'Fans' + puts "=" * 4 + track.fans.each { |u| puts "(#{u.weight}) #{u.username}" } + + track.love(session.key) + ## Scrobbling track = Rockstar::Track.new('Carrie Underwood', 'Before He Cheats') track.scrobble(Time.now, session.key) @@ -121,11 +129,11 @@ track = Rockstar::Track.new('Carrie Underwood', 'Before He Cheats') track.updateNowPlaying(Time.now, session.key) ## Note on Patches/Pull Requests - + * Fork the project. * Make your feature addition or bug fix. * Add tests for it. This is important so I don't break it in a future version unintentionally. * Commit, do not mess with rakefile, version, or history. @@ -133,5 +141,9 @@ * Send me a pull request. Bonus points for topic branches. ## Copyright Copyright (c) 2007-2011 John Nunemaker, Bodo "Bitboxer" Tasche, Nick "zapnap" Plante. See LICENSE for details. + +## Acknowledgements + +Thanks to [putpat.tv](http://www.putpat.tv) for sponsering the work on the rockstar gem.