aws-sdk-ivsrealtime 1.10.0 → 1.12.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 439c2d4f4c7faf8ca72cf032c8785d28d8ea10e2619bb4c89045b507a790dcd1
4
- data.tar.gz: 75824a27932d053e71115d59d3c7b0a2bfe9999b62bb0090a01615648529f9ff
3
+ metadata.gz: eb7446e5658622f9c45878521692ad5d89347463d25929d13cf577b8ce01d1ba
4
+ data.tar.gz: 054772aca321cb72e3f39820ccd7cac82dbfd83b6647d99ebd0fab8643c1b380
5
5
  SHA512:
6
- metadata.gz: e0a9d47a6ecfbed01bee162cf3c52d26b3685ba9dbacf08cc35fbb4d840d5d41d80f879babfd8786095a4b0dae176ab4f8ff3025c5c603d69f3f980178963e03
7
- data.tar.gz: 9f0aab2a2ffb11b1090c768a321b6a8868fff95167f8ccb323fc869dde0f1e6fa94a7011c49acc655ba191556c16b37a9f9b7812f75f67b3da7bcb7a221de815
6
+ metadata.gz: 439dd8661a9e33bdde0c2999b56d688d8a391b516ab454c8bdfe856991950ae90e590f8ac3acca0e1f91e8bb59a1b6ea8cd833175d1ef5e5fd60f7f09cc4d747
7
+ data.tar.gz: 2864b4e596a3973ccae19a8c55ae802415fde6565346a6d249e3916a020e8bbdcc36c9dccb846845605dce1d21242e590e3ffa0a96d6e146910cc47b2a232a0e
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.12.0 (2023-11-16)
5
+ ------------------
6
+
7
+ * Feature - This release introduces server side composition and recording for stages.
8
+
9
+ 1.11.0 (2023-10-12)
10
+ ------------------
11
+
12
+ * Feature - Update GetParticipant to return additional metadata.
13
+
4
14
  1.10.0 (2023-09-27)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.10.0
1
+ 1.12.0
@@ -388,6 +388,65 @@ module Aws::IVSRealTime
388
388
 
389
389
  # @!group API Operations
390
390
 
391
+ # Creates an EncoderConfiguration object.
392
+ #
393
+ # @option params [String] :name
394
+ # Optional name to identify the resource.
395
+ #
396
+ # @option params [Hash<String,String>] :tags
397
+ # Tags attached to the resource. Array of maps, each of the form
398
+ # `string:string (key:value)`. See [Tagging AWS Resources][1] for
399
+ # details, including restrictions that apply to tags and "Tag naming
400
+ # limits and requirements"; Amazon IVS has no constraints on tags
401
+ # beyond what is documented there.
402
+ #
403
+ #
404
+ #
405
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
406
+ #
407
+ # @option params [Types::Video] :video
408
+ # Video configuration. Default: video resolution 1280x720, bitrate 2500
409
+ # kbps, 30 fps.
410
+ #
411
+ # @return [Types::CreateEncoderConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
412
+ #
413
+ # * {Types::CreateEncoderConfigurationResponse#encoder_configuration #encoder_configuration} => Types::EncoderConfiguration
414
+ #
415
+ # @example Request syntax with placeholder values
416
+ #
417
+ # resp = client.create_encoder_configuration({
418
+ # name: "EncoderConfigurationName",
419
+ # tags: {
420
+ # "TagKey" => "TagValue",
421
+ # },
422
+ # video: {
423
+ # bitrate: 1,
424
+ # framerate: 1.0,
425
+ # height: 1,
426
+ # width: 1,
427
+ # },
428
+ # })
429
+ #
430
+ # @example Response structure
431
+ #
432
+ # resp.encoder_configuration.arn #=> String
433
+ # resp.encoder_configuration.name #=> String
434
+ # resp.encoder_configuration.tags #=> Hash
435
+ # resp.encoder_configuration.tags["TagKey"] #=> String
436
+ # resp.encoder_configuration.video.bitrate #=> Integer
437
+ # resp.encoder_configuration.video.framerate #=> Float
438
+ # resp.encoder_configuration.video.height #=> Integer
439
+ # resp.encoder_configuration.video.width #=> Integer
440
+ #
441
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/CreateEncoderConfiguration AWS API Documentation
442
+ #
443
+ # @overload create_encoder_configuration(params = {})
444
+ # @param [Hash] params ({})
445
+ def create_encoder_configuration(params = {}, options = {})
446
+ req = build_request(:create_encoder_configuration, params)
447
+ req.send_request(options)
448
+ end
449
+
391
450
  # Creates an additional token for a specified stage. This can be done
