zoom_rb 0.8.6 → 0.8.7

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 87d7cc4ec57a2ec29ae1f363155844a1dcab08454beb12dafa37c87b4c14d5c3
4
- data.tar.gz: bce3d9b5ba1cb6da18f8d647c8f7f99aa333083360f121714ef455e1f7730818
3
+ metadata.gz: 9c6bdaacbf4a10b0f14d9cba48f13b9cccc9e7ed1d0aa3b5e9d20c4b7b0acefd
4
+ data.tar.gz: 80732724df8e317b58d7c9814db9862d429dac3ffbeff2535ab7bc28160bd5a9
5
5
  SHA512:
6
- metadata.gz: 8d0cc2484ddfae76d99b745113e2376d41796f456bbff4d4bfa000086d5f5f7e5e6c30f29abacfd746aa931490620298aeadf268bf759342abea316c5ac5ccc7
7
- data.tar.gz: 1bac71bc72c540a63af1929d50e28def004c9ea1c33e520a30a4f92c435384567ebfeb1b3acbcc53d3f5878172b7485f3d5bcde646f46289fc3ca929cd5aecf9
6
+ metadata.gz: 450e7576c8c0ff966c54dc94a7986d5025dfaaade64592c57f24ad3fc218e35d6494d01d2dea7f91872f904b2518ea651a61df306f5ae1e56d403fe2c15b1e3f
7
+ data.tar.gz: 8b9984d94f4dd49849a08d2416ea2fd1c952c91a744815f0b3521669bc4164d384bc4fc1a9e90532beb4e37ea60dbecde1ce98e4d50ff9b7df0d7fd9a7d21443
@@ -3,24 +3,52 @@
3
3
  module Zoom
4
4
  module Actions
5
5
  module Report
6
- def report_getaccountreport(*args)
7
- options = Utils.extract_options!(args)
8
- Utils.require_params(%i[from to], options)
9
- Utils.process_datetime_params!(%i[from to], options)
10
- Utils.parse_response self.class.post('/report/getaccountreport', query: options)
6
+ def daily_report(*args)
7
+ params = Zoom::Params.new(Utils.extract_options!(args))
8
+ params.permit(:year, :month)
9
+ Utils.parse_response self.class.get('/report/daily', query: params)
11
10
  end
12
11
 
13
- def report_getuserreport(*args)
14
- options = Utils.extract_options!(args)
15
- Utils.require_params(%i[user_id from to], options)
16
- Utils.process_datetime_params!(%i[from to], options)
17
- Utils.parse_response self.class.post('/report/getuserreport', query: options)
12
+ def hosts_report(*args)
13
+ # TODO: implement hosts_report
18
14
  end
19
15
 
20
- def report_getdailyreport(*args)
21
- options = Utils.extract_options!(args)
22
- Utils.require_params(%i[year month], options)
23
- Utils.parse_response self.class.post('/report/getdailyreport', query: options)
16
+ def meetings_report(*args)
17
+ # TODO: implement meetings_report
18
+ end
19
+
20
+ def meeting_details_report(*args)
21
+ # TODO: implement meeting_details_report
22
+ end
23
+
24
+ def meeting_participants_report(*args)
25
+ # TODO: implement meeting_participants_report
26
+ end
27
+
28
+ def meeting_polls_report(*args)
29
+ # TODO: implement meeting_polls_report
30
+ end
31
+
32
+ def webinar_details_report(*args)
33
+ # TODO: implement webinar_details_report
34
+ end
35
+
36
+ def webinar_participants_report(*args)
37
+ params = Zoom::Params.new(Utils.extract_options!(args))
38
+ params.require(:id).permit(:page_size, :next_page_token)
39
+ Utils.parse_response self.class.get("/report/webinars/#{params[:id]}/participants", query: params.except(:id).merge(access_token: access_token))
40
+ end
41
+
42
+ def webinar_polls_report(*args)
43
+ # TODO: implement report_hosts
44
+ end
45
+
46
+ def webinar_qa_report(*args)
47
+ # TODO: implement report_hosts
48
+ end
49
+
50
+ def telephone_report(*args)
51
+ # TODO: implement report_hosts
24
52
  end
