zoom_rb 1.1.8 → 1.1.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.
- checksums.yaml +4 -4
- data/.github/workflows/ruby.yml +2 -2
- data/Gemfile.lock +3 -3
- data/lib/zoom/actions/meeting.rb +7 -1
- data/lib/zoom/actions/recording.rb +5 -0
- data/lib/zoom/actions/report.rb +2 -2
- data/lib/zoom/actions/user.rb +1 -1
- data/lib/zoom/version.rb +1 -1
- data/spec/fixtures/meeting/get_survey.json +21 -0
- data/spec/fixtures/recording/analytics_details.json +15 -0
- data/spec/fixtures/recording/analytics_summary.json +16 -0
- data/spec/lib/zoom/actions/meeting/get_survey_spec.rb +25 -0
- data/spec/lib/zoom/actions/recording/analytics_details_spec.rb +56 -0
- data/spec/lib/zoom/actions/recording/analytics_summary_spec.rb +44 -0
- metadata +18 -6
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 0a720d6f32016994f2e4c5246bfd2b460dd9ae6e8c5580682bce9a33c7f758fd
|
|
4
|
+
data.tar.gz: 5d63cee99f19064e6a2887ab691d9c611aa460aefdd3b6db6dd1c2bed071ae78
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a4b6ebc0a0a1f7cc247392ea64a1765db4d6c311470a23d28b839c7f2a78b49413188f485f1f7653412cac153add76f230161a1b12e8026bed915f03a2463030
|
|
7
|
+
data.tar.gz: 828410a4b13b845ca46de5d44d4d28b4600abeafaf9c94c6d6bc83bfd9c40362c8b14e582ebda2638a74222c27d806c3649a42abc0988dbd636f1ab16a4f4cc4
|
data/.github/workflows/ruby.yml
CHANGED
|
@@ -10,7 +10,7 @@ jobs:
|
|
|
10
10
|
test:
|
|
11
11
|
strategy:
|
|
12
12
|
matrix:
|
|
13
|
-
ruby: ['3.0', '3.1', '3.2']
|
|
13
|
+
ruby: ['3.0', '3.1', '3.2', '3.3']
|
|
14
14
|
runs-on: ubuntu-latest
|
|
15
15
|
|
|
16
16
|
steps:
|
|
@@ -37,4 +37,4 @@ jobs:
|
|
|
37
37
|
uses: coverallsapp/github-action@v2
|
|
38
38
|
with:
|
|
39
39
|
parallel-finished: true
|
|
40
|
-
carryforward: "ruby-3.0,ruby-3.1,ruby-3.2"
|
|
40
|
+
carryforward: "ruby-3.0,ruby-3.1,ruby-3.2,ruby-3.3"
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
zoom_rb (1.1.
|
|
4
|
+
zoom_rb (1.1.9)
|
|
5
5
|
httparty (>= 0.13)
|
|
6
6
|
json (>= 1.8)
|
|
7
7
|
jwt
|
|
@@ -36,9 +36,9 @@ GEM
|
|
|
36
36
|
i18n (1.12.0)
|
|
37
37
|
concurrent-ruby (~> 1.0)
|
|
38
38
|
json (2.6.3)
|
|
39
|
-
jwt (2.7.
|
|
39
|
+
jwt (2.7.1)
|
|
40
40
|
method_source (1.0.0)
|
|
41
|
-
mini_mime (1.1.
|
|
41
|
+
mini_mime (1.1.5)
|
|
42
42
|
minitest (5.18.0)
|
|
43
43
|
multi_xml (0.6.0)
|
|
44
44
|
parallel (1.22.1)
|
data/lib/zoom/actions/meeting.rb
CHANGED
|
@@ -13,7 +13,7 @@ module Zoom
|
|
|
13
13
|
post 'meeting_create', '/users/:user_id/meetings',
|
|
14
14
|
permit: %i[
|
|
15
15
|
topic type start_time duration schedule_for timezone password default_password agenda tracking_fields
|
|
16
|
-
recurrence settings template_id
|
|
16
|
+
recurrence settings template_id pre_schedule
|
|
17
17
|
]
|
|
18
18
|
|
|
19
19
|
# Get a meeting on Zoom via meeting ID, return the meeting info.
|
|
@@ -75,6 +75,12 @@ module Zoom
|
|
|
75
75
|
|
|
76
76
|
# Get a meeting on Zoom via meeting ID, return the meeting info.
|
|
77
77
|
get 'meeting_invitation', '/meetings/:meeting_id/invitation'
|
|
78
|
+
|
|
79
|
+
# Support for meeting surveys
|
|
80
|
+
# https://developers.zoom.us/docs/api/rest/reference/zoom-api/methods/#operation/meetingSurveyGet
|
|
81
|
+
get "meeting_survey", "/meetings/:meeting_id/survey"
|
|
82
|
+
delete "meeting_delete_survey", "/meetings/:meeting_id/survey"
|
|
83
|
+
patch "meeting_update_survey", "/meetings/:meeting_id/survey"
|
|
78
84
|
end
|
|
79
85
|
end
|
|
80
86
|
end
|
|
@@ -15,6 +15,11 @@ module Zoom
|
|
|
15
15
|
|
|
16
16
|
get 'meeting_recording_settings_get', '/meetings/:meeting_id/recordings/settings'
|
|
17
17
|
|
|
18
|
+
get 'meeting_recording_analytics_summary', '/meetings/:meeting_id/recordings/analytics_summary'
|
|
19
|
+
|
|
20
|
+
get 'meeting_recording_analytics_details', '/meetings/:meeting_id/recordings/analytics_details',
|
|
21
|
+
permit: %i[page_size next_page_token from to type]
|
|
22
|
+
|
|
18
23
|
patch 'meeting_recording_settings_update', '/meetings/:meeting_id/recordings/settings',
|
|
19
24
|
permit: RECORDING_SETTINGS_KEYS
|
|
20
25
|
|
data/lib/zoom/actions/report.rb
CHANGED
|
@@ -11,10 +11,10 @@ module Zoom
|
|
|
11
11
|
get 'meeting_details_report', '/report/meetings/:id'
|
|
12
12
|
|
|
13
13
|
get 'meeting_participants_report', '/report/meetings/:id/participants',
|
|
14
|
-
permit: %i[page_size next_page_token]
|
|
14
|
+
permit: %i[page_size next_page_token include_fields]
|
|
15
15
|
|
|
16
16
|
get 'webinar_participants_report', '/report/webinars/:id/participants',
|
|
17
|
-
permit: %i[page_size next_page_token]
|
|
17
|
+
permit: %i[page_size next_page_token include_fields]
|
|
18
18
|
|
|
19
19
|
get 'webinar_details_report', '/report/webinars/:webinar_id'
|
|
20
20
|
end
|
data/lib/zoom/actions/user.rb
CHANGED
|
@@ -21,7 +21,7 @@ module Zoom
|
|
|
21
21
|
permit: :login_type
|
|
22
22
|
|
|
23
23
|
patch 'user_update', '/users/:id',
|
|
24
|
-
permit: %i[first_name last_name type pmi timezone dept vanity_name host_key cms_user_id]
|
|
24
|
+
permit: %i[first_name last_name type pmi timezone dept vanity_name host_key cms_user_id custom_attributes]
|
|
25
25
|
|
|
26
26
|
delete 'user_delete', '/users/:id',
|
|
27
27
|
permit: %i[action transfer_email transfer_meeting transfer_webinar transfer_recording]
|
data/lib/zoom/version.rb
CHANGED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"custom_survey": {
|
|
3
|
+
"title": "Feedback on your live lecture",
|
|
4
|
+
"anonymous": false,
|
|
5
|
+
"feedback": "Thank you so much for taking the time to complete the survey. Your feedback really makes a difference.",
|
|
6
|
+
"questions": [
|
|
7
|
+
{
|
|
8
|
+
"name": "How useful was this lecture?",
|
|
9
|
+
"type": "rating_scale",
|
|
10
|
+
"answer_required": true,
|
|
11
|
+
"rating_min_value": 1,
|
|
12
|
+
"rating_max_value": 5,
|
|
13
|
+
"rating_min_label": "There is room for improvement",
|
|
14
|
+
"rating_max_label": "Very useful, I feel I learned a lot"
|
|
15
|
+
}
|
|
16
|
+
],
|
|
17
|
+
"numbered_questions": false,
|
|
18
|
+
"show_question_type": false
|
|
19
|
+
},
|
|
20
|
+
"show_in_the_browser": true
|
|
21
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"from":"2023-01-01",
|
|
3
|
+
"to":"2023-01-02",
|
|
4
|
+
"next_page_token":"",
|
|
5
|
+
"page_size":30,
|
|
6
|
+
"total_records":1,
|
|
7
|
+
"analytics_details": [
|
|
8
|
+
{
|
|
9
|
+
"name":"John Doe",
|
|
10
|
+
"email":"john.doe@example.com",
|
|
11
|
+
"duration":1234,
|
|
12
|
+
"date_time":"2023-01-01T11:25:01Z"
|
|
13
|
+
}
|
|
14
|
+
]
|
|
15
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"from":"2023-01-01",
|
|
3
|
+
"to":"2023-01-02",
|
|
4
|
+
"analytics_summary": [
|
|
5
|
+
{
|
|
6
|
+
"date":"2023-01-01",
|
|
7
|
+
"views_total_count":8,
|
|
8
|
+
"downloads_total_count":0
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"date":"2023-01-02",
|
|
12
|
+
"views_total_count": 13,
|
|
13
|
+
"downloads_total_count": 1
|
|
14
|
+
}
|
|
15
|
+
]
|
|
16
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'spec_helper'
|
|
4
|
+
|
|
5
|
+
describe Zoom::Actions::Meeting do
|
|
6
|
+
let(:zc) { zoom_client }
|
|
7
|
+
let(:args) { { meeting_id: 1 } }
|
|
8
|
+
|
|
9
|
+
describe '#meeting_survey action' do
|
|
10
|
+
before :each do
|
|
11
|
+
stub_request(
|
|
12
|
+
:get,
|
|
13
|
+
zoom_url("/meetings/#{args[:meeting_id]}/survey")
|
|
14
|
+
).to_return(body: json_response('meeting', 'get_survey'), headers: { 'Content-Type' => 'application/json' })
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
it 'returns a hash' do
|
|
18
|
+
expect(zc.meeting_survey(args)).to be_kind_of(Hash)
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
it "returns survey properties" do
|
|
22
|
+
expect(zc.meeting_survey(args)['show_in_the_browser']).to eql(true)
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'spec_helper'
|
|
4
|
+
|
|
5
|
+
describe Zoom::Actions::Recording do
|
|
6
|
+
let(:zc) { zoom_client }
|
|
7
|
+
let(:args) { { meeting_id: 91538056781 } }
|
|
8
|
+
|
|
9
|
+
describe '#meeting_recording_analytics_details action' do
|
|
10
|
+
before :each do
|
|
11
|
+
stub_request(
|
|
12
|
+
:get,
|
|
13
|
+
zoom_url("/meetings/#{args[:meeting_id]}/recordings/analytics_details")
|
|
14
|
+
).to_return(
|
|
15
|
+
status: 200,
|
|
16
|
+
body: json_response('recording', 'analytics_details'),
|
|
17
|
+
headers: { 'Content-Type' => 'application/json' }
|
|
18
|
+
)
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
it "requires a 'meeting_id' argument" do
|
|
22
|
+
expect {
|
|
23
|
+
zc.meeting_recording_analytics_details(filter_key(args, :meeting_id))
|
|
24
|
+
}.to raise_error(Zoom::ParameterMissing)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
it 'returns a hash' do
|
|
28
|
+
expect(zc.meeting_recording_analytics_details(args)).to be_kind_of(Hash)
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
it "returns 'from'" do
|
|
32
|
+
expect(zc.meeting_recording_analytics_details(args)['from']).to eq('2023-01-01')
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
it "returns 'to'" do
|
|
36
|
+
expect(zc.meeting_recording_analytics_details(args)['to']).to eq('2023-01-02')
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
it "returns 'next_page_token'" do
|
|
40
|
+
expect(zc.meeting_recording_analytics_details(args)['next_page_token']).to eq('')
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
it "returns 'page_size'" do
|
|
44
|
+
expect(zc.meeting_recording_analytics_details(args)['page_size']).to eq(30)
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
it "returns 'total_records'" do
|
|
48
|
+
expect(zc.meeting_recording_analytics_details(args)['total_records']).to eq(1)
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
it "returns 'analytics_details' Array" do
|
|
52
|
+
expect(zc.meeting_recording_analytics_details(args)['analytics_details']).to be_kind_of(Array)
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
end
|
|
56
|
+
end
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'spec_helper'
|
|
4
|
+
|
|
5
|
+
describe Zoom::Actions::Recording do
|
|
6
|
+
let(:zc) { zoom_client }
|
|
7
|
+
let(:args) { { meeting_id: 91538056781 } }
|
|
8
|
+
|
|
9
|
+
describe '#meeting_recording_analytics_summary action' do
|
|
10
|
+
before :each do
|
|
11
|
+
stub_request(
|
|
12
|
+
:get,
|
|
13
|
+
zoom_url("/meetings/#{args[:meeting_id]}/recordings/analytics_summary")
|
|
14
|
+
).to_return(
|
|
15
|
+
status: 200,
|
|
16
|
+
body: json_response('recording', 'analytics_summary'),
|
|
17
|
+
headers: { 'Content-Type' => 'application/json' }
|
|
18
|
+
)
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
it "requires a 'meeting_id' argument" do
|
|
22
|
+
expect {
|
|
23
|
+
zc.meeting_recording_analytics_summary(filter_key(args, :meeting_id))
|
|
24
|
+
}.to raise_error(Zoom::ParameterMissing)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
it 'returns a hash' do
|
|
28
|
+
expect(zc.meeting_recording_analytics_summary(args)).to be_kind_of(Hash)
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
it "returns 'from'" do
|
|
32
|
+
expect(zc.meeting_recording_analytics_summary(args)['from']).to eq('2023-01-01')
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
it "returns 'to'" do
|
|
36
|
+
expect(zc.meeting_recording_analytics_summary(args)['to']).to eq('2023-01-02')
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
it "returns 'analytics_summary' Array" do
|
|
40
|
+
expect(zc.meeting_recording_analytics_summary(args)['analytics_summary']).to be_kind_of(Array)
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
end
|
|
44
|
+
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: 1.1.
|
|
4
|
+
version: 1.1.9
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Kyle Boe
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2024-01-07 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: httparty
|
|
@@ -254,11 +254,14 @@ files:
|
|
|
254
254
|
- spec/fixtures/meeting/add_registrant.json
|
|
255
255
|
- spec/fixtures/meeting/create.json
|
|
256
256
|
- spec/fixtures/meeting/get.json
|
|
257
|
+
- spec/fixtures/meeting/get_survey.json
|
|
257
258
|
- spec/fixtures/meeting/instances.json
|
|
258
259
|
- spec/fixtures/meeting/invitation.json
|
|
259
260
|
- spec/fixtures/meeting/list.json
|
|
260
261
|
- spec/fixtures/meeting/live_stream/errors/meeting_not_found.json
|
|
261
262
|
- spec/fixtures/meeting/live_stream/errors/missing_field.json
|
|
263
|
+
- spec/fixtures/recording/analytics_details.json
|
|
264
|
+
- spec/fixtures/recording/analytics_summary.json
|
|
262
265
|
- spec/fixtures/recording/get.json
|
|
263
266
|
- spec/fixtures/recording/list.json
|
|
264
267
|
- spec/fixtures/recording/settings/get.json
|
|
@@ -384,11 +387,14 @@ files:
|
|
|
384
387
|
- spec/lib/zoom/actions/meeting/create_spec.rb
|
|
385
388
|
- spec/lib/zoom/actions/meeting/delete_spec.rb
|
|
386
389
|
- spec/lib/zoom/actions/meeting/get_spec.rb
|
|
390
|
+
- spec/lib/zoom/actions/meeting/get_survey_spec.rb
|
|
387
391
|
- spec/lib/zoom/actions/meeting/invitation_spec.rb
|
|
388
392
|
- spec/lib/zoom/actions/meeting/list_spec.rb
|
|
389
393
|
- spec/lib/zoom/actions/meeting/livestream_spec.rb
|
|
390
394
|
- spec/lib/zoom/actions/meeting/registrants/update_status_spec.rb
|
|
391
395
|
- spec/lib/zoom/actions/meeting/update_spec.rb
|
|
396
|
+
- spec/lib/zoom/actions/recording/analytics_details_spec.rb
|
|
397
|
+
- spec/lib/zoom/actions/recording/analytics_summary_spec.rb
|
|
392
398
|
- spec/lib/zoom/actions/recording/file_delete_spec.rb
|
|
393
399
|
- spec/lib/zoom/actions/recording/get_spec.rb
|
|
394
400
|
- spec/lib/zoom/actions/recording/list_spec.rb
|
|
@@ -482,7 +488,7 @@ homepage: https://github.com/hintmedia/zoom_rb
|
|
|
482
488
|
licenses:
|
|
483
489
|
- MIT
|
|
484
490
|
metadata: {}
|
|
485
|
-
post_install_message:
|
|
491
|
+
post_install_message:
|
|
486
492
|
rdoc_options: []
|
|
487
493
|
require_paths:
|
|
488
494
|
- lib
|
|
@@ -497,8 +503,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
497
503
|
- !ruby/object:Gem::Version
|
|
498
504
|
version: '0'
|
|
499
505
|
requirements: []
|
|
500
|
-
rubygems_version: 3.4
|
|
501
|
-
signing_key:
|
|
506
|
+
rubygems_version: 3.5.4
|
|
507
|
+
signing_key:
|
|
502
508
|
specification_version: 4
|
|
503
509
|
summary: zoom.us API wrapper
|
|
504
510
|
test_files:
|
|
@@ -545,11 +551,14 @@ test_files:
|
|
|
545
551
|
- spec/fixtures/meeting/add_registrant.json
|
|
546
552
|
- spec/fixtures/meeting/create.json
|
|
547
553
|
- spec/fixtures/meeting/get.json
|
|
554
|
+
- spec/fixtures/meeting/get_survey.json
|
|
548
555
|
- spec/fixtures/meeting/instances.json
|
|
549
556
|
- spec/fixtures/meeting/invitation.json
|
|
550
557
|
- spec/fixtures/meeting/list.json
|
|
551
558
|
- spec/fixtures/meeting/live_stream/errors/meeting_not_found.json
|
|
552
559
|
- spec/fixtures/meeting/live_stream/errors/missing_field.json
|
|
560
|
+
- spec/fixtures/recording/analytics_details.json
|
|
561
|
+
- spec/fixtures/recording/analytics_summary.json
|
|
553
562
|
- spec/fixtures/recording/get.json
|
|
554
563
|
- spec/fixtures/recording/list.json
|
|
555
564
|
- spec/fixtures/recording/settings/get.json
|
|
@@ -675,11 +684,14 @@ test_files:
|
|
|
675
684
|
- spec/lib/zoom/actions/meeting/create_spec.rb
|
|
676
685
|
- spec/lib/zoom/actions/meeting/delete_spec.rb
|
|
677
686
|
- spec/lib/zoom/actions/meeting/get_spec.rb
|
|
687
|
+
- spec/lib/zoom/actions/meeting/get_survey_spec.rb
|
|
678
688
|
- spec/lib/zoom/actions/meeting/invitation_spec.rb
|
|
679
689
|
- spec/lib/zoom/actions/meeting/list_spec.rb
|
|
680
690
|
- spec/lib/zoom/actions/meeting/livestream_spec.rb
|
|
681
691
|
- spec/lib/zoom/actions/meeting/registrants/update_status_spec.rb
|
|
682
692
|
- spec/lib/zoom/actions/meeting/update_spec.rb
|
|
693
|
+
- spec/lib/zoom/actions/recording/analytics_details_spec.rb
|
|
694
|
+
- spec/lib/zoom/actions/recording/analytics_summary_spec.rb
|
|
683
695
|
- spec/lib/zoom/actions/recording/file_delete_spec.rb
|
|
684
696
|
- spec/lib/zoom/actions/recording/get_spec.rb
|
|
685
697
|
- spec/lib/zoom/actions/recording/list_spec.rb
|