392
451
  # after stage creation or when tokens expire. Tokens always are scoped
393
452
  # to the stage for which they are created.
@@ -527,6 +586,85 @@ module Aws::IVSRealTime
527
586
  req.send_request(options)
528
587
  end
529
588
 
589
+ # Creates a new storage configuration, used to enable recording to
590
+ # Amazon S3. When a StorageConfiguration is created, IVS will modify the
591
+ # S3 bucketPolicy of the provided bucket. This will ensure that IVS has
592
+ # sufficient permissions to write content to the provided bucket.
593
+ #
594
+ # @option params [String] :name
595
+ # Storage configuration name. The value does not need to be unique.
596
+ #
597
+ # @option params [required, Types::S3StorageConfiguration] :s3
598
+ # A complex type that contains a storage configuration for where
599
+ # recorded video will be stored.
600
+ #
601
+ # @option params [Hash<String,String>] :tags
602
+ # Tags attached to the resource. Array of maps, each of the form
603
+ # `string:string (key:value)`. See [Tagging AWS Resources][1] for
604
+ # details, including restrictions that apply to tags and "Tag naming
605
+ # limits and requirements"; Amazon IVS has no constraints on tags
606
+ # beyond what is documented there.
607
+ #
608
+ #
609
+ #
610
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
611
+ #
612
+ # @return [Types::CreateStorageConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
613
+ #
614
+ # * {Types::CreateStorageConfigurationResponse#storage_configuration #storage_configuration} => Types::StorageConfiguration
615
+ #
616
+ # @example Request syntax with placeholder values
617
+ #
618
+ # resp = client.create_storage_configuration({
619
+ # name: "StorageConfigurationName",
620
+ # s3: { # required
621
+ # bucket_name: "S3BucketName", # required
622
+ # },
623
+ # tags: {
624
+ # "TagKey" => "TagValue",
625
+ # },
626
+ # })
627
+ #
628
+ # @example Response structure
629
+ #
630
+ # resp.storage_configuration.arn #=> String
631
+ # resp.storage_configuration.name #=> String
632
+ # resp.storage_configuration.s3.bucket_name #=> String
633
+ # resp.storage_configuration.tags #=> Hash
634
+ # resp.storage_configuration.tags["TagKey"] #=> String
635
+ #
636
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/CreateStorageConfiguration AWS API Documentation
637
+ #
638
+ # @overload create_storage_configuration(params = {})
639
+ # @param [Hash] params ({})
640
+ def create_storage_configuration(params = {}, options = {})
641
+ req = build_request(:create_storage_configuration, params)
642
+ req.send_request(options)
643
+ end
644
+
645
+ # Deletes an EncoderConfiguration resource. Ensures that no Compositions
646
+ # are using this template; otherwise, returns an error.
647
+ #
648
+ # @option params [required, String] :arn
649
+ # ARN of the EncoderConfiguration.
650
+ #
651
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
652
+ #
653
+ # @example Request syntax with placeholder values
654
+ #
655
+ # resp = client.delete_encoder_configuration({
656
+ # arn: "EncoderConfigurationArn", # required
657
+ # })
658
+ #
659
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/DeleteEncoderConfiguration AWS API Documentation
660
+ #
661
+ # @overload delete_encoder_configuration(params = {})
662
+ # @param [Hash] params ({})
663
+ def delete_encoder_configuration(params = {}, options = {})
664
+ req = build_request(:delete_encoder_configuration, params)
665
+ req.send_request(options)
666
+ end
667
+
530
668
  # Shuts down and deletes the specified stage (disconnecting all