25
53
  end
26
54
  end
@@ -0,0 +1,18 @@
1
+ {
2
+ "page_count": 1,
3
+ "page_size": 1,
4
+ "total_records": 1,
5
+ "next_page_token": "test",
6
+ "participants": [
7
+ {
8
+ "id": "test-uuid",
9
+ "user_id": "test@test.com",
10
+ "name": "Test",
11
+ "user_email": "testuser@test.com",
12
+ "join_time": "2019-01-01T09:00:00Z",
13
+ "leave_time": "2019-01-01T09:00:00Z",
14
+ "duration": 60,
15
+ "attentiveness_score": "10"
16
+ }
17
+ ]
18
+ }
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+
5
+ describe Zoom::Actions::Report do
6
+ let(:zc) { zoom_client }
7
+ let(:args) { { id: '123456789' } }
8
+
9
+ describe '#webinar_participants_report' do
10
+ context 'with a valid response' do
11
+ before :each do
12
+ stub_request(
13
+ :get,
14
+ zoom_url("/report/webinars/#{args[:id]}/participants")
15
+ ).to_return(status: 200,
16
+ body: json_response('report', 'webinar', 'participants'),
17
+ headers: {"Content-Type"=> "application/json"})
18
+ end
19
+
20
+ it "requires a 'id' argument" do
21
+ expect { zc.webinar_participants_report(filter_key(args, :id)) }.to raise_error(Zoom::ParameterMissing, [:id].to_s)
22
+ end
23
+
24
+ it 'returns an array of participants' do
25
+ expect(zc.webinar_participants_report(args)['participants']).to be_kind_of(Array)
26
+ end
27
+ end
28
+
29
+ context 'with a 4xx response' do
30
+ before :each do
31
+ stub_request(
32
+ :get,
33
+ zoom_url("/report/webinars/#{args[:id]}/participants")
34
+ ).to_return(status: 404,
35
+ body: json_response('error', 'not_found'),
36
+ headers: {"Content-Type"=> "application/json"})
37
+ end
38
+
39
+ it 'raises an error' do
40
+ expect { zc.webinar_participants_report(args) }.to raise_error(Zoom::Error)
41
+ end
42
+ end
43
+ end
44
+ end
@@ -25,5 +25,5 @@ Gem::Specification.new do |gem|
25
25
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
26
26
  gem.name = 'zoom_rb'
27
27
  gem.require_paths = ['lib']
28
- gem.version = '0.8.6'
28
+ gem.version = '0.8.7'
29
29
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zoom_rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.6
4
+ version: 0.8.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kyle Boe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-11-30 00:00:00.000000000 Z
11
+ date: 2019-01-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty
@@ -190,10 +190,7 @@ files:
190
190
  - spec/fixtures/recording_delete.json
191
191
  - spec/fixtures/recording_get.json
192
192
  - spec/fixtures/recording_list.json
193
- - spec/fixtures/report/getaccountreport.json
194
- - spec/fixtures/report/getaudioreport.json
195
- - spec/fixtures/report/getdailyreport.json
196
- - spec/fixtures/report/getuserreport.json
193
+ - spec/fixtures/report/webinar/participants.json
197
194
  - spec/fixtures/report_getaccountreport.json
198
195
  - spec/fixtures/report_getdailyreport.json
199
196
  - spec/fixtures/report_getuserreport.json
@@ -272,10 +269,17 @@ files:
272
269
  - spec/lib/zoom/actions/recording/get_spec.rb
273
270
  - spec/lib/zoom/actions/recording/list_spec.rb
274
271
  - spec/lib/zoom/actions/recording/mc_list_spec.rb
