aws-sdk-kinesisvideowebrtcstorage 1.18.0 → 1.19.0
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/CHANGELOG.md +5 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-kinesisvideowebrtcstorage/client.rb +89 -10
- data/lib/aws-sdk-kinesisvideowebrtcstorage/client_api.rb +18 -0
- data/lib/aws-sdk-kinesisvideowebrtcstorage/endpoint_provider.rb +1 -1
- data/lib/aws-sdk-kinesisvideowebrtcstorage/endpoints.rb +14 -0
- data/lib/aws-sdk-kinesisvideowebrtcstorage/plugins/endpoints.rb +2 -0
- data/lib/aws-sdk-kinesisvideowebrtcstorage/types.rb +17 -0
- data/lib/aws-sdk-kinesisvideowebrtcstorage.rb +1 -1
- data/sig/client.rbs +7 -0
- data/sig/types.rbs +6 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 30c9c0b511c1731dc410a26304e74e5bf73aef20345e15ad41a670bd3e9f294e
|
4
|
+
data.tar.gz: a19e779a03a04701a8c33844303fb0341b373700df476d604ab4117eb34e2279
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cfd231aba805986ec45c4af58f58809449f21e076e921b9322fdf306fd5371d2a09b657a3e085102b76c0f5f00fb25b78e6151bf0ad40990e22c955b8abe9190
|
7
|
+
data.tar.gz: 51cfeb6475d9fd37ab9143baae9965875e96add9280c75a926ff21abb22d848d573af7880fd68e21dbdcbef8a73fecdc5099974906c0cc4dfeef480e0a65e96f
|
data/CHANGELOG.md
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.19.0
|
@@ -425,6 +425,12 @@ module Aws::KinesisVideoWebRTCStorage
|
|
425
425
|
|
426
426
|
# @!group API Operations
|
427
427
|
|
428
|
+
# <note markdown="1"> Before using this API, you must call the `GetSignalingChannelEndpoint`
|
429
|
+
# API to request the WEBRTC endpoint. You then specify the endpoint and
|
430
|
+
# region in your `JoinStorageSession` API request.
|
431
|
+
#
|
432
|
+
# </note>
|
433
|
+
#
|
428
434
|
# Join the ongoing one way-video and/or multi-way audio WebRTC session
|
429
435
|
# as a video producing device for an input channel. If there’s no
|
430
436
|
# existing session for the channel, a new streaming session needs to be
|
@@ -432,17 +438,33 @@ module Aws::KinesisVideoWebRTCStorage
|
|
432
438
|
# must be provided.
|
433
439
|
#
|
434
440
|
# Currently for the `SINGLE_MASTER` type, a video producing device is
|
435
|
-
# able to ingest both audio and video media into a stream
|
436
|
-
#
|
437
|
-
# join the session first, and wait for other participants.
|
441
|
+
# able to ingest both audio and video media into a stream. Only video
|
442
|
+
# producing devices can join the session and record media.
|
438
443
|
#
|
439
|
-
#
|
440
|
-
#
|
441
|
-
# Video Stream. Multiple viewers are able to playback real-time media.
|
444
|
+
# Both audio and video tracks are currently required for WebRTC
|
445
|
+
# ingestion.
|
442
446
|
#
|
443
|
-
#
|
444
|
-
#
|
445
|
-
#
|
447
|
+
# Current requirements:
|
448
|
+
#
|
449
|
+
# * Video track: H.264
|
450
|
+
#
|
451
|
+
# * Audio track: Opus
|
452
|
+
#
|
453
|
+
# The resulting ingested video in the Kinesis video stream will have the
|
454
|
+
# following parameters: H.264 video and AAC audio.
|
455
|
+
#
|
456
|
+
# Once a master participant has negotiated a connection through WebRTC,
|
457
|
+
# the ingested media session will be stored in the Kinesis video stream.
|
458
|
+
# Multiple viewers are then able to play back real-time media through
|
459
|
+
# our Playback APIs.
|
460
|
+
#
|
461
|
+
# You can also use existing Kinesis Video Streams features like `HLS` or
|
462
|
+
# `DASH` playback, image generation via [GetImages][1], and more with
|
463
|
+
# ingested WebRTC media.
|
464
|
+
#
|
465
|
+
# <note markdown="1"> S3 image delivery and notifications are not currently supported.
|
466
|
+
#
|
467
|
+
# </note>
|
446
468
|
#
|
447
469
|
# <note markdown="1"> Assume that only one video producing device client can be associated
|
448
470
|
# with a session for the channel. If more than one client joins the
|
@@ -451,6 +473,19 @@ module Aws::KinesisVideoWebRTCStorage
|
|
451
473
|
#
|
452
474
|
# </note>
|
453
475
|
#
|
476
|
+
# **Additional information**
|
477
|
+
#
|
478
|
+
# * **Idempotent** - This API is not idempotent.
|
479
|
+
#
|
480
|
+
# * **Retry behavior** - This is counted as a new API call.
|
481
|
+
#
|
482
|
+
# * **Concurrent calls** - Concurrent calls are allowed. An offer is
|
483
|
+
# sent once per each call.
|
484
|
+
#
|
485
|
+
#
|
486
|
+
#
|
487
|
+
# [1]: https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/gs-getImages.html
|
488
|
+
#
|
454
489
|
# @option params [required, String] :channel_arn
|
455
490
|
# The Amazon Resource Name (ARN) of the signaling channel.
|
456
491
|
#
|
@@ -471,6 +506,50 @@ module Aws::KinesisVideoWebRTCStorage
|
|
471
506
|
req.send_request(options)
|
472
507
|
end
|
473
508
|
|
509
|
+
# Join the ongoing one way-video and/or multi-way audio WebRTC session
|
510
|
+
# as a viewer for an input channel. If there’s no existing session for
|
511
|
+
# the channel, create a new streaming session and provide the Amazon
|
512
|
+
# Resource Name (ARN) of the signaling channel (`channelArn`) and client
|
513
|
+
# id (`clientId`).
|
514
|
+
#
|
515
|
+
# Currently for `SINGLE_MASTER` type, a video producing device is able
|
516
|
+
# to ingest both audio and video media into a stream, while viewers can
|
517
|
+
# only ingest audio. Both a video producing device and viewers can join
|
518
|
+
# a session first and wait for other participants. While participants
|
519
|
+
# are having peer to peer conversations through WebRTC, the ingested
|
520
|
+
# media session will be stored into the Kinesis Video Stream. Multiple
|
521
|
+
# viewers are able to playback real-time media.
|
522
|
+
#
|
523
|
+
# Customers can also use existing Kinesis Video Streams features like
|
524
|
+
# `HLS` or `DASH` playback, Image generation, and more with ingested
|
525
|
+
# WebRTC media. If there’s an existing session with the same `clientId`
|
526
|
+
# that's found in the join session request, the new request takes
|
527
|
+
# precedence.
|
528
|
+
#
|
529
|
+
# @option params [required, String] :channel_arn
|
530
|
+
# The Amazon Resource Name (ARN) of the signaling channel.
|
531
|
+
#
|
532
|
+
# @option params [required, String] :client_id
|
533
|
+
# The unique identifier for the sender client.
|
534
|
+
#
|
535
|
+
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
536
|
+
#
|
537
|
+
# @example Request syntax with placeholder values
|
538
|
+
#
|
539
|
+
# resp = client.join_storage_session_as_viewer({
|
540
|
+
# channel_arn: "ChannelArn", # required
|
541
|
+
# client_id: "ClientId", # required
|
542
|
+
# })
|
543
|
+
#
|
544
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-video-webrtc-storage-2018-05-10/JoinStorageSessionAsViewer AWS API Documentation
|
545
|
+
#
|
546
|
+
# @overload join_storage_session_as_viewer(params = {})
|
547
|
+
# @param [Hash] params ({})
|
548
|
+
def join_storage_session_as_viewer(params = {}, options = {})
|
549
|
+
req = build_request(:join_storage_session_as_viewer, params)
|
550
|
+
req.send_request(options)
|
551
|
+
end
|
552
|
+
|
474
553
|
# @!endgroup
|
475
554
|
|
476
555
|
# @param params ({})
|
@@ -484,7 +563,7 @@ module Aws::KinesisVideoWebRTCStorage
|
|
484
563
|
params: params,
|
485
564
|
config: config)
|
486
565
|
context[:gem_name] = 'aws-sdk-kinesisvideowebrtcstorage'
|
487
|
-
context[:gem_version] = '1.
|
566
|
+
context[:gem_version] = '1.19.0'
|
488
567
|
Seahorse::Client::Request.new(handlers, context)
|
489
568
|
end
|
490
569
|
|
@@ -15,8 +15,10 @@ module Aws::KinesisVideoWebRTCStorage
|
|
15
15
|
|
16
16
|
AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
|
17
17
|
ChannelArn = Shapes::StringShape.new(name: 'ChannelArn')
|
18
|
+
ClientId = Shapes::StringShape.new(name: 'ClientId')
|
18
19
|
ClientLimitExceededException = Shapes::StructureShape.new(name: 'ClientLimitExceededException')
|
19
20
|
InvalidArgumentException = Shapes::StructureShape.new(name: 'InvalidArgumentException')
|
21
|
+
JoinStorageSessionAsViewerInput = Shapes::StructureShape.new(name: 'JoinStorageSessionAsViewerInput')
|
20
22
|
JoinStorageSessionInput = Shapes::StructureShape.new(name: 'JoinStorageSessionInput')
|
21
23
|
ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
|
22
24
|
String = Shapes::StringShape.new(name: 'String')
|
@@ -30,6 +32,10 @@ module Aws::KinesisVideoWebRTCStorage
|
|
30
32
|
InvalidArgumentException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
|
31
33
|
InvalidArgumentException.struct_class = Types::InvalidArgumentException
|
32
34
|
|
35
|
+
JoinStorageSessionAsViewerInput.add_member(:channel_arn, Shapes::ShapeRef.new(shape: ChannelArn, required: true, location_name: "channelArn"))
|
36
|
+
JoinStorageSessionAsViewerInput.add_member(:client_id, Shapes::ShapeRef.new(shape: ClientId, required: true, location_name: "clientId"))
|
37
|
+
JoinStorageSessionAsViewerInput.struct_class = Types::JoinStorageSessionAsViewerInput
|
38
|
+
|
33
39
|
JoinStorageSessionInput.add_member(:channel_arn, Shapes::ShapeRef.new(shape: ChannelArn, required: true, location_name: "channelArn"))
|
34
40
|
JoinStorageSessionInput.struct_class = Types::JoinStorageSessionInput
|
35
41
|
|
@@ -65,6 +71,18 @@ module Aws::KinesisVideoWebRTCStorage
|
|
65
71
|
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
66
72
|
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
67
73
|
end)
|
74
|
+
|
75
|
+
api.add_operation(:join_storage_session_as_viewer, Seahorse::Model::Operation.new.tap do |o|
|
76
|
+
o.name = "JoinStorageSessionAsViewer"
|
77
|
+
o.http_method = "POST"
|
78
|
+
o.http_request_uri = "/joinStorageSessionAsViewer"
|
79
|
+
o.input = Shapes::ShapeRef.new(shape: JoinStorageSessionAsViewerInput)
|
80
|
+
o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
|
81
|
+
o.errors << Shapes::ShapeRef.new(shape: ClientLimitExceededException)
|
82
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
|
83
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
84
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
85
|
+
end)
|
68
86
|
end
|
69
87
|
|
70
88
|
end
|
@@ -32,7 +32,7 @@ module Aws::KinesisVideoWebRTCStorage
|
|
32
32
|
raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
|
33
33
|
end
|
34
34
|
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
|
35
|
-
if Aws::Endpoints::Matchers.boolean_equals?(
|
35
|
+
if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
|
36
36
|
return Aws::Endpoints::Endpoint.new(url: "https://kinesisvideo-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
|
37
37
|
end
|
38
38
|
raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
|
@@ -26,5 +26,19 @@ module Aws::KinesisVideoWebRTCStorage
|
|
26
26
|
end
|
27
27
|
end
|
28
28
|
|
29
|
+
class JoinStorageSessionAsViewer
|
30
|
+
def self.build(context)
|
31
|
+
unless context.config.regional_endpoint
|
32
|
+
endpoint = context.config.endpoint.to_s
|
33
|
+
end
|
34
|
+
Aws::KinesisVideoWebRTCStorage::EndpointParameters.new(
|
35
|
+
region: context.config.region,
|
36
|
+
use_dual_stack: context.config.use_dualstack_endpoint,
|
37
|
+
use_fips: context.config.use_fips_endpoint,
|
38
|
+
endpoint: endpoint,
|
39
|
+
)
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
29
43
|
end
|
30
44
|
end
|
@@ -60,6 +60,8 @@ module Aws::KinesisVideoWebRTCStorage
|
|
60
60
|
case context.operation_name
|
61
61
|
when :join_storage_session
|
62
62
|
Aws::KinesisVideoWebRTCStorage::Endpoints::JoinStorageSession.build(context)
|
63
|
+
when :join_storage_session_as_viewer
|
64
|
+
Aws::KinesisVideoWebRTCStorage::Endpoints::JoinStorageSessionAsViewer.build(context)
|
63
65
|
end
|
64
66
|
end
|
65
67
|
end
|
@@ -50,6 +50,23 @@ module Aws::KinesisVideoWebRTCStorage
|
|
50
50
|
include Aws::Structure
|
51
51
|
end
|
52
52
|
|
53
|
+
# @!attribute [rw] channel_arn
|
54
|
+
# The Amazon Resource Name (ARN) of the signaling channel.
|
55
|
+
# @return [String]
|
56
|
+
#
|
57
|
+
# @!attribute [rw] client_id
|
58
|
+
# The unique identifier for the sender client.
|
59
|
+
# @return [String]
|
60
|
+
#
|
61
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-video-webrtc-storage-2018-05-10/JoinStorageSessionAsViewerInput AWS API Documentation
|
62
|
+
#
|
63
|
+
class JoinStorageSessionAsViewerInput < Struct.new(
|
64
|
+
:channel_arn,
|
65
|
+
:client_id)
|
66
|
+
SENSITIVE = []
|
67
|
+
include Aws::Structure
|
68
|
+
end
|
69
|
+
|
53
70
|
# @!attribute [rw] channel_arn
|
54
71
|
# The Amazon Resource Name (ARN) of the signaling channel.
|
55
72
|
# @return [String]
|
data/sig/client.rbs
CHANGED
@@ -78,6 +78,13 @@ module Aws
|
|
78
78
|
channel_arn: ::String
|
79
79
|
) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
|
80
80
|
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
|
81
|
+
|
82
|
+
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/KinesisVideoWebRTCStorage/Client.html#join_storage_session_as_viewer-instance_method
|
83
|
+
def join_storage_session_as_viewer: (
|
84
|
+
channel_arn: ::String,
|
85
|
+
client_id: ::String
|
86
|
+
) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
|
87
|
+
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
|
81
88
|
end
|
82
89
|
end
|
83
90
|
end
|
data/sig/types.rbs
CHANGED
@@ -23,6 +23,12 @@ module Aws::KinesisVideoWebRTCStorage
|
|
23
23
|
SENSITIVE: []
|
24
24
|
end
|
25
25
|
|
26
|
+
class JoinStorageSessionAsViewerInput
|
27
|
+
attr_accessor channel_arn: ::String
|
28
|
+
attr_accessor client_id: ::String
|
29
|
+
SENSITIVE: []
|
30
|
+
end
|
31
|
+
|
26
32
|
class JoinStorageSessionInput
|
27
33
|
attr_accessor channel_arn: ::String
|
28
34
|
SENSITIVE: []
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-kinesisvideowebrtcstorage
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.19.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Amazon Web Services
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-08-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-core
|