531
669
  # participants).
532
670
  #
@@ -550,6 +688,34 @@ module Aws::IVSRealTime
550
688
  req.send_request(options)
551
689
  end
552
690
 
691
+ # Deletes the storage configuration for the specified ARN.
692
+ #
693
+ # If you try to delete a storage configuration that is used by a
694
+ # Composition, you will get an error (409 ConflictException). To avoid
695
+ # this, for all Compositions that reference the storage configuration,
696
+ # first use StopComposition and wait for it to complete, then use
697
+ # DeleteStorageConfiguration.
698
+ #
699
+ # @option params [required, String] :arn
700
+ # ARN of the storage configuration to be deleted.
701
+ #
702
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
703
+ #
704
+ # @example Request syntax with placeholder values
705
+ #
706
+ # resp = client.delete_storage_configuration({
707
+ # arn: "StorageConfigurationArn", # required
708
+ # })
709
+ #
710
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/DeleteStorageConfiguration AWS API Documentation
711
+ #
712
+ # @overload delete_storage_configuration(params = {})
713
+ # @param [Hash] params ({})
714
+ def delete_storage_configuration(params = {}, options = {})
715
+ req = build_request(:delete_storage_configuration, params)
716
+ req.send_request(options)
717
+ end
718
+
553
719
  # Disconnects a specified participant and revokes the participant
554
720
  # permanently from a specified stage.
555
721
  #
@@ -582,6 +748,89 @@ module Aws::IVSRealTime
582
748
  req.send_request(options)
583
749
  end
584
750
 
