bigbluebutton-api-ruby 1.3.0 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 25726eaedf0a5b63156a7786a793f27a419e349a177419fdaecb0e0aac0295d6
4
+ data.tar.gz: 6e8ec707b2f53e06ba21163d2f5d34766436e49f852991434d3aa787a4108deb
5
+ SHA512:
6
+ metadata.gz: 810382ae7b2f54be6ac766e10db46a61f76a4120c84bb1a99600012266db562da53149d7ee0bde1c7a2b3939542398556a7faa85dd24153c669f04875ac90213
7
+ data.tar.gz: 229132ef71db18f0a972daefb0b5b0ad49c53c63655877923323a163f99d15b383d4f0ac7344ebba61a6b5961f3a08abc2dc50a9ef217d4eccf0fcbfc2fdc527
data/.gitignore CHANGED
@@ -5,4 +5,5 @@ features/config.yml
5
5
  logs/bbb.log
6
6
  rdoc/
7
7
  logs/*
8
- .bundle/
8
+ .bundle/
9
+ .volumes/
data/.rspec CHANGED
@@ -1 +1,2 @@
1
+ --format documentation
1
2
  --color
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 1.9.3-p484
1
+ 2.6.5
data/.travis.yml CHANGED
@@ -1,6 +1,10 @@
1
+ sudo: false
2
+ language: ruby
1
3
  script: "bundle exec rake spec"
4
+ cache: bundler
2
5
  rvm:
3
- - 1.8.7
6
+ - 2.2.0
7
+ - 2.1.2
8
+ - 2.0.0
9
+ - 1.9.3
4
10
  - 1.9.2
5
- - ree
6
- - jruby
data/CHANGELOG.md ADDED
@@ -0,0 +1,197 @@
1
+ # Change Log
2
+
3
+ ## [1.8.0] - 2021-12-06
4
+ * [#43] Add keys to every `BigBlueButtonException`, to better identify them.
5
+ * [#42] Change `BigBlueButtonException` to inherit from `StandardError` instead of `Exception`.
6
+ * [#50] [BREAKING-CHANGE] Replace `debug` flag with a optional Logger. The application using the
7
+ gem can pass its own logger as argument for the `BigBlueButtonApi` initialization.
8
+ If none is passed, the gem will use its own default logger on `STDOUT` with `INFO` level.
9
+ * [#40] Fix issue preventing documents from being preuploaded using the create call.
10
+ * Fix parse of recordings with invalid times. It would break at `getRecordings` if one
11
+ of them had an empty `startTime` or `endTime`.
12
+ * Add a Dockerfile and compose to help run tests.
13
+ * Fix deprecated `TimeoutError` constant.
14
+ * [#35] Make `get_recordings` accept multiple `state` params.
15
+ * [#34] Update `rubyzip` gem to the newest version with no vulnerability, from 1.2.2 to 1.3.0
16
+ * [#33] Upgrade dependencies:
17
+ - `childprocess` from 0.3.2 to 1.0.1
18
+ - `ffi` from 1.0.11 to 1.9.24
19
+ - `json` from 1.8.3 to 1.8.6
20
+ - `nokogiri` from 1.6.6.2 to 1.10.4
21
+ - `rack` from 1.4.1 to 1.6.11
22
+ - `rdoc` from 3.12 to 3.12.1
23
+ - `rubyzip` from 0.9.8 to 1.2.2
24
+
25
+ ## [1.7.0] - 2018-08-17
26
+
27
+ * [#29] Add support to the API call `updateRecordings` introduced in BigBlueButton 1.1.
28
+ * [#31] Fixed issue with length=nil breaking multiple recording formats.
29
+ * Call `setConfigXML` via POST and change encoding method. Fixes issues with special
30
+ characters (such as `*`) in the config.xml.
31
+ * Add method to return the URL to `/check`.
32
+
33
+ ## [1.6.0] - 2016-06-15
34
+
35
+ * Rename BigBlueButtonApi#salt to #secret
36
+
37
+ ## [1.5.0] - 2016-04-07
38
+
39
+ * Add 1.0 as a supported version of BigBlueButton.
40
+ * [#1686] Automatically set the version number of a server by fetching it from
41
+ its API.
42
+ * [#1686] Fix comparison of config.xml strings that would sometimes thing XMLs
43
+ were different in cases when they were not.
44
+ * [#1695] Add support for servers that use HTTPS.
45
+
46
+ ## [1.4.0] - 2015-07-20
47
+
48
+ * Updated default ruby version to 2.2.0.
49
+ * Add support for BigBlueButton 0.9 (includes all 0.9.x). Consists only in
50
+ accepting the version "0.9", since this new API version doesn't break
51
+ compatibility with the previous version and also doesn't add new API
52
+ calls.
53
+
54
+ ## [1.3.0] - 2014-05-11
55
+
56
+ * Drop support to BigBlueButton 0.7 and add BigBlueButton to 0.81. Includes
57
+ support to the new API calls `getDefaultConfigXML` and `setConfigXML`.
58
+ * Reviewed all methods responses (some changed a bit) and documentation.
59
+ * Allow non standard options to be passed to **all** API calls.
60
+ * Removed method `join_meeting` that was usually not used. Should always use
61
+ `join_meeting_url`.
62
+ * Moved the hash extension method `from_xml` to its own class to prevent
63
+ conflicts with Rails. See
64
+ https://github.com/mconf/bigbluebutton-api-ruby/pull/6.
65
+
66
+ ## [1.2.0] - 2013-03-13
67
+
68
+ * Allow non standard options to be passed to some API calls. These API calls are: create_meeting, join_meeting_url, join_meeting, get_recordings.
69
+ Useful for development of for custom versions of BigBlueButton.
70
+ * Accept :record as boolean in create_meeting
71
+ * Better formatting of data returned by get_recordings
72
+
73
+ ## [1.1.1] - 2013-01-30
74
+
75
+ * BigBlueButtonApi can now receive http headers to be sent in all get/post
76
+ requests
77
+
78
+ ## [1.1.0] - 2012-05-04
79
+
80
+ * Updated ruby to 1.9.3-194.
81
+ * Support to BigBlueButton 0.4 rc1.
82
+
83
+ ## [1.0.0] - 2012-05-04
84
+
85
+ * Version 0.1.0 renamed to 1.0.0.
86
+
87
+ ## [0.1.0] - 2011-11-25
88
+
89
+ * Support to BigBlueButton 0.8:
90
+ * New methods for recordings: get_recordings, publish_recordings,
91
+ delete_recordings
92
+ * Pre-upload of slides in create_meeting
93
+ * New parameters added in the already existent methods
94
+ * For more information see BigBlueButton docs at
95
+ http://code.google.com/p/bigbluebutton/wiki/API#Version_0.8
96
+ * Method signature changes: create_meeting, join_meeting_url and
97
+ join_meeting. Optional parameters are now passed using a hash.
98
+ * Integration tests for the entire library using cucumber.
99
+ * Changed the XML parser to xml-simple (especially to solve issues with
100
+ CDATA values).
101
+
102
+ ## [0.0.11] - 2011-09-01
103
+
104
+ * The file "bigbluebutton-api" was renamed to "bigbluebutton_api". All
105
+ "require" calls must be updated.
106
+ * Splitted the library in more files (more modular) and created rspec tests
107
+ for it.
108
+ * Added a BigBlueButtonApi.timeout attribute to timeout get requests and
109
+ avoid blocks when the server is down. Defaults to 2 secs.
110
+ * New method last_http_response to access the last HTTP response object.
111
+ * Automatically detects the BBB server version if not informed by the user.
112
+
113
+ ## [0.0.10] - 2011-04-28
114
+
115
+ * Returning hash now will **always** have these 3 values: :returncode
116
+ (boolean), :messageKey (string) and :message (string).
117
+ * Some values in the hash are now converted to a fixed variable type to
118
+ avoid inconsistencies:
119
+ * :meetingID (string)
120
+ * :attendeePW (string)
121
+ * :moderatorPW (string)
122
+ * :running (boolean)
123
+ * :hasBeenForciblyEnded (boolean)
124
+ * :endTime and :startTime (DateTime or nil)
125
+
126
+ ## [0.0.9] - 2011-04-08
127
+
128
+ * Simplied "attendees" part of the hash returned in get_meeting_info. Same
129
+ thing done for get_meetings.
130
+
131
+ ## [0.0.8] - 2011-04-06
132
+
133
+ * New method get_api_version that returns the version of the server API (>= 0.7).
134
+ * New simplified hash syntax for get_meetings. See docs for details.
135
+
136
+ ## [0.0.7] - 2011-04-06
137
+
138
+ ## [0.0.6] - 2011-04-05
139
+
140
+ * New method test_connection.
141
+ * Added comparison method for APIs.
142
+ * Methods attendee_url and moderator_url deprecated. Use join_meeting_url.
143
+ * Better exception throwing when the user is unreachable or the response is incorrect.
144
+ * BigBlueButtonException has now a "key" attribute to store the
145
+ "messageKey" returned by BBB in failures.
146
+
147
+ ## 0.0.4
148
+
149
+ * Added support for BigBlueButton 0.7.
150
+ * Gem renamed from 'bigbluebutton' to 'bigbluebutton-api-ruby'.
151
+ * API functions now return a hash and instead of the XML returned by BBB.
152
+ The XML is converted to a hash that uses symbols as keys and groups keys
153
+ with the same name.
154
+
155
+ ## 0.0.3
156
+
157
+ * Fixes module issue preventing proper throwing of exceptions.
158
+
159
+ ## 0.0.1
160
+
161
+ * This is the first version of this gem. It provides an implementation of
162
+ the 0.64 bbb API, with the following exceptions:
163
+ * Does not implement meeting token, and instead relies on meeting id as
164
+ the unique identifier for a meeting.
165
+ * Documentation suggests there is way to call join_meeting as API call
166
+ (instead of browser URL). This call currently does not work as
167
+ documented.
168
+
169
+ <!-- PRs -->
170
+ [#50]: https://github.com/mconf/bigbluebutton-api-ruby/pull/50
171
+ [#43]: https://github.com/mconf/bigbluebutton-api-ruby/pull/43
172
+ [#42]: https://github.com/mconf/bigbluebutton-api-ruby/pull/42
173
+ [#40]: https://github.com/mconf/bigbluebutton-api-ruby/pull/40
174
+ [#35]: https://github.com/mconf/bigbluebutton-api-ruby/pull/35
175
+ [#34]: https://github.com/mconf/bigbluebutton-api-ruby/pull/34
176
+ [#33]: https://github.com/mconf/bigbluebutton-api-ruby/pull/33
177
+ [#31]: https://github.com/mconf/bigbluebutton-api-ruby/pull/31
178
+ [#29]: https://github.com/mconf/bigbluebutton-api-ruby/pull/29
179
+
180
+ <!-- Versions -->
181
+ [1.8.0]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v1.7.0...v1.8.0
182
+ [1.7.0]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v1.6.0...v1.7.0
183
+ [1.6.0]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v1.5.0...v1.6.0
184
+ [1.5.0]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v1.4.0...v1.5.0
185
+ [1.4.0]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v1.3.0...v1.4.0
186
+ [1.3.0]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v1.2.0...v1.3.0
187
+ [1.2.0]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v1.1.1...v1.2.0
188
+ [1.1.1]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v1.1.0...v1.1.1
189
+ [1.1.0]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v1.0.0...v1.1.0
190
+ [1.0.0]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v0.1.0...v1.0.0
191
+ [0.1.0]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v0.0.11...v0.1.0
192
+ [0.0.11]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v0.0.10...v0.0.11
193
+ [0.0.10]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v0.0.9...v0.0.10
194
+ [0.0.9]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v0.0.8...v0.0.9
195
+ [0.0.8]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v0.0.7...v0.0.8
196
+ [0.0.7]: https://github.com/mconf/bigbluebutton-api-ruby/compare/v0.0.6...v0.0.7
197
+ [0.0.6]: https://github.com/mconf/bigbluebutton-api-ruby/compare/b586c4726d32e9c30139357bcbe2067f868ff36c...v0.0.6
data/Dockerfile ADDED
@@ -0,0 +1,13 @@
1
+ FROM ruby:2.6.5
2
+
3
+ ENV app /usr/src/app
4
+
5
+ # Create app directory
6
+ RUN mkdir -p $app
7
+ WORKDIR $app
8
+
9
+ # Bundle app source
10
+ COPY . $app
11
+
12
+ # Install app dependencies
13
+ RUN bundle install
data/Gemfile CHANGED
@@ -4,13 +4,13 @@ gemspec
4
4
 
5
5
  group :developement do
6
6
  gem 'rake', '>= 0.9'
7
- gem 'rdoc'
7
+ gem 'rdoc', '3.12.1'
8
8
  end
9
9
 
10
10
  group :development, :test do
11
11
  gem 'rspec', '~> 2.10'
12
12
  gem 'cucumber-rails'
13
13
  gem 'forgery'
14
- gem 'bbbot-ruby', :git => 'git://github.com/mconf/bbbot-ruby.git'
14
+ gem 'bbbot-ruby', :git => 'https://github.com/mconf/bbbot-ruby.git'
15
15
  # gem 'rails_best_practices'
16
16
  end
data/Gemfile.lock CHANGED
@@ -1,5 +1,5 @@
1
1
  GIT
2
- remote: git://github.com/mconf/bbbot-ruby.git
2
+ remote: https://github.com/mconf/bbbot-ruby.git
3
3
  revision: fcfd8c4c71371653335a46d7462ee14a9301f546
4
4
  specs:
5
5
  bbbot-ruby (0.0.1)
@@ -7,8 +7,14 @@ GIT
7
7
  PATH
8
8
  remote: .
9
9
  specs:
10
- bigbluebutton-api-ruby (1.3.0)
11
- xml-simple (>= 1.1.1)
10
+ bigbluebutton-api-ruby (1.8.0)
11
+ childprocess (>= 1.0.1)
12
+ ffi (>= 1.9.24)
13
+ json (>= 1.8.6)
14
+ nokogiri (>= 1.10.4)
15
+ rack (>= 1.6.11)
16
+ rubyzip (>= 1.3.0)
17
+ xml-simple (~> 1.1)
12
18
 
13
19
  GEM
14
20
  remote: http://rubygems.org/
@@ -22,8 +28,8 @@ GEM
22
28
  rack-test (>= 0.5.4)
23
29
  selenium-webdriver (~> 2.0)
24
30
  xpath (~> 0.1.4)
25
- childprocess (0.3.2)
26
- ffi (~> 1.0.6)
31
+ childprocess (1.0.1)
32
+ rake (< 13.0)
27
33
  cucumber (1.1.9)
28
34
  builder (>= 2.1.2)
29
35
  diff-lcs (>= 1.1.2)
@@ -35,22 +41,25 @@ GEM
35
41
  cucumber (>= 1.1.8)
36
42
  nokogiri (>= 1.5.0)
37
43
  diff-lcs (1.1.3)
38
- ffi (1.0.11)
44
+ ffi (1.9.24)
39
45
  forgery (0.5.0)
40
46
  gherkin (2.9.3)
41
47
  json (>= 1.4.6)
42
- json (1.7.0)
48
+ json (1.8.6)
43
49
  libwebsocket (0.1.3)
44
50
  addressable
45
51
  mime-types (1.18)
52
+ mini_portile2 (2.4.0)
46
53
  multi_json (1.3.4)
47
- nokogiri (1.5.2)
48
- rack (1.4.1)
54
+ nokogiri (1.10.4)
55
+ mini_portile2 (~> 2.4.0)
56
+ rack (1.6.11)
49
57
  rack-test (0.6.1)
50
58
  rack (>= 1.0)
51
59
  rake (0.9.2.2)
52
- rdoc (3.12)
60
+ rdoc (3.12.1)
53
61
  json (~> 1.4)
62
+ rexml (3.2.5)
54
63
  rspec (2.10.0)
55
64
  rspec-core (~> 2.10.0)
56
65
  rspec-expectations (~> 2.10.0)
@@ -59,7 +68,7 @@ GEM
59
68
  rspec-expectations (2.10.0)
60
69
  diff-lcs (~> 1.1.3)
61
70
  rspec-mocks (2.10.0)
62
- rubyzip (0.9.8)
71
+ rubyzip (1.3.0)
63
72
  selenium-webdriver (2.21.2)
64
73
  childprocess (>= 0.2.5)
65
74
  ffi (~> 1.0)
@@ -67,7 +76,8 @@ GEM
67
76
  multi_json (~> 1.0)
68
77
  rubyzip
69
78
  term-ansicolor (1.0.7)
70
- xml-simple (1.1.3)
79
+ xml-simple (1.1.9)
80
+ rexml
71
81
  xpath (0.1.4)
72
82
  nokogiri (~> 1.3)
73
83
 
@@ -80,5 +90,8 @@ DEPENDENCIES
80
90
  cucumber-rails
81
91
  forgery
82
92
  rake (>= 0.9)
83
- rdoc
93
+ rdoc (= 3.12.1)
84
94
  rspec (~> 2.10)
95
+
96
+ BUNDLED WITH
97
+ 1.17.3
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2011-2013 Mconf (http://mconf.org)
1
+ Copyright (c) 2011-2016 Mconf (http://mconf.org)
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining a copy of
4
4
  this software and associated documentation files (the "Software"), to deal in
data/README.md ADDED
@@ -0,0 +1,96 @@
1
+ # bigbluebutton-api-ruby [<img src="http://travis-ci.org/mconf/bigbluebutton-api-ruby.png"/>](http://travis-ci.org/mconf/bigbluebutton-api-ruby)
2
+
3
+ This is a ruby gem that provides access to the API of
4
+ [BigBlueButton](http://bigbluebutton.org). See the documentation of the API
5
+ [here](http://code.google.com/p/bigbluebutton/wiki/API).
6
+
7
+ It enables a ruby application to interact with BigBlueButton by calling ruby
8
+ methods instead of HTTP requests, making it a lot easier to interact with
9
+ BigBlueButton. It also formats the responses to a ruby-friendly format and
10
+ includes helper classes to deal with more complicated API calls, such as the
11
+ pre-upload of slides.
12
+
13
+ A few features it has:
14
+
15
+ * Provides methods to perform all API calls and get the responses;
16
+ * Converts the XML responses to ruby hashes, that are easier to work with;
17
+ * Converts the string values returned to native ruby types. For instance:
18
+ * Dates are converted DateTime objects (e.g. "Thu Sep 01 17:51:42 UTC 2011");
19
+ * Response codes are converted to boolean (e.g. "SUCCESS" becomes `true`);
20
+ * Deals with errors (e.g. timeouts) throwing `BigBlueButtonException` exceptions;
21
+ * Support to multiple BigBlueButton API versions (see below).
22
+
23
+ ## Supported versions
24
+
25
+ This gem is mainly used with [Mconf-Web](https://github.com/mconf/mconf-web) through
26
+ [BigbluebuttonRails](https://github.com/mconf/bigbluebutton_rails).
27
+ You can always use it as a reference for verions of dependencies and examples of how
28
+ to use the gem.
29
+
30
+ ### BigBlueButton
31
+
32
+ The current version of this gem supports *all* the following versions of
33
+ BigBlueButton:
34
+
35
+ * 1.0
36
+ * 0.9 (includes all 0.9.x)
37
+ * 0.81
38
+ * 0.8
39
+
40
+ Older versions:
41
+
42
+ * 0.7 (including 0.7, 0.71 and 0.71a): The last version with support to 0.7*
43
+ is [version
44
+ 1.2.0](https://github.com/mconf/bigbluebutton-api-ruby/tree/v1.2.0). It
45
+ supports versions 0.7 and 0.8.
46
+ * 0.64: see the branch `api-0.64`. The last version with support to 0.64 is
47
+ [version
48
+ 0.0.10](https://github.com/mconf/bigbluebutton-api-ruby/tree/v0.0.10). It
49
+ supports versions 0.64 and 0.7.
50
+
51
+ ### Ruby
52
+
53
+ Tested in rubies:
54
+
55
+ * ruby-2.2 **recommended**
56
+ * ruby-2.1
57
+ * ruby-2.0 (p353)
58
+ * ruby-1.9.3 (p484)
59
+ * ruby-1.9.2 (p290)
60
+
61
+ Use these versions to be sure it will work. Other patches and patch versions of these
62
+ rubies (e.g. ruby 1.9.3-p194 or 2.1.2) should work as well.
63
+
64
+ ## Releases
65
+
66
+ For a list of releases and release notes see
67
+ [CHANGELOG.md](https://github.com/mconf/bigbluebutton-api-ruby/blob/master/CHANGELOG.md).
68
+
69
+ ## Development
70
+
71
+ Information for developers of `bigbluebutton-api-ruby` can be found in [our
72
+ wiki](https://github.com/mconf/bigbluebutton-api-ruby/wiki).
73
+
74
+ The development of this gem is guided by the requirements of the project
75
+ Mconf. To know more about it visit the [project's
76
+ wiki](https://github.com/mconf/wiki/wiki).
77
+
78
+ ## License
79
+
80
+ Distributed under The MIT License (MIT). See
81
+ [LICENSE](https://github.com/mconf/bigbluebutton-api-ruby/blob/master/LICENSE)
82
+ for the latest license, valid for all versions after 0.0.4 (including it), and
83
+ [LICENSE_003](https://github.com/mconf/bigbluebutton-api-ruby/blob/master/LICENSE_003)
84
+ for version 0.0.3 and all the previous versions.
85
+
86
+ ## Contact
87
+
88
+ This project is developed as part of Mconf (http://mconf.org).
89
+
90
+ Mailing list:
91
+ * mconf-dev@googlegroups.com
92
+
93
+ Contact:
94
+ * Mconf: A scalable opensource multiconference system for web and mobile devices
95
+ * PRAV Labs - UFRGS - Porto Alegre - Brazil
96
+ * http://www.inf.ufrgs.br/prav/gtmconf
data/Rakefile CHANGED
@@ -5,19 +5,23 @@ require 'rspec/core/rake_task'
5
5
  require 'cucumber/rake/task'
6
6
 
7
7
  desc 'Default: run tests.'
8
- task :default => [:spec, :cucumber]
8
+ # task :default => [:spec, :cucumber]
9
+ task :default => :spec
9
10
 
10
11
  RSpec::Core::RakeTask.new(:spec)
11
12
 
12
13
  Cucumber::Rake::Task.new do |t|
13
14
 
15
+ # Disable all features that need the bot. It isn't working since BigBlueButton 0.81.
16
+ prepend = "--tags ~@need-bot"
17
+
14
18
  # in jruby the class BigBlueButtonBot doesn't work (it uses fork)
15
19
  if defined?(RUBY_ENGINE) and RUBY_ENGINE == 'jruby'
16
20
  puts "Jruby detected, ignoring features with @need-bot"
17
21
  prepend = "--tags ~@need-bot"
18
22
  end
19
23
 
20
- # defaults to BBB 0.81, that runs all tests
24
+ # defaults to the latest version, that runs all tests
21
25
  # if set to 0.8 only, won't run tests for newer versions
22
26
  if ENV["V"] == "0.8" or ENV["VERSION"] == "0.8"
23
27
  t.cucumber_opts = "--format pretty --tags ~@wip --tags @version-all #{prepend}"
@@ -27,8 +31,8 @@ Cucumber::Rake::Task.new do |t|
27
31
  end
28
32
 
29
33
  RDoc::Task.new do |rdoc|
30
- rdoc.rdoc_files.include('README.rdoc', 'LICENSE', 'LICENSE_003', 'CHANGELOG.rdoc', 'lib/**/*.rb')
31
- rdoc.main = "README.rdoc"
34
+ rdoc.rdoc_files.include('README.md', 'LICENSE', 'LICENSE_003', 'CHANGELOG.md', 'lib/**/*.rb')
35
+ rdoc.main = "README.md"
32
36
  rdoc.title = "bigbluebutton-api-ruby Docs"