275
- - spec/lib/zoom/actions/report/getaccountreport_spec.rb
276
- - spec/lib/zoom/actions/report/getaudioreport_spec.rb
277
- - spec/lib/zoom/actions/report/getdailyreport_spec.rb
278
- - spec/lib/zoom/actions/report/getuserreport_spec.rb
272
+ - spec/lib/zoom/actions/report/daily_report_spec.rb
273
+ - spec/lib/zoom/actions/report/hosts_report_spec.rb
274
+ - spec/lib/zoom/actions/report/meeting_details_report_spec.rb
275
+ - spec/lib/zoom/actions/report/meeting_participants_report_spec.rb
276
+ - spec/lib/zoom/actions/report/meeting_polls_report_spec.rb
277
+ - spec/lib/zoom/actions/report/meetings_report_spec.rb
278
+ - spec/lib/zoom/actions/report/telephone_report_spec.rb
279
+ - spec/lib/zoom/actions/report/webinar_details_report_spec.rb
280
+ - spec/lib/zoom/actions/report/webinar_participants_report_spec.rb
281
+ - spec/lib/zoom/actions/report/webinar_polls_report_spec.rb
282
+ - spec/lib/zoom/actions/report/webinar_qa_report_spec.rb
279
283
  - spec/lib/zoom/actions/user/activate_spec.rb
280
284
  - spec/lib/zoom/actions/user/assistant/delete_spec.rb
281
285
  - spec/lib/zoom/actions/user/assistant/set_spec.rb
@@ -362,10 +366,7 @@ test_files:
362
366
  - spec/fixtures/recording_delete.json
363
367
  - spec/fixtures/recording_get.json
364
368
  - spec/fixtures/recording_list.json
365
- - spec/fixtures/report/getaccountreport.json
366
- - spec/fixtures/report/getaudioreport.json
367
- - spec/fixtures/report/getdailyreport.json
368
- - spec/fixtures/report/getuserreport.json
369
+ - spec/fixtures/report/webinar/participants.json
369
370
  - spec/fixtures/report_getaccountreport.json
370
371
  - spec/fixtures/report_getdailyreport.json
371
372
  - spec/fixtures/report_getuserreport.json
@@ -444,10 +445,17 @@ test_files:
444
445
  - spec/lib/zoom/actions/recording/get_spec.rb
445
446
  - spec/lib/zoom/actions/recording/list_spec.rb
446
447
  - spec/lib/zoom/actions/recording/mc_list_spec.rb
447
- - spec/lib/zoom/actions/report/getaccountreport_spec.rb
448
- - spec/lib/zoom/actions/report/getaudioreport_spec.rb
449
- - spec/lib/zoom/actions/report/getdailyreport_spec.rb
450
- - spec/lib/zoom/actions/report/getuserreport_spec.rb
448
+ - spec/lib/zoom/actions/report/daily_report_spec.rb
449
+ - spec/lib/zoom/actions/report/hosts_report_spec.rb
450
+ - spec/lib/zoom/actions/report/meeting_details_report_spec.rb
451
+ - spec/lib/zoom/actions/report/meeting_participants_report_spec.rb
452
+ - spec/lib/zoom/actions/report/meeting_polls_report_spec.rb
453
+ - spec/lib/zoom/actions/report/meetings_report_spec.rb
454
+ - spec/lib/zoom/actions/report/telephone_report_spec.rb
455
+ - spec/lib/zoom/actions/report/webinar_details_report_spec.rb
456
+ - spec/lib/zoom/actions/report/webinar_participants_report_spec.rb
457
+ - spec/lib/zoom/actions/report/webinar_polls_report_spec.rb
458
+ - spec/lib/zoom/actions/report/webinar_qa_report_spec.rb
451
459
  - spec/lib/zoom/actions/user/activate_spec.rb
452
460
  - spec/lib/zoom/actions/user/assistant/delete_spec.rb
453
461
  - spec/lib/zoom/actions/user/assistant/set_spec.rb