751
+ # Get information about the specified Composition resource.
752
+ #
753
+ # @option params [required, String] :arn
754
+ # ARN of the Composition resource.
755
+ #
756
+ # @return [Types::GetCompositionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
757
+ #
758
+ # * {Types::GetCompositionResponse#composition #composition} => Types::Composition
759
+ #
760
+ # @example Request syntax with placeholder values
761
+ #
762
+ # resp = client.get_composition({
763
+ # arn: "CompositionArn", # required
764
+ # })
765
+ #
766
+ # @example Response structure
767
+ #
768
+ # resp.composition.arn #=> String
769
+ # resp.composition.destinations #=> Array
770
+ # resp.composition.destinations[0].configuration.channel.channel_arn #=> String
771
+ # resp.composition.destinations[0].configuration.channel.encoder_configuration_arn #=> String
772
+ # resp.composition.destinations[0].configuration.name #=> String
773
+ # resp.composition.destinations[0].configuration.s3.encoder_configuration_arns #=> Array
774
+ # resp.composition.destinations[0].configuration.s3.encoder_configuration_arns[0] #=> String
775
+ # resp.composition.destinations[0].configuration.s3.recording_configuration.format #=> String, one of "HLS"
776
+ # resp.composition.destinations[0].configuration.s3.storage_configuration_arn #=> String
777
+ # resp.composition.destinations[0].detail.s3.recording_prefix #=> String
778
+ # resp.composition.destinations[0].end_time #=> Time
779
+ # resp.composition.destinations[0].id #=> String
780
+ # resp.composition.destinations[0].start_time #=> Time
781
+ # resp.composition.destinations[0].state #=> String, one of "STARTING", "ACTIVE", "STOPPING", "RECONNECTING", "FAILED", "STOPPED"
782
+ # resp.composition.end_time #=> Time
783
+ # resp.composition.layout.grid.featured_participant_attribute #=> String
784
+ # resp.composition.stage_arn #=> String
785
+ # resp.composition.start_time #=> Time
786
+ # resp.composition.state #=> String, one of "STARTING", "ACTIVE", "STOPPING", "FAILED", "STOPPED"
787
+ # resp.composition.tags #=> Hash
788
+ # resp.composition.tags["TagKey"] #=> String
789
+ #
790
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetComposition AWS API Documentation
791
+ #
792
+ # @overload get_composition(params = {})
793
+ # @param [Hash] params ({})
794
+ def get_composition(params = {}, options = {})
795
+ req = build_request(:get_composition, params)
796
+ req.send_request(options)
797
+ end
798
+
799
+ # Gets information about the specified EncoderConfiguration resource.
800
+ #
801
+ # @option params [required, String] :arn
802
+ # ARN of the EncoderConfiguration resource.
803
+ #
804
+ # @return [Types::GetEncoderConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
805
+ #
806
+ # * {Types::GetEncoderConfigurationResponse#encoder_configuration #encoder_configuration} => Types::EncoderConfiguration
807
+ #
808
+ # @example Request syntax with placeholder values
809
+ #
810
+ # resp = client.get_encoder_configuration({
811
+ # arn: "EncoderConfigurationArn", # required
812
+ # })
813
+ #
814
+ # @example Response structure
815
+ #
816
+ # resp.encoder_configuration.arn #=> String
817
+ # resp.encoder_configuration.name #=> String
818
+ # resp.encoder_configuration.tags #=> Hash
819
+ # resp.encoder_configuration.tags["TagKey"] #=> String
820
+ # resp.encoder_configuration.video.bitrate #=> Integer
821
+ # resp.encoder_configuration.video.framerate #=> Float
822
+ # resp.encoder_configuration.video.height #=> Integer
823
+ # resp.encoder_configuration.video.width #=> Integer
824
+ #
825
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetEncoderConfiguration AWS API Documentation
826
+ #
827
+ # @overload get_encoder_configuration(params = {})
828
+ # @param [Hash] params ({})
829
+ def get_encoder_configuration(params = {}, options = {})
830
+ req = build_request(:get_encoder_configuration, params)
831
+ req.send_request(options)
832
+ end
833
+
585
834
  # Gets information about the specified participant token.
586
835
  #
587
836
  # @option params [required, String] :participant_id
@@ -610,9 +859,15 @@ module Aws::IVSRealTime
610
859
  #
611
860
  # resp.participant.attributes #=> Hash
612
861
  # resp.participant.attributes["String"] #=> String
862
+ # resp.participant.browser_name #=> String
863
+ # resp.participant.browser_version #=> String
613
864
  # resp.participant.first_join_time #=> Time
865
+ # resp.participant.isp_name #=> String
866
+ # resp.participant.os_name #=> String
867
+ # resp.participant.os_version #=> String
614
868
  # resp.participant.participant_id #=> String
615
869
  # resp.participant.published #=> Boolean
870
+ # resp.participant.sdk_version #=> String
616
871
  # resp.participant.state #=> String, one of "CONNECTED", "DISCONNECTED"
617
872
  # resp.participant.user_id #=> String
618
873
  #
@@ -691,6 +946,139 @@ module Aws::IVSRealTime
691
946
  req.send_request(options)
692
947
  end
693
948
 
