Permalink
Browse files

Update README.

  • Loading branch information...
1 parent 9207bb3 commit 4da6bc43ea4e6e066044c675b1072ccc71c307ac @jaredhanson committed Jan 12, 2012
Showing with 56 additions and 0 deletions.
  1. +56 −0 README.md
View
@@ -3,6 +3,62 @@
[Passport](https://github.com/jaredhanson/passport) strategy for authenticating
with Yammer using the OAuth 2.0 API.
+## Installation
+
+ $ npm install passport-yammer
+
+## Usage
+
+#### Configure Strategy
+
+The Yammer authentication strategy authenticates users using a Yammer
+account and OAuth 2.0 tokens. The strategy requires a `verify` callback, which
+accepts these credentials and calls `done` providing a user, as well as
+`options` specifying a client ID, client secret, and callback URL.
+
+ passport.use(new YammerStrategy({
+ clientID: YAMMER_CONSUMER_KEY,
+ clientSecret: YAMMER_CONSUMER_SECRET,
+ callbackURL: "http://127.0.0.1:3000/auth/yammer/callback"
+ },
+ function(accessToken, refreshToken, profile, done) {
+ User.findOrCreate({ yammerId: profile.id }, function (err, user) {
+ return done(err, user);
+ });
+ }
+ ));
+
+#### Authenticate Requests
+
+Use `passport.authenticate()`, specifying the `'yammer'` strategy, to
+authenticate requests.
+
+For example, as route middleware in an [Express](http://expressjs.com/)
+application:
+
+ app.get('/auth/yammer',
+ passport.authenticate('yammer'),
+ function(req, res){
+ // The request will be redirected to Yammer for authentication, so
+ // this function will not be called.
+ });
+
+ app.get('/auth/yammer/callback',
+ passport.authenticate('yammer', { failureRedirect: '/login' }),
+ function(req, res) {
+ // Successful authentication, redirect home.
+ res.redirect('/');
+ });
+
+## Examples
+
+For a complete, working example, refer to the [login example](https://github.com/jaredhanson/passport-yammer/tree/master/examples/login).
+
+## Tests
+
+ $ npm install --dev
+ $ make test
+
## Credits
- [Jared Hanson](http://github.com/jaredhanson)

0 comments on commit 4da6bc4

Please sign in to comment.