This gem contains the Yammer strategy for OmniAuth 1.0.
Supports the OAuth 2.0 server-side flow. Read the Yammer docs for more details: https://developer.yammer.com/api/oauth2.html
Add to your Gemfile
:
gem 'omniauth'
gem 'omniauth-yammer'
or even:
gem 'omniauth'
gem 'omniauth-yammer', :git => 'git://github.com/le0pard/omniauth-yammer.git'
Then bundle install
.
OmniAuth::Strategies::Yammer
is simply a Rack middleware. Read the OmniAuth 1.0 docs for detailed instructions: https://github.com/intridea/omniauth.
Here's a quick example, adding the middleware to a Rails app in config/initializers/omniauth.rb
:
Rails.application.config.middleware.use OmniAuth::Builder do
provider :yammer, ENV['YAMMER_KEY'], ENV['YAMMER_SECRET']
end
For changing default domain in gem (for dev or testing purpose) use YAMMER_DOMAIN environment variable:
ENV['YAMMER_DOMAIN'] = 'https://staging.yammer.com'
Add this line to devise config:
config.omniauth :yammer, "Consumer key", "Consumer secret"
If you have this error:
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
Then you can fix this by setting valid cert:
wget http://www.cacert.org/certs/root.crt
cat root.crt >> lib/ca-bundle.crt
and edit devise config:
config.omniauth :yammer, "Consumer key", "Consumer secret", {:client_options => {:ssl => {:ca_file => "#{Rails.root}/lib/ca-bundle.crt" }}}