Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/barisbalic/gamertag
A gem for retrieving Xbox Live Gamertag information from the XboxLeaders API.
https://github.com/barisbalic/gamertag
Last synced: 3 days ago
JSON representation
A gem for retrieving Xbox Live Gamertag information from the XboxLeaders API.
- Host: GitHub
- URL: https://github.com/barisbalic/gamertag
- Owner: barisbalic
- License: wtfpl
- Created: 2011-05-21T21:27:23.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2014-01-12T23:58:16.000Z (almost 11 years ago)
- Last Synced: 2024-04-24T16:09:54.458Z (7 months ago)
- Language: Ruby
- Homepage:
- Size: 277 KB
- Stars: 22
- Watchers: 4
- Forks: 10
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.md
Awesome Lists containing this project
- awesome-open-source-games - Gamertag - Gem for retrieving Xbox Live Gamertag information from various sources. (Maps/Hacks/Plugins/Utilities/All of the Things™ / IOS)
README
# Gamertag [![Build Status](https://travis-ci.org/barisbalic/gamertag.png)](https://travis-ci.org/barisbalic/gamertag) [![Code Climate](https://codeclimate.com/github/barisbalic/gamertag.png)](https://codeclimate.com/github/barisbalic/gamertag) [![Dependency Status](https://gemnasium.com/barisbalic/gamertag.png)](https://gemnasium.com/barisbalic/gamertag)
A simple wrapper for the [Xbox Leaders](https://www.xboxleaders.com/) 2.0 API, which allows you to pull back public information about an Xbox Live user with just their Gamertag. This includes their profile, friends, games played and achievements.
## Divergence from API
The Xbox Leaders API has evolved recently and will probably continue to do so now that it has more focus from it's developer. As a result I've made some choices that may not marry up completely with the API documentation, however I feel they are sensible/idiomatic, and where reasonable I've suggested to the Xbox Leaders team that they could make changes directly to the API.
## Installation
Add this line to your application's Gemfile:
gem 'gamertag'
And then execute:
$ bundle
Or install it yourself as:
$ gem install gamertag
## Documentation
LINK TO RDOC
### Examples
#### Override the adapter
```ruby
client = Gamertag::Client.new(:adapter => :em_http)
client.profile('Major Nelson')
```#### Retrieve a user
```ruby
Gamertag.profile('Major Nelson')
=> # badges=# biography="" freshness="new" gamerscore=63937 gamertag="Major Nelson" location="" motto="" name="" online=false presence="Last seen 1 minute ago playing Xbox.com" recent_activity=[# artwork=# gamerscore=# id=1414793340 is_app=false last_played="1372305965" progress=52.2 title="Borderlands 2">, # artwork=# gamerscore=# id=1297287449 is_app=false last_played="1372216446" progress=56.6 title="Halo 4">, # artwork=# gamerscore=# id=1161890128 is_app=false last_played="1372131482" progress=44.4 title="Battlefield 3">, # artwork=# gamerscore=# id=1481115739 is_app=true last_played="1371965964" progress=0 title="Xbox Music and Video">, # artwork=# gamerscore=# id=1297287707 is_app=true last_played="1371335033" progress=0 title="Live Event Player">] reputation=20 tier="gold">
```#### Retrieve games played by a user
```ruby
Gamertag.games('Major Nelson')
=> [# artwork=# gamerscore=# id=1096157139 is_app=false last_played="1132028299" progress=3.2 title="Gun">, …]
```#### Retrieve friends of a user
```ruby
Gamertag.friends('Major Nelson')
=> [# gamerscore=21080 gamertag="allad1nsane" last_seen="1371973384" online=false status="Last seen 6/23/2013 playing Max Payne 3">, …]
```#### Retrieve user's achievements
```ruby
Gamertag.achievements('Major Nelson', 1414793309)
=> [# description="Kill 20 enemies by knocking them off Columbia." gamerscore=25 id=36 secret=false title="Bon Voyage" unlock_date="1368255380" unlocked=true>, …]
```## Contributors
As of 2.0, the codebase is completely re-written, however I'd like to thank [David Czarnecki](https://github.com/czarneckid) for his contributions, especially for putting up with the original crappy code.
## Contributing
1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request## Copyright
Copyright (c) 2011-2014 Baris Balic, David Czarnecki.
See [LICENSE][] for details.[license]: LICENSE.md