@@ -1,23 +0,0 @@
1
- {
2
- "page_count": 1,
3
- "page_number": 1,
4
- "page_size": 30,
5
- "total_records": 5,
6
- "from": "2013-5-19",
7
- "to": "2013-5-20",
8
- "total_meetings": 50,
9
- "total_participants": 100,
10
- "total_meeting_minutes": 100,
11
- "users": [
12
- {
13
- "user_id": "bNsPi5hCQ-qOzWn2EeCXJA",
14
- "email": "john@sample.com",
15
- "type": 2,
16
- "meetings": 10,
17
- "participants": 56,
18
- "meeting_minutes": 300,
19
- "last_client_version": "1.0.18584.0225",
20
- "last_login_time": "2013-02-11T08:18:09Z"
21
- }
22
- ]
23
- }
@@ -1,22 +0,0 @@
1
- {
2
- "from": "2016-01-08",
3
- "to": "2016-01-21",
4
- "page_count": 1,
5
- "page_number": 1,
6
- "page_size": 30,
7
- "total_records": 1,
8
- "telephony_usage": [
9
- {
10
- "meeting_id": 2932547621,
11
- "phone_number": "+86 8208",
12
- "type": "call-out",
13
- "host_name": "test",
14
- "host_email": "zoom.test@zoom.us",
15
- "department": "",
16
- "start_time": "2016-01-12T02:25:34Z",
17
- "end_time": "2016-01-12T02:26:48Z",
18
- "duration": 2,
19
- "total": 0.12
20
- }
21
- ]
22
- }
@@ -1,13 +0,0 @@
1
- {
2
- "year": 2013,
3
- "month": 5,
4
- "dates": [
5
- {
6
- "meetings": 0,
7
- "date": "2013-05-01",
8
- "new_user": 0,
9
- "participants": 0,
10
- "meeting_minutes": 0
11
- }
12
- ]
13
- }
@@ -1,24 +0,0 @@
1
- {
2
- "page_count": 1,
3
- "page_number": 1,
4
- "page_size": 30,
5
- "total_records": 5,
6
- "from": "2013-5-19",
7
- "to": "2013-5-20",
8
- "meetings": [
9
- {
10
- "number": 111111111,
11
- "topic": "Meeting Topic",
12
- "start_time": "2013-02-11T08:18:09Z",
13
- "end_time": "2013-02-11T09:18:09Z",
14
- "duration": 60,
15
- "participants": [
16
- {
17
- "name": "John",
18
- "join_time": "2013-02-11T08:30:09Z",
19
- "leave_time": "2013-02-11T08:50:09Z"
20
- }
21
- ]
22
- }
23
- ]
24
- }
@@ -1,57 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'spec_helper'
4
-
5
- xdescribe Zoom::Actions::Report do
6
- let(:zc) { zoom_client}
7
- let(:args) { { from: '2013-04-05T15:50:47Z', to: '2013-04-09T19:00:00Z' } }
8
- let(:response) { zc.report_getaccountreport(args) }
9
-
10
- xdescribe '#report_getaccountreport action' do
11
- before :each do
12
- stub_request(
13
- :post,
14
- zoom_url('/report/getaccountreport')
15
- ).to_return(body: json_response('report_getaccountreport'))
16
- end
17
-
18
- it "requires a 'from' argument" do
19
- expect {
20
- zc.report_getaccountreport(filter_key(args, :from))
21
- }.to raise_error(ArgumentError)
22
- end
23
-
24
- it "requires a 'to' argument" do
25
- expect {
26
- zc.report_getaccountreport(filter_key(args, :to))
27
- }.to raise_error(ArgumentError)
28
- end
29
-
30
- it 'returns a hash' do
31
- expect(response).to be_kind_of(Hash)
32
- end
33
-
34
- it "returns 'total_records'" do
35
- expect(response['total_records']).to eq(1)
36
- end
37
-
38
- it "returns 'users' Array" do
39
- expect(response['users']).to be_kind_of(Array)
40
- end
41
- end
42
-
43
- xdescribe '#report_getaccountreport! action' do
44
- before :each do
45
- stub_request(
46
- :post,
47
- zoom_url('/report/getaccountreport')
48
- ).to_return(body: json_response('error'))
49
- end
50
-
51
- it 'raises Zoom::Error exception' do
52
- expect {
53
- zc.report_getaccountreport!(args)
54
- }.to raise_error(Zoom::Error)
55
- end
56
- end
57
- end
@@ -1,3 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'spec_helper'
@@ -1,62 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'spec_helper'
4
-
5
- xdescribe Zoom::Actions::Report do
6
- before :all do
7
- @zc = zoom_client
8
- @args = { year: 2017, month: 7 }
9
- end
10
-
11
- xdescribe '#report_getdailyreport action' do
12
- before :each do
13
- stub_request(
14
- :post,
15
- zoom_url('/report/getdailyreport')
16
- ).to_return(body: json_response('report_getdailyreport'))
17
- end
18
-
19
- it "requires a 'year' argument" do
20
- expect {
21
- @zc.report_getdailyreport(filter_key(@args, :year))
22
- }.to raise_error(ArgumentError)
23
- end
24
-
25
- it "requires a 'month' argument" do
26
- expect {
27
- @zc.report_getdailyreport(filter_key(@args, :month))
28
- }.to raise_error(ArgumentError)
29
- end
30
-
31
- it 'returs a Hash' do
32
- expect(@zc.report_getdailyreport(@args)).to be_kind_of(Hash)
33
- end
34
-
35
- it "returns a 'year'" do
36
- expect(@zc.report_getdailyreport(@args)['year']).to eq(@args[:year])
37
- end
38
-
39
- it "returns a 'month'" do
40
- expect(@zc.report_getdailyreport(@args)['month']).to eq(@args[:month])
41
- end
42
-
43
- it "returns a 'dates' Array" do
44
- expect(@zc.report_getdailyreport(@args)['dates']).to be_kind_of(Array)
45
- end
46
- end
47
-
48
- xdescribe '#report_getdailyreport! action' do
49
- before :each do
50
- stub_request(
51
- :post,
52
- zoom_url('/report/getdailyreport')
53
- ).to_return(body: json_response('error'))
54
- end
55
-
56
- it 'raises Zoom::Error exception' do
57
- expect {
58
- @zc.report_getdailyreport!(@args)
59
- }.to raise_error(Zoom::Error)
60
- end
61
- end
62
- end
@@ -1,67 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'spec_helper'
4
-
5
- xdescribe Zoom::Actions::Report do
6
-
7
- before :all do
8
- @zc = zoom_client
9
- @args = { from: '2013-04-05T15:50:47Z',
10
- to: '2013-04-09T19:00:00Z',
11
- user_id: 'ufR93M2pRyy8ePFN92dttq' }
12
- end
13
-
14
- xdescribe '#report_getuserreport action' do
15
- before :each do
16
- stub_request(
17
- :post,
18
- zoom_url('/report/getuserreport')
19
- ).to_return(body: json_response('report_getuserreport'))
20
- end
21
-
22
- it "requires a 'user_id' argument" do
23
- expect {
24
- @zc.report_getuserreport(filter_key(@args, :user_id))
25
- }.to raise_error(ArgumentError)
26
- end
27
-
28
- it "requires a 'from' argument" do
29
- expect {
30
- @zc.report_getuserreport(filter_key(@args, :from))
31
- }.to raise_error(ArgumentError)
32
- end
33
-
34
- it "requires a 'to' argument" do
35
- expect {
36
- @zc.report_getuserreport(filter_key(@args, :to))
37
- }.to raise_error(ArgumentError)
38
- end
39
-
40
- it 'returns a hash' do
41
- expect(@zc.report_getuserreport(@args)).to be_kind_of(Hash)
42
- end
43
-
44
- it "returns 'total_records'" do
45
- expect(@zc.report_getuserreport(@args)['total_records']).to eq(1)
46
- end
47
-
48
- it "returns 'meetings' Array" do
49
- expect(@zc.report_getuserreport(@args)['meetings']).to be_kind_of(Array)
50
- end
51
- end
52
-
53
- xdescribe '#report_getuserreport! action' do
54
- before :each do
55
- stub_request(
56
- :post,
57
- zoom_url('/report/getuserreport')
58
- ).to_return(body: json_response('error'))
59
- end
60
-
61
- it 'raises Zoom::Error exception' do
62
- expect {
63
- @zc.report_getuserreport!(@args)
64
- }.to raise_error(Zoom::Error)
65
- end
66
- end
67
- end