33
37
  rdoc.rdoc_dir = 'rdoc'
34
38
  end
@@ -1,17 +1,24 @@
1
1
  $:.push File.expand_path("../lib", __FILE__)
2
2
 
3
3
  Gem::Specification.new do |s|
4
- s.name = 'bigbluebutton-api-ruby'
5
- s.version = '1.3.0'
6
- s.extra_rdoc_files = ['README.rdoc', 'LICENSE', 'LICENSE_003', 'CHANGELOG.rdoc']
7
- s.summary = 'Provides an interface to the BigBlueButton web meeting API (https://github.com/mconf/bigbluebutton-api-ruby)'
8
- s.description = s.summary
9
- s.authors = ['Leonardo Crauss Daronco', 'Joe Kinsella']
10
- s.email = ['leonardodaronco@gmail.com', 'joe.kinsella@gmail.com']
11
- s.homepage = "https://github.com/mconf/bigbluebutton-api-ruby/"
12
- s.bindir = "bin"
13
- s.files = `git ls-files`.split("\n")
14
- s.require_paths = ["lib"]
4
+ s.name = "bigbluebutton-api-ruby"
5
+ s.version = "1.8.0"
6
+ s.licenses = ["MIT"]
7
+ s.extra_rdoc_files = ["README.md", "LICENSE", "LICENSE_003", "CHANGELOG.md"]
8
+ s.summary = "BigBlueButton integration for ruby"
9
+ s.description = "Provides methods to access BigBlueButton in a ruby application through its API"
10
+ s.authors = ["Mconf", "Leonardo Crauss Daronco"]
11
+ s.email = ["contact@mconf.org", "leonardodaronco@gmail.com"]
12
+ s.homepage = "https://github.com/mconf/bigbluebutton-api-ruby/"
13
+ s.bindir = "bin"
14
+ s.files = `git ls-files`.split("\n")
15
+ s.require_paths = ["lib"]
15
16
 
