yammer 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/HISTORY.md +4 -0
- data/lib/yammer/client.rb +6 -0
- data/lib/yammer/client/groups.rb +44 -0
- data/lib/yammer/client/search.rb +24 -0
- data/lib/yammer/client/suggestions.rb +29 -0
- data/lib/yammer/request.rb +13 -9
- data/lib/yammer/version.rb +1 -1
- metadata +34 -31
data/HISTORY.md
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
0.1.2 - April 19th, 2012
|
|
2
|
+
-------------------------
|
|
3
|
+
* [ybenjo](https://github.com/ybenjo) added search, groups and suggestions api support.
|
|
4
|
+
|
|
1
5
|
0.1.1 - Sept 21st, 2011
|
|
2
6
|
-------------------------
|
|
3
7
|
* [Rob Warner](https://github.com/hoop33) added about_topic and user[:id]
|
data/lib/yammer/client.rb
CHANGED
|
@@ -10,11 +10,17 @@ module Yammer
|
|
|
10
10
|
require 'yammer/client/messages'
|
|
11
11
|
require 'yammer/client/feed'
|
|
12
12
|
require 'yammer/client/users'
|
|
13
|
+
require 'yammer/client/search'
|
|
14
|
+
require 'yammer/client/suggestions'
|
|
15
|
+
require 'yammer/client/groups'
|
|
13
16
|
|
|
14
17
|
alias :api_endpoint :endpoint
|
|
15
18
|
|
|
16
19
|
include Yammer::Client::Messages
|
|
17
20
|
include Yammer::Client::Feed
|
|
18
21
|
include Yammer::Client::Users
|
|
22
|
+
include Yammer::Client::Search
|
|
23
|
+
include Yammer::Client::Suggestions
|
|
24
|
+
include Yammer::Client::Groups
|
|
19
25
|
end
|
|
20
26
|
end
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
module Yammer
|
|
2
|
+
class Client
|
|
3
|
+
# Defines methods related to groups
|
|
4
|
+
module Groups
|
|
5
|
+
# Get groups information.
|
|
6
|
+
# @see https://developer.yammer.com/api/#groups
|
|
7
|
+
#
|
|
8
|
+
# @format `:json`
|
|
9
|
+
# @authenticated true
|
|
10
|
+
# @rate_limited unconfirmed
|
|
11
|
+
# @param options [Hash] A customizable set of options.
|
|
12
|
+
# @option options [Integer] :page 20 groups will be shown per page.
|
|
13
|
+
# @option options [String] :letter Return groups beginning with the given letter.
|
|
14
|
+
# @option options [messages|members|privacy|created_at|creator] :sort_by Results will be returned sorted by one of the above options instead of the default behavior of sorting by number of messages.
|
|
15
|
+
# @option options [String] :reverse Return results in reverse order if uses true.
|
|
16
|
+
# @option options [String] :private Used when creating or updating groups to make them private if uses true.
|
|
17
|
+
# @return [Hashie::Mash] Informations of groups.
|
|
18
|
+
def groups(options={})
|
|
19
|
+
get("groups", options)
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
# Get specific group information.
|
|
23
|
+
#
|
|
24
|
+
# @format `:json`
|
|
25
|
+
# @authenticated true
|
|
26
|
+
# @rate_limited unconfirmed
|
|
27
|
+
# @param id [Integer] The id of specific group.
|
|
28
|
+
# @return [Hashie::Mash] Informations of group which id is #{id}.
|
|
29
|
+
def group(id, options={})
|
|
30
|
+
get("groups/#{id}", options)
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# Create/Update group.
|
|
34
|
+
#
|
|
35
|
+
# @authenticated true
|
|
36
|
+
# @rate_limited unconfirmed
|
|
37
|
+
# @param name [String] The name of group.
|
|
38
|
+
# @param private [String] Used true when creating or updating groups to make them private.
|
|
39
|
+
def create_group(name, options={})
|
|
40
|
+
post('groups', options.merge({:name => name}))
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
module Yammer
|
|
2
|
+
class Client
|
|
3
|
+
# Defines methods related to search
|
|
4
|
+
module Search
|
|
5
|
+
# Returns the 20 lists of messages, users, tags and groups that match the user's search query.
|
|
6
|
+
#
|
|
7
|
+
# @format `:json`
|
|
8
|
+
# @authenticated true
|
|
9
|
+
# @rate_limited ***
|
|
10
|
+
# @param query [String] The search query.
|
|
11
|
+
# @param options [Hash] A customizable set of options.
|
|
12
|
+
# @option options [Integer] :page Only 20 results of each type will be returned for each page, but a total count is returned with each query. page=1 (the default) will return items 1-20, page=2 will return items 21-30, etc.
|
|
13
|
+
# @option options [Integer] :num_per_page limit of search results, up to a maximum of 20, the default value.
|
|
14
|
+
# @return [Hashie::Mash]
|
|
15
|
+
# @see https://developer.yammer.com/api/#search
|
|
16
|
+
# @example
|
|
17
|
+
# Yammer.search("my boss")
|
|
18
|
+
def search(query, options={})
|
|
19
|
+
get('search', options.merge({:search => query}))
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
module Yammer
|
|
2
|
+
class Client
|
|
3
|
+
# Defines methods to get/declines suggestions.
|
|
4
|
+
module Suggestions
|
|
5
|
+
# Return suggested groups and users.
|
|
6
|
+
#
|
|
7
|
+
# @format `:json`
|
|
8
|
+
# @authenticated true
|
|
9
|
+
# @rate_limited
|
|
10
|
+
# @param options [Hash] A customizable set of options.
|
|
11
|
+
# @option options [Integer] :limit Returns only Return only the specified number of suggestions.
|
|
12
|
+
# @return [Hashie::Mash]
|
|
13
|
+
# @see https://developer.yammer.com/api/#suggestions
|
|
14
|
+
# @example
|
|
15
|
+
# Yammer.suggestions
|
|
16
|
+
def suggestions(options={})
|
|
17
|
+
get('suggestions', options)
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
# Decline a suggestion specfic id.
|
|
21
|
+
# @param id [Integer/String] When declining a suggestion, pass its id.
|
|
22
|
+
# @example
|
|
23
|
+
# Yammer.decline_suggestion(12345)
|
|
24
|
+
def decline_suggestion(id)
|
|
25
|
+
delete("suggestions/#{id}")
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
data/lib/yammer/request.rb
CHANGED
|
@@ -25,16 +25,20 @@ module Yammer
|
|
|
25
25
|
|
|
26
26
|
# Perform an HTTP request
|
|
27
27
|
def request(method, path, options, format)
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
28
|
+
begin
|
|
29
|
+
response = connection(format).send(method) do |request|
|
|
30
|
+
case method.to_sym
|
|
31
|
+
when :get, :delete
|
|
32
|
+
request.url(formatted_path(path, format), options)
|
|
33
|
+
when :post, :put
|
|
34
|
+
request.path = formatted_path(path, format)
|
|
35
|
+
request.body = options unless options.empty?
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
'raw' == format.to_s.downcase ? response : response.body
|
|
39
|
+
rescue MultiJson::DecodeError
|
|
40
|
+
Hashie::Mash.new
|
|
36
41
|
end
|
|
37
|
-
'raw' == format.to_s.downcase ? response : response.body
|
|
38
42
|
end
|
|
39
43
|
|
|
40
44
|
def formatted_path(path, format)
|
data/lib/yammer/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: yammer
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.2
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
@@ -9,11 +9,11 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date:
|
|
12
|
+
date: 2012-04-19 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: maruku
|
|
16
|
-
requirement: &
|
|
16
|
+
requirement: &70278642885400 !ruby/object:Gem::Requirement
|
|
17
17
|
none: false
|
|
18
18
|
requirements:
|
|
19
19
|
- - ~>
|
|
@@ -21,10 +21,10 @@ dependencies:
|
|
|
21
21
|
version: '0.6'
|
|
22
22
|
type: :development
|
|
23
23
|
prerelease: false
|
|
24
|
-
version_requirements: *
|
|
24
|
+
version_requirements: *70278642885400
|
|
25
25
|
- !ruby/object:Gem::Dependency
|
|
26
26
|
name: nokogiri
|
|
27
|
-
requirement: &
|
|
27
|
+
requirement: &70278642884900 !ruby/object:Gem::Requirement
|
|
28
28
|
none: false
|
|
29
29
|
requirements:
|
|
30
30
|
- - ~>
|
|
@@ -32,10 +32,10 @@ dependencies:
|
|
|
32
32
|
version: '1.4'
|
|
33
33
|
type: :development
|
|
34
34
|
prerelease: false
|
|
35
|
-
version_requirements: *
|
|
35
|
+
version_requirements: *70278642884900
|
|
36
36
|
- !ruby/object:Gem::Dependency
|
|
37
37
|
name: rake
|
|
38
|
-
requirement: &
|
|
38
|
+
requirement: &70278642884140 !ruby/object:Gem::Requirement
|
|
39
39
|
none: false
|
|
40
40
|
requirements:
|
|
41
41
|
- - ~>
|
|
@@ -43,10 +43,10 @@ dependencies:
|
|
|
43
43
|
version: '0.9'
|
|
44
44
|
type: :development
|
|
45
45
|
prerelease: false
|
|
46
|
-
version_requirements: *
|
|
46
|
+
version_requirements: *70278642884140
|
|
47
47
|
- !ruby/object:Gem::Dependency
|
|
48
48
|
name: rspec
|
|
49
|
-
requirement: &
|
|
49
|
+
requirement: &70278642883360 !ruby/object:Gem::Requirement
|
|
50
50
|
none: false
|
|
51
51
|
requirements:
|
|
52
52
|
- - ~>
|
|
@@ -54,10 +54,10 @@ dependencies:
|
|
|
54
54
|
version: '2.6'
|
|
55
55
|
type: :development
|
|
56
56
|
prerelease: false
|
|
57
|
-
version_requirements: *
|
|
57
|
+
version_requirements: *70278642883360
|
|
58
58
|
- !ruby/object:Gem::Dependency
|
|
59
59
|
name: simplecov
|
|
60
|
-
requirement: &
|
|
60
|
+
requirement: &70278642882500 !ruby/object:Gem::Requirement
|
|
61
61
|
none: false
|
|
62
62
|
requirements:
|
|
63
63
|
- - ~>
|
|
@@ -65,10 +65,10 @@ dependencies:
|
|
|
65
65
|
version: '0.4'
|
|
66
66
|
type: :development
|
|
67
67
|
prerelease: false
|
|
68
|
-
version_requirements: *
|
|
68
|
+
version_requirements: *70278642882500
|
|
69
69
|
- !ruby/object:Gem::Dependency
|
|
70
70
|
name: webmock
|
|
71
|
-
requirement: &
|
|
71
|
+
requirement: &70278642881740 !ruby/object:Gem::Requirement
|
|
72
72
|
none: false
|
|
73
73
|
requirements:
|
|
74
74
|
- - ~>
|
|
@@ -76,10 +76,10 @@ dependencies:
|
|
|
76
76
|
version: '1.6'
|
|
77
77
|
type: :development
|
|
78
78
|
prerelease: false
|
|
79
|
-
version_requirements: *
|
|
79
|
+
version_requirements: *70278642881740
|
|
80
80
|
- !ruby/object:Gem::Dependency
|
|
81
81
|
name: yard
|
|
82
|
-
requirement: &
|
|
82
|
+
requirement: &70278642881240 !ruby/object:Gem::Requirement
|
|
83
83
|
none: false
|
|
84
84
|
requirements:
|
|
85
85
|
- - ~>
|
|
@@ -87,10 +87,10 @@ dependencies:
|
|
|
87
87
|
version: '0.7'
|
|
88
88
|
type: :development
|
|
89
89
|
prerelease: false
|
|
90
|
-
version_requirements: *
|
|
90
|
+
version_requirements: *70278642881240
|
|
91
91
|
- !ruby/object:Gem::Dependency
|
|
92
92
|
name: ZenTest
|
|
93
|
-
requirement: &
|
|
93
|
+
requirement: &70278642880000 !ruby/object:Gem::Requirement
|
|
94
94
|
none: false
|
|
95
95
|
requirements:
|
|
96
96
|
- - ~>
|
|
@@ -98,10 +98,10 @@ dependencies:
|
|
|
98
98
|
version: '4.5'
|
|
99
99
|
type: :development
|
|
100
100
|
prerelease: false
|
|
101
|
-
version_requirements: *
|
|
101
|
+
version_requirements: *70278642880000
|
|
102
102
|
- !ruby/object:Gem::Dependency
|
|
103
103
|
name: hashie
|
|
104
|
-
requirement: &
|
|
104
|
+
requirement: &70278642879520 !ruby/object:Gem::Requirement
|
|
105
105
|
none: false
|
|
106
106
|
requirements:
|
|
107
107
|
- - ~>
|
|
@@ -109,10 +109,10 @@ dependencies:
|
|
|
109
109
|
version: 1.0.0
|
|
110
110
|
type: :runtime
|
|
111
111
|
prerelease: false
|
|
112
|
-
version_requirements: *
|
|
112
|
+
version_requirements: *70278642879520
|
|
113
113
|
- !ruby/object:Gem::Dependency
|
|
114
114
|
name: faraday
|
|
115
|
-
requirement: &
|
|
115
|
+
requirement: &70278642878960 !ruby/object:Gem::Requirement
|
|
116
116
|
none: false
|
|
117
117
|
requirements:
|
|
118
118
|
- - ~>
|
|
@@ -120,10 +120,10 @@ dependencies:
|
|
|
120
120
|
version: 0.6.1
|
|
121
121
|
type: :runtime
|
|
122
122
|
prerelease: false
|
|
123
|
-
version_requirements: *
|
|
123
|
+
version_requirements: *70278642878960
|
|
124
124
|
- !ruby/object:Gem::Dependency
|
|
125
125
|
name: faraday_middleware
|
|
126
|
-
requirement: &
|
|
126
|
+
requirement: &70278642878440 !ruby/object:Gem::Requirement
|
|
127
127
|
none: false
|
|
128
128
|
requirements:
|
|
129
129
|
- - ~>
|
|
@@ -131,10 +131,10 @@ dependencies:
|
|
|
131
131
|
version: 0.6.3
|
|
132
132
|
type: :runtime
|
|
133
133
|
prerelease: false
|
|
134
|
-
version_requirements: *
|
|
134
|
+
version_requirements: *70278642878440
|
|
135
135
|
- !ruby/object:Gem::Dependency
|
|
136
136
|
name: multi_json
|
|
137
|
-
requirement: &
|
|
137
|
+
requirement: &70278642877980 !ruby/object:Gem::Requirement
|
|
138
138
|
none: false
|
|
139
139
|
requirements:
|
|
140
140
|
- - ~>
|
|
@@ -142,10 +142,10 @@ dependencies:
|
|
|
142
142
|
version: 1.0.0
|
|
143
143
|
type: :runtime
|
|
144
144
|
prerelease: false
|
|
145
|
-
version_requirements: *
|
|
145
|
+
version_requirements: *70278642877980
|
|
146
146
|
- !ruby/object:Gem::Dependency
|
|
147
147
|
name: multi_xml
|
|
148
|
-
requirement: &
|
|
148
|
+
requirement: &70278642877520 !ruby/object:Gem::Requirement
|
|
149
149
|
none: false
|
|
150
150
|
requirements:
|
|
151
151
|
- - ~>
|
|
@@ -153,10 +153,10 @@ dependencies:
|
|
|
153
153
|
version: 0.2.0
|
|
154
154
|
type: :runtime
|
|
155
155
|
prerelease: false
|
|
156
|
-
version_requirements: *
|
|
156
|
+
version_requirements: *70278642877520
|
|
157
157
|
- !ruby/object:Gem::Dependency
|
|
158
158
|
name: simple_oauth
|
|
159
|
-
requirement: &
|
|
159
|
+
requirement: &70278642877040 !ruby/object:Gem::Requirement
|
|
160
160
|
none: false
|
|
161
161
|
requirements:
|
|
162
162
|
- - ~>
|
|
@@ -164,7 +164,7 @@ dependencies:
|
|
|
164
164
|
version: 0.1.5
|
|
165
165
|
type: :runtime
|
|
166
166
|
prerelease: false
|
|
167
|
-
version_requirements: *
|
|
167
|
+
version_requirements: *70278642877040
|
|
168
168
|
description: A Ruby wrapper for the Yammer REST API
|
|
169
169
|
email:
|
|
170
170
|
- bruno.mattarollo@gmail.com
|
|
@@ -189,7 +189,10 @@ files:
|
|
|
189
189
|
- lib/yammer/authentication.rb
|
|
190
190
|
- lib/yammer/client.rb
|
|
191
191
|
- lib/yammer/client/feed.rb
|
|
192
|
+
- lib/yammer/client/groups.rb
|
|
192
193
|
- lib/yammer/client/messages.rb
|
|
194
|
+
- lib/yammer/client/search.rb
|
|
195
|
+
- lib/yammer/client/suggestions.rb
|
|
193
196
|
- lib/yammer/client/users.rb
|
|
194
197
|
- lib/yammer/configuration.rb
|
|
195
198
|
- lib/yammer/connection.rb
|
|
@@ -217,7 +220,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
217
220
|
version: 1.3.6
|
|
218
221
|
requirements: []
|
|
219
222
|
rubyforge_project:
|
|
220
|
-
rubygems_version: 1.8.
|
|
223
|
+
rubygems_version: 1.8.15
|
|
221
224
|
signing_key:
|
|
222
225
|
specification_version: 3
|
|
223
226
|
summary: Ruby wrapper for the Yammer API
|