bigbluebutton-api-ruby 0.0.8 → 0.0.9
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/CHANGELOG.rdoc +5 -1
- data/bigbluebutton-api-ruby.gemspec +1 -1
- data/lib/bigbluebutton-api.rb +49 -9
- data/test/test.rb +8 -0
- metadata +4 -4
data/CHANGELOG.rdoc
CHANGED
@@ -1,4 +1,8 @@
|
|
1
|
-
== 0.0.
|
1
|
+
== 0.0.9
|
2
|
+
|
3
|
+
* Simplied "attendees" part of the hash returned in get_meeting_info. Same thing done for get_meetings.
|
4
|
+
|
5
|
+
== 0.0.8
|
2
6
|
|
3
7
|
* New method get_api_version that returns the version of the server API (>= 0.7).
|
4
8
|
* New simplified hash syntax for get_meetings. See docs for details.
|
@@ -2,7 +2,7 @@ $:.push File.expand_path("../lib", __FILE__)
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = 'bigbluebutton-api-ruby'
|
5
|
-
s.version = '0.0.
|
5
|
+
s.version = '0.0.9'
|
6
6
|
s.extra_rdoc_files = ['README.rdoc', 'LICENSE', 'CHANGELOG.rdoc']
|
7
7
|
s.summary = 'Provides an interface to the BigBlueButton web meeting API (https://github.com/mconf/bigbluebutton-api-ruby)'
|
8
8
|
s.description = s.summary
|
data/lib/bigbluebutton-api.rb
CHANGED
@@ -108,12 +108,12 @@ module BigBlueButton
|
|
108
108
|
# logout_url:: URL to return user to after exiting meeting
|
109
109
|
# voice_bridge:: Voice conference number (>= 0.7)
|
110
110
|
#
|
111
|
-
# === Return examples
|
111
|
+
# === Return examples (for 0.7)
|
112
112
|
#
|
113
113
|
# On successful creation:
|
114
114
|
#
|
115
115
|
# {
|
116
|
-
# :returncode=>"SUCCESS", :meetingID=>"bigbluebutton-api-ruby-
|
116
|
+
# :returncode=>"SUCCESS", :meetingID=>"bigbluebutton-api-ruby-test",
|
117
117
|
# :attendeePW=>1234, :moderatorPW=>4321, :hasBeenForciblyEnded=>"false",
|
118
118
|
# :messageKey=>{}, :message=>{}
|
119
119
|
# }
|
@@ -121,7 +121,7 @@ module BigBlueButton
|
|
121
121
|
# Meeting that was just forcibly ended:
|
122
122
|
#
|
123
123
|
# {
|
124
|
-
# :returncode=>"SUCCESS", :meetingID=>"bigbluebutton-api-ruby-
|
124
|
+
# :returncode=>"SUCCESS", :meetingID=>"bigbluebutton-api-ruby-test",
|
125
125
|
# :attendeePW=>1234, :moderatorPW=>4321, :hasBeenForciblyEnded=>"true",
|
126
126
|
# :messageKey=>"duplicateWarning",
|
127
127
|
# :message=>"This conference was already in existence and may currently be in progress."
|
@@ -144,7 +144,7 @@ module BigBlueButton
|
|
144
144
|
# meeting_id:: Unique identifier for the meeting
|
145
145
|
# moderator_password:: Moderator password
|
146
146
|
#
|
147
|
-
# === Return examples
|
147
|
+
# === Return examples (for 0.7)
|
148
148
|
#
|
149
149
|
# On success:
|
150
150
|
#
|
@@ -195,14 +195,54 @@ module BigBlueButton
|
|
195
195
|
#
|
196
196
|
# meeting_id:: Unique identifier for the meeting
|
197
197
|
# password:: Moderator password for this meeting
|
198
|
+
#
|
199
|
+
# === Return examples (for 0.7)
|
200
|
+
#
|
201
|
+
# With attendees:
|
202
|
+
#
|
203
|
+
# {
|
204
|
+
# :returncode=>"SUCCESS", :meetingID=>"bigbluebutton-api-ruby-test", :attendeePW=>1234, :moderatorPW=>4321, :running=>"true",
|
205
|
+
# :hasBeenForciblyEnded=>"false", :startTime=>"Wed Apr 06 17:09:57 UTC 2011", :endTime=>"null", :participantCount=>4, :moderatorCount=>2,
|
206
|
+
# :attendees => [
|
207
|
+
# {:userID=>"ndw1fnaev0rj", :fullName=>"House M.D.", :role=>"MODERATOR"},
|
208
|
+
# {:userID=>"gn9e22b7ynna", :fullName=>"Dexter Morgan", :role=>"MODERATOR"},
|
209
|
+
# {:userID=>"llzihbndryc3", :fullName=>"Cameron Palmer", :role=>"VIEWER"},
|
210
|
+
# {:userID=>"rbepbovolsxt", :fullName=>"Trinity", :role=>"VIEWER"}
|
211
|
+
# ], :messageKey=>{}, :message=>{}
|
212
|
+
# }
|
213
|
+
#
|
214
|
+
# Without attendees (not started):
|
215
|
+
#
|
216
|
+
# {
|
217
|
+
# :returncode=>"SUCCESS", :meetingID=>"bigbluebutton-api-ruby-test", :attendeePW=>1234, :moderatorPW=>4321, :running=>"false",
|
218
|
+
# :hasBeenForciblyEnded=>"false", :startTime=>"null", :endTime=>"null", :participantCount=>0, :moderatorCount=>0,
|
219
|
+
# :attendees=>[], :messageKey=>{ }, :message=>{ }
|
220
|
+
# }
|
221
|
+
#
|
198
222
|
def get_meeting_info(meeting_id, password)
|
199
|
-
send_api_request(:getMeetingInfo, { :meetingID => meeting_id, :password => password } )
|
223
|
+
response = send_api_request(:getMeetingInfo, { :meetingID => meeting_id, :password => password } )
|
224
|
+
|
225
|
+
# simplify the hash making a node :attendees with an array with all attendees
|
226
|
+
if response[:attendees].empty?
|
227
|
+
meetings = []
|
228
|
+
else
|
229
|
+
node = response[:attendees][:attendee]
|
230
|
+
if node.kind_of?(Array)
|
231
|
+
meetings = node
|
232
|
+
else
|
233
|
+
meetings = []
|
234
|
+
meetings << node
|
235
|
+
end
|
236
|
+
end
|
237
|
+
response[:attendees] = meetings
|
238
|
+
|
239
|
+
response
|
200
240
|
end
|
201
241
|
|
202
242
|
# Returns a hash object containing information about the meetings currently existent in the BBB
|
203
243
|
# server, either they are running or not.
|
204
244
|
#
|
205
|
-
# === Return examples
|
245
|
+
# === Return examples (for 0.7)
|
206
246
|
#
|
207
247
|
# Server with one or more meetings:
|
208
248
|
#
|
@@ -221,10 +261,10 @@ module BigBlueButton
|
|
221
261
|
response = send_api_request(:getMeetings, { :random => rand(9999999999) } )
|
222
262
|
|
223
263
|
# simplify the hash making a node :meetings with an array with all meetings
|
224
|
-
node = response[:meetings][:meeting]
|
225
264
|
if response[:meetings].empty?
|
226
265
|
meetings = []
|
227
266
|
else
|
267
|
+
node = response[:meetings][:meeting]
|
228
268
|
if node.kind_of?(Array)
|
229
269
|
meetings = node
|
230
270
|
else
|
@@ -263,10 +303,10 @@ module BigBlueButton
|
|
263
303
|
end
|
264
304
|
|
265
305
|
# API's are equal if all the following attributes are equal
|
266
|
-
def ==
|
306
|
+
def ==(other)
|
267
307
|
r = true
|
268
308
|
[:url, :supported_versions, :salt, :version, :debug].each do |param|
|
269
|
-
r = r
|
309
|
+
r = r && self.send(param) == other.send(param)
|
270
310
|
end
|
271
311
|
r
|
272
312
|
end
|
data/test/test.rb
CHANGED
@@ -77,6 +77,14 @@ def general_test
|
|
77
77
|
puts "Meeting info:"
|
78
78
|
puts response.inspect
|
79
79
|
|
80
|
+
puts
|
81
|
+
puts "---------------------------------------------------"
|
82
|
+
puts "Attendees:"
|
83
|
+
response[:attendees].each do |m|
|
84
|
+
puts " " + m[:fullName] + " (" + m[:userID] + "): " + m.inspect
|
85
|
+
end
|
86
|
+
|
87
|
+
|
80
88
|
puts
|
81
89
|
puts "---------------------------------------------------"
|
82
90
|
@api.end_meeting(@config['meeting_id'], @config['moderator_password'])
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bigbluebutton-api-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.9
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,11 +10,11 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2011-04-
|
13
|
+
date: 2011-04-08 00:00:00.000000000Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: nokogiri
|
17
|
-
requirement: &
|
17
|
+
requirement: &78653840 !ruby/object:Gem::Requirement
|
18
18
|
none: false
|
19
19
|
requirements:
|
20
20
|
- - ~>
|
@@ -22,7 +22,7 @@ dependencies:
|
|
22
22
|
version: 1.4.0
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
|
-
version_requirements: *
|
25
|
+
version_requirements: *78653840
|
26
26
|
description: Provides an interface to the BigBlueButton web meeting API (https://github.com/mconf/bigbluebutton-api-ruby)
|
27
27
|
email:
|
28
28
|
- leonardodaronco@gmail.com
|