16
- s.add_runtime_dependency('xml-simple', '>= 1.1.1')
17
+ s.add_runtime_dependency('childprocess', '>= 1.0.1')
18
+ s.add_runtime_dependency('ffi', '>= 1.9.24')
19
+ s.add_runtime_dependency('json', '>= 1.8.6')
20
+ s.add_runtime_dependency('nokogiri', '>= 1.10.4')
21
+ s.add_runtime_dependency('rack', '>= 1.6.11')
22
+ s.add_runtime_dependency('rubyzip', '>= 1.3.0')
23
+ s.add_runtime_dependency('xml-simple', '~> 1.1')
17
24
  end
@@ -0,0 +1,10 @@
1
+ version: '2'
2
+ services:
3
+
4
+ test:
5
+ build: .
6
+ tty: true
7
+ volumes:
8
+ - $PWD:/usr/src/app
9
+ - .volumes/bundle/:/usr/local/bundle
10
+ command: bundle exec rake
@@ -7,11 +7,9 @@ require 'prepare'
7
7
  begin
8
8
  prepare
9
9
 
10
- @api = BigBlueButton::BigBlueButtonApi.new(@config['bbb_url'], @config['bbb_salt'], nil, true)
11
-
12
10
  puts
13
11
  puts "---------------------------------------------------"