949
+ # Gets the storage configuration for the specified ARN.
950
+ #
951
+ # @option params [required, String] :arn
952
+ # ARN of the storage configuration to be retrieved.
953
+ #
954
+ # @return [Types::GetStorageConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
955
+ #
956
+ # * {Types::GetStorageConfigurationResponse#storage_configuration #storage_configuration} => Types::StorageConfiguration
957
+ #
958
+ # @example Request syntax with placeholder values
959
+ #
960
+ # resp = client.get_storage_configuration({
961
+ # arn: "StorageConfigurationArn", # required
962
+ # })
963
+ #
964
+ # @example Response structure
965
+ #
966
+ # resp.storage_configuration.arn #=> String
967
+ # resp.storage_configuration.name #=> String
968
+ # resp.storage_configuration.s3.bucket_name #=> String
969
+ # resp.storage_configuration.tags #=> Hash
970
+ # resp.storage_configuration.tags["TagKey"] #=> String
971
+ #
972
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetStorageConfiguration AWS API Documentation
973
+ #
974
+ # @overload get_storage_configuration(params = {})
975
+ # @param [Hash] params ({})
976
+ def get_storage_configuration(params = {}, options = {})
977
+ req = build_request(:get_storage_configuration, params)
978
+ req.send_request(options)
979
+ end
980
+
981
+ # Gets summary information about all Compositions in your account, in
982
+ # the AWS region where the API request is processed.
983
+ #
984
+ # @option params [String] :filter_by_encoder_configuration_arn
985
+ # Filters the Composition list to match the specified
986
+ # EncoderConfiguration attached to at least one of its output.
987
+ #
988
+ # @option params [String] :filter_by_stage_arn
989
+ # Filters the Composition list to match the specified Stage ARN.
990
+ #
991
+ # @option params [Integer] :max_results
992
+ # Maximum number of results to return. Default: 100.
993
+ #
994
+ # @option params [String] :next_token
995
+ # The first Composition to retrieve. This is used for pagination; see
996
+ # the `nextToken` response field.
997
+ #
998
+ # @return [Types::ListCompositionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
999
+ #
1000
+ # * {Types::ListCompositionsResponse#compositions #compositions} => Array&lt;Types::CompositionSummary&gt;
1001
+ # * {Types::ListCompositionsResponse#next_token #next_token} => String
1002
+ #
1003
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1004
+ #
1005
+ # @example Request syntax with placeholder values
1006
+ #
1007
+ # resp = client.list_compositions({
1008
+ # filter_by_encoder_configuration_arn: "EncoderConfigurationArn",
1009
+ # filter_by_stage_arn: "StageArn",
1010
+ # max_results: 1,
1011
+ # next_token: "PaginationToken",
1012
+ # })
1013
+ #
1014
+ # @example Response structure
1015
+ #
1016
+ # resp.compositions #=> Array
1017
+ # resp.compositions[0].arn #=> String
1018
+ # resp.compositions[0].destinations #=> Array
1019
+ # resp.compositions[0].destinations[0].end_time #=> Time
1020
+ # resp.compositions[0].destinations[0].id #=> String
1021
+ # resp.compositions[0].destinations[0].start_time #=> Time
1022
+ # resp.compositions[0].destinations[0].state #=> String, one of "STARTING", "ACTIVE", "STOPPING", "RECONNECTING", "FAILED", "STOPPED"
1023
+ # resp.compositions[0].end_time #=> Time
1024
+ # resp.compositions[0].stage_arn #=> String
1025
+ # resp.compositions[0].start_time #=> Time
1026
+ # resp.compositions[0].state #=> String, one of "STARTING", "ACTIVE", "STOPPING", "FAILED", "STOPPED"
1027
+ # resp.compositions[0].tags #=> Hash
1028
+ # resp.compositions[0].tags["TagKey"] #=> String
1029
+ # resp.next_token #=> String
1030
+ #
1031
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListCompositions AWS API Documentation
1032
+ #
1033
+ # @overload list_compositions(params = {})
1034
+ # @param [Hash] params ({})
1035
+ def list_compositions(params = {}, options = {})
1036
+ req = build_request(:list_compositions, params)
1037
+ req.send_request(options)
1038
+ end
1039
+
1040
+ # Gets summary information about all EncoderConfigurations in your
1041
+ # account, in the AWS region where the API request is processed.
1042
+ #
1043
+ # @option params [Integer] :max_results
1044
+ # Maximum number of results to return. Default: 100.
1045
+ #
1046
+ # @option params [String] :next_token
1047
+ # The first encoder configuration to retrieve. This is used for
1048
+ # pagination; see the `nextToken` response field.
1049
+ #
1050
+ # @return [Types::ListEncoderConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1051
+ #
1052
+ # * {Types::ListEncoderConfigurationsResponse#encoder_configurations #encoder_configurations} => Array&lt;Types::EncoderConfigurationSummary&gt;
1053
+ # * {Types::ListEncoderConfigurationsResponse#next_token #next_token} => String
1054
+ #
1055
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1056
+ #
1057
+ # @example Request syntax with placeholder values
1058
+ #
1059
+ # resp = client.list_encoder_configurations({
1060
+ # max_results: 1,
1061
+ # next_token: "PaginationToken",
1062
+ # })
1063
+ #
1064
+ # @example Response structure
1065
+ #
1066
+ # resp.encoder_configurations #=> Array
1067
+ # resp.encoder_configurations[0].arn #=> String
1068
+ # resp.encoder_configurations[0].name #=> String
1069
+ # resp.encoder_configurations[0].tags #=> Hash
1070
+ # resp.encoder_configurations[0].tags["TagKey"] #=> String
1071
+ # resp.next_token #=> String
1072
+ #
1073
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListEncoderConfigurations AWS API Documentation
1074
+ #
1075
+ # @overload list_encoder_configurations(params = {})
1076
+ # @param [Hash] params ({})
1077
+ def list_encoder_configurations(params = {}, options = {})
1078
+ req = build_request(:list_encoder_configurations, params)
1079
+ req.send_request(options)
1080
+ end
1081
+
694
1082
  # Lists events for a specified participant that occurred during a
