Project

muck-oauth

0.0
No commit activity in last 3 years
No release in over 3 years
A simple wrapper for the oauth and oauth-plugin gems so that it is faster to include oauth in muck based applications.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

 Project Readme

muck-oauth¶ ↑

This gem wraps oauth and oauth-plugin to make it simple to get tokens for services that muck can interact with various services.

Please note that this gem is no longer being maintained. We are migrating to muck-auth which uses omniauth.

For more documentation see: github.com/pelle/oauth-plugin stakeventures.com/articles/2009/07/21/consuming-oauth-intelligently-in-rails stakeventures.com/articles/2008/02/23/developing-oauth-clients-in-ruby

Installation¶ ↑

Add the following to environment.rb

config.gem "oauth"
config.gem "oauth-plugin"
config.gem "muck-oauth"

Add the following to your user model:

include MuckOauth::Models::MuckUser

Configuration¶ ↑

Add the following to global_config.yml. Be sure to get keys from each service that you want to interact with.

# Oauth
# Twitter api access: http://www.twitter.com/apps 
twitter_oauth_key: ''
twitter_oauth_secret: ''

# Google api access: http://code.google.com/apis/accounts/docs/RegistrationForWebAppsAuto.html#register
google_oauth_key: ""
google_oauth_secret: ""

# Yahoo api access: http://developer.yahoo.com/flickr/
yahoo_oauth_key: ""
yahoo_oauth_secret: ""

# Flick api access: http://www.flickr.com/services/apps/create/apply
# flickr_oauth_key: 
# flickr_oauth_secret: 

# Linked In api access: https://www.linkedin.com/secure/developer
# linkedin_oauth_key: ""
# linkedin_oauth_secret: ""
linkedin_oauth_key: ""
linkedin_oauth_secret: ""

# Friendfeed api access: https://friendfeed.com/account/login?next=%2Fapi%2Fregister
# Production
friendfeed_oauth_key: ''
friendfeed_oauth_secret: ''  
# Test
friendfeed_oauth_key: ''
friendfeed_oauth_secret: ''

Usage¶ ↑

Add configuration for services to:

intializers/oauth_consumers.rb

Link to each service like this:

<a href="/oauth_consumers/twitter">Twitter</a>
<a href="/oauth_consumers/google">Google</a>

Each service provides methods that enable communication with the service’s api via popular gems. For example, the twitter service uses the twitter gem and so you can call methods against a user’s twitter account like this:

user.twitter.client.verify_credentials[:screen_name]

Please see each gem’s documentation for more information: Twitter Docs: rdoc.info/projects/jnunemaker/twitter Twitter Examples: github.com/jnunemaker/twitter-app/ i.e.

user.twitter.client

Linked In Docs: github.com/pengwynn/linkedin i.e.

user.linked_in.client

Google Docs: github.com/pelle/portablecontacts i.e.

user.google.portable_contacts

Fire Eagle Docs: fireeagle.rubyforge.org/ i.e.

user.fire_eagle.client

Friend Feed Docs: None yet

Yahoo Docs: None yet

Flickr None yet

Tips and Help¶ ↑

If you get an error like this:

uninitialized constant User::TwitterToken

it means you need to setup your global_config.yml with the values specified above.

Copyright © 2009-2010 Tatemae.com. See LICENSE for details.