14
- puts "The version of your BBB server is: #{@api.version}"
12
+ puts "The version of your BBB server is: #{@api.get_api_version}"
15
13
  rescue Exception => ex
16
14
  puts "Failed with error #{ex.message}"
17
15
  puts ex.backtrace
@@ -10,7 +10,6 @@ begin
10
10
  meeting_name = "Test Meeting"
11
11
  meeting_id = "test-meeting"
12
12
  moderator_name = "House"
13
- attendee_name = "Cameron"
14
13
  unless @api.is_meeting_running?(meeting_id)
15
14
  puts "---------------------------------------------------"
16
15
  options = { :moderatorPW => "54321",
data/examples/prepare.rb CHANGED
@@ -34,5 +34,5 @@ def prepare
34
34
  puts server.inspect
35
35
  puts
36
36
 
37
- @api = BigBlueButton::BigBlueButtonApi.new(server['url'], server['salt'], server['version'].to_s, true)
37
+ @api = BigBlueButton::BigBlueButtonApi.new(server['url'], server['secret'], server['version'].to_s, true)
38
38
  end
@@ -1,4 +1,4 @@
1
- debug: false
1
+ logger: nil
2
2
 
3
3
  # maximum wait for a response to any API request (secs)
4
4
  timeout_req: 60
@@ -10,13 +10,9 @@ timeout_ending: 30
10
10
  timeout_bot_start: 60
11
11
 
12
12
  servers:
13
- test-install-081:
14
- salt: '8cd8ef52e8e101574e400365b55e11a6'
13
+ test-install:
15
14
  url: 'http://test-install.blindsidenetworks.com/bigbluebutton/api'
16
- version: '0.81'
17
- mobile_salt: '03b07' # needed for >= 0.8
18
- bbb-08:
19
- salt: 'lka98f52e8akdlsoie400365b55e98s7'
15
+ secret: '8cd8ef52e8e101574e400365b55e11a6'
16
+ bbb-other:
20
17
  url: 'http://yourserver.com/bigbluebutton/api'
21
- version: '0.8'
22
- mobile_salt: '03b07' # needed for >= 0.8
18
+ secret: 'lka98f52e8akdlsoie400365b55e98s7'
@@ -2,9 +2,9 @@
2
2
 
3
3
  When /^the default BigBlueButton server$/ do
4
4
  @api = BigBlueButton::BigBlueButtonApi.new(@config_server['url'],
5
- @config_server['salt'],
5
+ @config_server['secret'],
6
6
  @config_server['version'].to_s,
7
- @config['debug'])
7
+ @config['logger'])
8
8
  @api.timeout = @config['timeout_req']
9
9
  end
10
10
 
@@ -48,8 +48,7 @@ When /^the meeting is running$/ do
48
48
  end
49
49
 
50
50
  When /^the meeting is running with (\d+) attendees$/ do |count|
51
- mobile_salt = @config_server.has_key?('mobile_salt') ? @config_server['mobile_salt'] : ""
52
- BigBlueButtonBot.new(@api, @req.id, mobile_salt, count.to_i, @config['timeout_bot_start'])
51
+ BigBlueButtonBot.new(@api, @req.id, nil, count.to_i, @config['timeout_bot_start'])
53
52
  end
54
53
 
55
54
  When /^the response is an error with the key "(.*)"$/ do |key|