695
1083
  # specified stage session.
696
1084
  #
@@ -698,8 +1086,8 @@ module Aws::IVSRealTime
698
1086
  # Maximum number of results to return. Default: 50.
699
1087
  #
700
1088
  # @option params [String] :next_token
701
- # The first participant to retrieve. This is used for pagination; see
702
- # the `nextToken` response field.
1089
+ # The first participant event to retrieve. This is used for pagination;
1090
+ # see the `nextToken` response field.
703
1091
  #
704
1092
  # @option params [required, String] :participant_id
705
1093
  # Unique identifier for this participant. This is assigned by IVS and
@@ -823,8 +1211,8 @@ module Aws::IVSRealTime
823
1211
  # Maximum number of results to return. Default: 50.
824
1212
  #
825
1213
  # @option params [String] :next_token
826
- # The first stage to retrieve. This is used for pagination; see the
827
- # `nextToken` response field.
1214
+ # The first stage session to retrieve. This is used for pagination; see
1215
+ # the `nextToken` response field.
828
1216
  #
829
1217
  # @option params [required, String] :stage_arn
830
1218
  # Stage ARN.
@@ -904,6 +1292,50 @@ module Aws::IVSRealTime
904
1292
  req.send_request(options)
905
1293
  end
906
1294
 
1295
+ # Gets summary information about all storage configurations in your
1296
+ # account, in the AWS region where the API request is processed.
1297
+ #
1298
+ # @option params [Integer] :max_results
1299
+ # Maximum number of storage configurations to return. Default: your
1300
+ # service quota or 100, whichever is smaller.
1301
+ #
1302
+ # @option params [String] :next_token
1303
+ # The first storage configuration to retrieve. This is used for
1304
+ # pagination; see the `nextToken` response field.
1305
+ #
1306
+ # @return [Types::ListStorageConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1307
+ #
1308
+ # * {Types::ListStorageConfigurationsResponse#next_token #next_token} => String
1309
+ # * {Types::ListStorageConfigurationsResponse#storage_configurations #storage_configurations} => Array&lt;Types::StorageConfigurationSummary&gt;
1310
+ #
1311
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1312
+ #
1313
+ # @example Request syntax with placeholder values
1314
+ #
1315
+ # resp = client.list_storage_configurations({
1316
+ # max_results: 1,
1317
+ # next_token: "PaginationToken",
1318
+ # })
1319
+ #
1320
+ # @example Response structure
1321
+ #
1322
+ # resp.next_token #=> String
1323
+ # resp.storage_configurations #=> Array
1324
+ # resp.storage_configurations[0].arn #=> String
1325
+ # resp.storage_configurations[0].name #=> String
1326
+ # resp.storage_configurations[0].s3.bucket_name #=> String
1327
+ # resp.storage_configurations[0].tags #=> Hash
1328
+ # resp.storage_configurations[0].tags["TagKey"] #=> String
1329
+ #
1330
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListStorageConfigurations AWS API Documentation
1331
+ #
1332
+ # @overload list_storage_configurations(params = {})
1333
+ # @param [Hash] params ({})
1334
+ def list_storage_configurations(params = {}, options = {})
1335
+ req = build_request(:list_storage_configurations, params)
1336
+ req.send_request(options)
1337
+ end
1338
+
907
1339
  # Gets information about AWS tags for the specified ARN.
908
1340
  #
909
1341
  # @option params [required, String] :resource_arn
@@ -933,6 +1365,143 @@ module Aws::IVSRealTime
933
1365
  req.send_request(options)
934
1366
  end
935
1367
 
1368
+ # Starts a Composition from a stage based on the configuration provided
1369
+ # in the request.
1370
+ #
1371
+ # A Composition is an ephemeral resource that exists after this endpoint
1372
+ # returns successfully. Composition stops and the resource is deleted:
1373
+ #
1374
+ # * When StopComposition is called.
1375
+ #
1376
+ # * After a 1-minute timeout, when all participants are disconnected
1377
+ # from the stage.
1378
+ #
1379
+ # * After a 1-minute timeout, if there are no participants in the stage
1380
+ # when StartComposition is called.
1381
+ #
1382
+ # * When broadcasting to the IVS channel fails and all retries are
1383
+ # exhausted.
1384
+ #
1385
+ # * When broadcasting is disconnected and all attempts to reconnect are
1386
+ # exhausted.
1387
+ #
1388
+ # @option params [required, Array<Types::DestinationConfiguration>] :destinations
1389
+ # Array of destination configuration.
1390
+ #
1391
+ # @option params [String] :idempotency_token
1392
+ # Idempotency token.
1393
+ #
1394
+ # **A suitable default value is auto-generated.** You should normally
1395
+ # not need to pass this option.**
1396
+ #
1397
+ # @option params [Types::LayoutConfiguration] :layout
1398
+ # Layout object to configure composition parameters.
1399
+ #
1400
+ # @option params [required, String] :stage_arn
1401
+ # ARN of the stage to be used for compositing.
1402
+ #
1403
+ # @option params [Hash<String,String>] :tags
1404
+ # Tags attached to the resource. Array of maps, each of the form
1405
+ # `string:string (key:value)`. See [Tagging AWS Resources][1] for
1406
+ # details, including restrictions that apply to tags and "Tag naming
1407
+ # limits and requirements"; Amazon IVS has no constraints on tags
1408
+ # beyond what is documented there.
1409
+ #
1410
+ #
1411
+ #
1412
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
1413
+ #
1414
+ # @return [Types::StartCompositionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1415
+ #
1416
+ # * {Types::StartCompositionResponse#composition #composition} => Types::Composition
1417
+ #
1418
+ # @example Request syntax with placeholder values
1419
+ #
1420
+ # resp = client.start_composition({
1421
+ # destinations: [ # required
1422
+ # {
1423
+ # channel: {
1424
+ # channel_arn: "ChannelArn", # required
1425
+ # encoder_configuration_arn: "EncoderConfigurationArn",
1426
+ # },
1427
+ # name: "DestinationConfigurationName",
1428
+ # s3: {
1429
+ # encoder_configuration_arns: ["EncoderConfigurationArn"], # required
1430
+ # recording_configuration: {
1431
+ # format: "HLS", # accepts HLS
1432
+ # },
1433
+ # storage_configuration_arn: "StorageConfigurationArn", # required
1434
+ # },
1435
+ # },
1436
+ # ],
1437
+ # idempotency_token: "CompositionClientToken",
1438
+ # layout: {
1439
+ # grid: {
1440
+ # featured_participant_attribute: "AttributeKey",
1441
+ # },
1442
+ # },
1443
+ # stage_arn: "StageArn", # required
1444
+ # tags: {
1445
+ # "TagKey" => "TagValue",
1446
+ # },
1447
+ # })
1448
+ #
1449
+ # @example Response structure
1450
+ #
1451
+ # resp.composition.arn #=> String
1452
+ # resp.composition.destinations #=> Array
1453
+ # resp.composition.destinations[0].configuration.channel.channel_arn #=> String
1454
+ # resp.composition.destinations[0].configuration.channel.encoder_configuration_arn #=> String
1455
+ # resp.composition.destinations[0].configuration.name #=> String
1456
+ # resp.composition.destinations[0].configuration.s3.encoder_configuration_arns #=> Array
1457
+ # resp.composition.destinations[0].configuration.s3.encoder_configuration_arns[0] #=> String
1458
+ # resp.composition.destinations[0].configuration.s3.recording_configuration.format #=> String, one of "HLS"
1459
+ # resp.composition.destinations[0].configuration.s3.storage_configuration_arn #=> String
1460
+ # resp.composition.destinations[0].detail.s3.recording_prefix #=> String
1461
+ # resp.composition.destinations[0].end_time #=> Time
1462
+ # resp.composition.destinations[0].id #=> String
1463
+ # resp.composition.destinations[0].start_time #=> Time
1464
+ # resp.composition.destinations[0].state #=> String, one of "STARTING", "ACTIVE", "STOPPING", "RECONNECTING", "FAILED", "STOPPED"
1465
+ # resp.composition.end_time #=> Time
1466
+ # resp.composition.layout.grid.featured_participant_attribute #=> String
1467
+ # resp.composition.stage_arn #=> String
1468
+ # resp.composition.start_time #=> Time
1469
+ # resp.composition.state #=> String, one of "STARTING", "ACTIVE", "STOPPING", "FAILED", "STOPPED"
1470
+ # resp.composition.tags #=> Hash
1471
+ # resp.composition.tags["TagKey"] #=> String
1472
+ #
1473
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/StartComposition AWS API Documentation
1474
+ #
1475
+ # @overload start_composition(params = {})
1476
+ # @param [Hash] params ({})
1477
+ def start_composition(params = {}, options = {})
1478
+ req = build_request(:start_composition, params)
1479
+ req.send_request(options)
1480
+ end
1481
+
1482
+ # Stops and deletes a Composition resource. Any broadcast from the
1483
+ # Composition resource is stopped.
1484
+ #
1485
+ # @option params [required, String] :arn
1486
+ # ARN of the Composition.
1487
+ #
1488
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1489
+ #
1490
+ # @example Request syntax with placeholder values
1491
+ #
1492
+ # resp = client.stop_composition({
1493
+ # arn: "CompositionArn", # required
1494
+ # })
1495
+ #
1496
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/StopComposition AWS API Documentation
1497
+ #
1498
+ # @overload stop_composition(params = {})
1499
+ # @param [Hash] params ({})
1500
+ def stop_composition(params = {}, options = {})
1501
+ req = build_request(:stop_composition, params)
1502
+ req.send_request(options)
1503
+ end
1504
+
936
1505
  # Adds or updates tags for the AWS resource with the specified ARN.
937
1506
  #
938
1507
  # @option params [required, String] :resource_arn
@@ -1052,7 +1621,7 @@ module Aws::IVSRealTime
1052
1621
  params: params,
1053
1622
  config: config)
1054
1623
  context[:gem_name] = 'aws-sdk-ivsrealtime'
1055
- context[:gem_version] = '1.10.0'
1624
+ context[:gem_version] = '1.12.0'
1056
1625
  Seahorse::Client::Request.new(handlers, context)
1057
1626
  end
1058
1627