aws-sdk-ivsrealtime 1.1.0 → 1.2.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: 7dec4a4e38b3a37a42c058509b62b47b231fd95eb06dde8f4caadc5b0871b109
4
- data.tar.gz: 43fc5bce670744d8ce8b2693586fd486a3f8aa18d4d35529a6d1e9a4ac1b2d8b
3
+ metadata.gz: b02fdb8bdabe4457d10d87e3b8e48037e8a63291de686aee50579407aa54f939
4
+ data.tar.gz: cb7213d02b74146fe4f6131b61df1948a261bcee832e48a033cfd455df10c97b
5
5
  SHA512:
6
- metadata.gz: 7be2c478eb5c437bd704ecf5e1fd4981ad049d04e2a6d234d72201c7b73f856b35648ae2bef6277fcfa20952c1555a2bb8b8fab642104bd6f76f3a9207f0d4e8
7
- data.tar.gz: 107cd403ae0f4535a324d6deae2a954f4368ac7252c797a9c9840e1f7e5e98d38c66d3b4c09a44d1269892e335738ba2f886a2e02821f7223a690658ed31104e
6
+ metadata.gz: 29fc395a7f74e2be3513b6ea734e9db623a00f9b0d2ba04a5be35e076128735acd75d9770fa05fc1b70eb1ab2f6cd0cd6af40e60f6c01affb9a09393fa1d1236
7
+ data.tar.gz: c3825a9ff90066d5d02c928874a585450c81fd17619bb406742c92bd470c34fa075fbb7e307f6ed5fdb8fcb85602e1e2d2e49785197693aac101aec8571030df
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.2.0 (2023-05-11)
5
+ ------------------
6
+
7
+ * Feature - Add methods for inspecting and debugging stages: ListStageSessions, GetStageSession, ListParticipants, GetParticipant, and ListParticipantEvents.
8
+
4
9
  1.1.0 (2023-04-05)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.0
1
+ 1.2.0
@@ -387,8 +387,8 @@ module Aws::IVSRealTime
387
387
  # Default: `PUBLISH, SUBSCRIBE`.
388
388
  #
389
389
  # @option params [Integer] :duration
390
- # Duration (in minutes), after which the token expires. Default: 60 (1
391
- # hour).
390
+ # Duration (in minutes), after which the token expires. Default: 720 (12
391
+ # hours).
392
392
  #
393
393
  # @option params [required, String] :stage_arn
394
394
  # ARN of the stage to which this token is scoped.
@@ -534,8 +534,8 @@ module Aws::IVSRealTime
534
534
  # permanently from a specified stage.
535
535
  #
536
536
  # @option params [required, String] :participant_id
537
- # Identifier of the participant to be disconnected. This is returned by
538
- # CreateParticipantToken.
537
+ # Identifier of the participant to be disconnected. This is assigned by
538
+ # IVS and returned by CreateParticipantToken.
539
539
  #
540
540
  # @option params [String] :reason
541
541
  # Description of why this participant is being disconnected.
@@ -562,6 +562,49 @@ module Aws::IVSRealTime
562
562
  req.send_request(options)
563
563
  end
564
564
 
565
+ # Gets information about the specified participant token.
566
+ #
567
+ # @option params [required, String] :participant_id
568
+ # Unique identifier for the participant. This is assigned by IVS and
569
+ # returned by CreateParticipantToken.
570
+ #
571
+ # @option params [required, String] :session_id
572
+ # ID of a session within the stage.
573
+ #
574
+ # @option params [required, String] :stage_arn
575
+ # Stage ARN.
576
+ #
577
+ # @return [Types::GetParticipantResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
578
+ #
579
+ # * {Types::GetParticipantResponse#participant #participant} => Types::Participant
580
+ #
581
+ # @example Request syntax with placeholder values
582
+ #
583
+ # resp = client.get_participant({
584
+ # participant_id: "ParticipantId", # required
585
+ # session_id: "StageSessionId", # required
586
+ # stage_arn: "StageArn", # required
587
+ # })
588
+ #
589
+ # @example Response structure
590
+ #
591
+ # resp.participant.attributes #=> Hash
592
+ # resp.participant.attributes["String"] #=> String
593
+ # resp.participant.first_join_time #=> Time
594
+ # resp.participant.participant_id #=> String
595
+ # resp.participant.published #=> Boolean
596
+ # resp.participant.state #=> String, one of "CONNECTED", "DISCONNECTED"
597
+ # resp.participant.user_id #=> String
598
+ #
599
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetParticipant AWS API Documentation
600
+ #
601
+ # @overload get_participant(params = {})
602
+ # @param [Hash] params ({})
603
+ def get_participant(params = {}, options = {})
604
+ req = build_request(:get_participant, params)
605
+ req.send_request(options)
606
+ end
607
+
565
608
  # Gets information for the specified stage.
566
609
  #
567
610
  # @option params [required, String] :arn
@@ -594,6 +637,210 @@ module Aws::IVSRealTime
594
637
  req.send_request(options)
595
638
  end
596
639
 
640
+ # Gets information for the specified stage session.
641
+ #
642
+ # @option params [required, String] :session_id
643
+ # ID of a session within the stage.
644
+ #
645
+ # @option params [required, String] :stage_arn
646
+ # ARN of the stage for which the information is to be retrieved.
647
+ #
648
+ # @return [Types::GetStageSessionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
649
+ #
650
+ # * {Types::GetStageSessionResponse#stage_session #stage_session} => Types::StageSession
651
+ #
652
+ # @example Request syntax with placeholder values
653
+ #
654
+ # resp = client.get_stage_session({
655
+ # session_id: "StageSessionId", # required
656
+ # stage_arn: "StageArn", # required
657
+ # })
658
+ #
659
+ # @example Response structure
660
+ #
661
+ # resp.stage_session.end_time #=> Time
662
+ # resp.stage_session.session_id #=> String
663
+ # resp.stage_session.start_time #=> Time
664
+ #
665
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetStageSession AWS API Documentation
666
+ #
667
+ # @overload get_stage_session(params = {})
668
+ # @param [Hash] params ({})
669
+ def get_stage_session(params = {}, options = {})
670
+ req = build_request(:get_stage_session, params)
671
+ req.send_request(options)
672
+ end
673
+
674
+ # Lists events for a specified participant that occurred during a
675
+ # specified stage session.
676
+ #
677
+ # @option params [Integer] :max_results
678
+ # Maximum number of results to return. Default: 50.
679
+ #
680
+ # @option params [String] :next_token
681
+ # The first participant to retrieve. This is used for pagination; see
682
+ # the `nextToken` response field.
683
+ #
684
+ # @option params [required, String] :participant_id
685
+ # Unique identifier for this participant. This is assigned by IVS and
686
+ # returned by CreateParticipantToken.
687
+ #
688
+ # @option params [required, String] :session_id
689
+ # ID of a session within the stage.
690
+ #
691
+ # @option params [required, String] :stage_arn
692
+ # Stage ARN.
693
+ #
694
+ # @return [Types::ListParticipantEventsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
695
+ #
696
+ # * {Types::ListParticipantEventsResponse#events #events} => Array<Types::Event>
697
+ # * {Types::ListParticipantEventsResponse#next_token #next_token} => String
698
+ #
699
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
700
+ #
701
+ # @example Request syntax with placeholder values
702
+ #
703
+ # resp = client.list_participant_events({
704
+ # max_results: 1,
705
+ # next_token: "PaginationToken",
706
+ # participant_id: "ParticipantId", # required
707
+ # session_id: "StageSessionId", # required
708
+ # stage_arn: "StageArn", # required
709
+ # })
710
+ #
711
+ # @example Response structure
712
+ #
713
+ # resp.events #=> Array
714
+ # resp.events[0].error_code #=> String, one of "INSUFFICIENT_CAPABILITIES"
715
+ # resp.events[0].event_time #=> Time
716
+ # resp.events[0].name #=> String, one of "JOINED", "LEFT", "PUBLISH_STARTED", "PUBLISH_STOPPED", "SUBSCRIBE_STARTED", "SUBSCRIBE_STOPPED", "PUBLISH_ERROR", "SUBSCRIBE_ERROR", "JOIN_ERROR"
717
+ # resp.events[0].participant_id #=> String
718
+ # resp.events[0].remote_participant_id #=> String
719
+ # resp.next_token #=> String
720
+ #
721
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListParticipantEvents AWS API Documentation
722
+ #
723
+ # @overload list_participant_events(params = {})
724
+ # @param [Hash] params ({})
725
+ def list_participant_events(params = {}, options = {})
726
+ req = build_request(:list_participant_events, params)
727
+ req.send_request(options)
728
+ end
729
+
730
+ # Lists all participants in a specified stage session.
731
+ #
732
+ # @option params [Boolean] :filter_by_published
733
+ # Filters the response list to only show participants who published
734
+ # during the stage session. Only one of `filterByUserId`,
735
+ # `filterByPublished`, or `filterByState` can be provided per request.
736
+ #
737
+ # @option params [String] :filter_by_state
738
+ # Filters the response list to only show participants in the specified
739
+ # state. Only one of `filterByUserId`, `filterByPublished`, or
740
+ # `filterByState` can be provided per request.
741
+ #
742
+ # @option params [String] :filter_by_user_id
743
+ # Filters the response list to match the specified user ID. Only one of
744
+ # `filterByUserId`, `filterByPublished`, or `filterByState` can be
745
+ # provided per request. A `userId` is a customer-assigned name to help
746
+ # identify the token; this can be used to link a participant to a user
747
+ # in the customer’s own systems.
748
+ #
749
+ # @option params [Integer] :max_results
750
+ # Maximum number of results to return. Default: 50.
751
+ #
752
+ # @option params [String] :next_token
753
+ # The first participant to retrieve. This is used for pagination; see
754
+ # the `nextToken` response field.
755
+ #
756
+ # @option params [required, String] :session_id
757
+ # ID of the session within the stage.
758
+ #
759
+ # @option params [required, String] :stage_arn
760
+ # Stage ARN.
761
+ #
762
+ # @return [Types::ListParticipantsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
763
+ #
764
+ # * {Types::ListParticipantsResponse#next_token #next_token} => String
765
+ # * {Types::ListParticipantsResponse#participants #participants} => Array<Types::ParticipantSummary>
766
+ #
767
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
768
+ #
769
+ # @example Request syntax with placeholder values
770
+ #
771
+ # resp = client.list_participants({
772
+ # filter_by_published: false,
773
+ # filter_by_state: "CONNECTED", # accepts CONNECTED, DISCONNECTED
774
+ # filter_by_user_id: "UserId",
775
+ # max_results: 1,
776
+ # next_token: "PaginationToken",
777
+ # session_id: "StageSessionId", # required
778
+ # stage_arn: "StageArn", # required
779
+ # })
780
+ #
781
+ # @example Response structure
782
+ #
783
+ # resp.next_token #=> String
784
+ # resp.participants #=> Array
785
+ # resp.participants[0].first_join_time #=> Time
786
+ # resp.participants[0].participant_id #=> String
787
+ # resp.participants[0].published #=> Boolean
788
+ # resp.participants[0].state #=> String, one of "CONNECTED", "DISCONNECTED"
789
+ # resp.participants[0].user_id #=> String
790
+ #
791
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListParticipants AWS API Documentation
792
+ #
793
+ # @overload list_participants(params = {})
794
+ # @param [Hash] params ({})
795
+ def list_participants(params = {}, options = {})
796
+ req = build_request(:list_participants, params)
797
+ req.send_request(options)
798
+ end
799
+
800
+ # Gets all sessions for a specified stage.
801
+ #
802
+ # @option params [Integer] :max_results
803
+ # Maximum number of results to return. Default: 50.
804
+ #
805
+ # @option params [String] :next_token
806
+ # The first stage to retrieve. This is used for pagination; see the
807
+ # `nextToken` response field.
808
+ #
809
+ # @option params [required, String] :stage_arn
810
+ # Stage ARN.
811
+ #
812
+ # @return [Types::ListStageSessionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
813
+ #
814
+ # * {Types::ListStageSessionsResponse#next_token #next_token} => String
815
+ # * {Types::ListStageSessionsResponse#stage_sessions #stage_sessions} => Array<Types::StageSessionSummary>
816
+ #
817
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
818
+ #
819
+ # @example Request syntax with placeholder values
820
+ #
821
+ # resp = client.list_stage_sessions({
822
+ # max_results: 1,
823
+ # next_token: "PaginationToken",
824
+ # stage_arn: "StageArn", # required
825
+ # })
826
+ #
827
+ # @example Response structure
828
+ #
829
+ # resp.next_token #=> String
830
+ # resp.stage_sessions #=> Array
831
+ # resp.stage_sessions[0].end_time #=> Time
832
+ # resp.stage_sessions[0].session_id #=> String
833
+ # resp.stage_sessions[0].start_time #=> Time
834
+ #
835
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListStageSessions AWS API Documentation
836
+ #
837
+ # @overload list_stage_sessions(params = {})
838
+ # @param [Hash] params ({})
839
+ def list_stage_sessions(params = {}, options = {})
840
+ req = build_request(:list_stage_sessions, params)
841
+ req.send_request(options)
842
+ end
843
+
597
844
  # Gets summary information about all stages in your account, in the AWS
598
845
  # region where the API request is processed.
599
846
  #
@@ -785,7 +1032,7 @@ module Aws::IVSRealTime
785
1032
  params: params,
786
1033
  config: config)
787
1034
  context[:gem_name] = 'aws-sdk-ivsrealtime'
788
- context[:gem_version] = '1.1.0'
1035
+ context[:gem_version] = '1.2.0'
789
1036
  Seahorse::Client::Request.new(handlers, context)
790
1037
  end
791
1038
 
@@ -24,15 +24,38 @@ module Aws::IVSRealTime
24
24
  DisconnectParticipantReason = Shapes::StringShape.new(name: 'DisconnectParticipantReason')
25
25
  DisconnectParticipantRequest = Shapes::StructureShape.new(name: 'DisconnectParticipantRequest')
26
26
  DisconnectParticipantResponse = Shapes::StructureShape.new(name: 'DisconnectParticipantResponse')
27
+ Event = Shapes::StructureShape.new(name: 'Event')
28
+ EventErrorCode = Shapes::StringShape.new(name: 'EventErrorCode')
29
+ EventList = Shapes::ListShape.new(name: 'EventList')
30
+ EventName = Shapes::StringShape.new(name: 'EventName')
31
+ GetParticipantRequest = Shapes::StructureShape.new(name: 'GetParticipantRequest')
32
+ GetParticipantResponse = Shapes::StructureShape.new(name: 'GetParticipantResponse')
27
33
  GetStageRequest = Shapes::StructureShape.new(name: 'GetStageRequest')
28
34
  GetStageResponse = Shapes::StructureShape.new(name: 'GetStageResponse')
35
+ GetStageSessionRequest = Shapes::StructureShape.new(name: 'GetStageSessionRequest')
36
+ GetStageSessionResponse = Shapes::StructureShape.new(name: 'GetStageSessionResponse')
29
37
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
38
+ ListParticipantEventsRequest = Shapes::StructureShape.new(name: 'ListParticipantEventsRequest')
39
+ ListParticipantEventsResponse = Shapes::StructureShape.new(name: 'ListParticipantEventsResponse')
40
+ ListParticipantsRequest = Shapes::StructureShape.new(name: 'ListParticipantsRequest')
41
+ ListParticipantsResponse = Shapes::StructureShape.new(name: 'ListParticipantsResponse')
42
+ ListStageSessionsRequest = Shapes::StructureShape.new(name: 'ListStageSessionsRequest')
43
+ ListStageSessionsResponse = Shapes::StructureShape.new(name: 'ListStageSessionsResponse')
30
44
  ListStagesRequest = Shapes::StructureShape.new(name: 'ListStagesRequest')
31
45
  ListStagesResponse = Shapes::StructureShape.new(name: 'ListStagesResponse')
32
46
  ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
33
47
  ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
48
+ MaxParticipantEventResults = Shapes::IntegerShape.new(name: 'MaxParticipantEventResults')
49
+ MaxParticipantResults = Shapes::IntegerShape.new(name: 'MaxParticipantResults')
34
50
  MaxStageResults = Shapes::IntegerShape.new(name: 'MaxStageResults')
51
+ MaxStageSessionResults = Shapes::IntegerShape.new(name: 'MaxStageSessionResults')
35
52
  PaginationToken = Shapes::StringShape.new(name: 'PaginationToken')
53
+ Participant = Shapes::StructureShape.new(name: 'Participant')
54
+ ParticipantAttributes = Shapes::MapShape.new(name: 'ParticipantAttributes')
55
+ ParticipantId = Shapes::StringShape.new(name: 'ParticipantId')
56
+ ParticipantList = Shapes::ListShape.new(name: 'ParticipantList')
57
+ ParticipantState = Shapes::StringShape.new(name: 'ParticipantState')
58
+ ParticipantSummary = Shapes::StructureShape.new(name: 'ParticipantSummary')
36
59
  ParticipantToken = Shapes::StructureShape.new(name: 'ParticipantToken')
37
60
  ParticipantTokenAttributes = Shapes::MapShape.new(name: 'ParticipantTokenAttributes')
38
61
  ParticipantTokenCapabilities = Shapes::ListShape.new(name: 'ParticipantTokenCapabilities')
@@ -46,13 +69,17 @@ module Aws::IVSRealTime
46
69
  ParticipantTokenString = Shapes::StringShape.new(name: 'ParticipantTokenString')
47
70
  ParticipantTokenUserId = Shapes::StringShape.new(name: 'ParticipantTokenUserId')
48
71
  PendingVerification = Shapes::StructureShape.new(name: 'PendingVerification')
72
+ Published = Shapes::BooleanShape.new(name: 'Published')
49
73
  ResourceArn = Shapes::StringShape.new(name: 'ResourceArn')
50
74
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
51
75
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
52
76
  Stage = Shapes::StructureShape.new(name: 'Stage')
53
77
  StageArn = Shapes::StringShape.new(name: 'StageArn')
54
78
  StageName = Shapes::StringShape.new(name: 'StageName')
79
+ StageSession = Shapes::StructureShape.new(name: 'StageSession')
55
80
  StageSessionId = Shapes::StringShape.new(name: 'StageSessionId')
81
+ StageSessionList = Shapes::ListShape.new(name: 'StageSessionList')
82
+ StageSessionSummary = Shapes::StructureShape.new(name: 'StageSessionSummary')
56
83
  StageSummary = Shapes::StructureShape.new(name: 'StageSummary')
57
84
  StageSummaryList = Shapes::ListShape.new(name: 'StageSummaryList')
58
85
  String = Shapes::StringShape.new(name: 'String')
@@ -62,10 +89,12 @@ module Aws::IVSRealTime
62
89
  TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
63
90
  TagValue = Shapes::StringShape.new(name: 'TagValue')
64
91
  Tags = Shapes::MapShape.new(name: 'Tags')
92
+ Time = Shapes::TimestampShape.new(name: 'Time', timestampFormat: "iso8601")
65
93
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
66
94
  UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
67
95
  UpdateStageRequest = Shapes::StructureShape.new(name: 'UpdateStageRequest')
68
96
  UpdateStageResponse = Shapes::StructureShape.new(name: 'UpdateStageResponse')
97
+ UserId = Shapes::StringShape.new(name: 'UserId')
69
98
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
70
99
  errorMessage = Shapes::StringShape.new(name: 'errorMessage')
71
100
 
@@ -106,15 +135,72 @@ module Aws::IVSRealTime
106
135
 
107
136
  DisconnectParticipantResponse.struct_class = Types::DisconnectParticipantResponse
108
137
 
138
+ Event.add_member(:error_code, Shapes::ShapeRef.new(shape: EventErrorCode, location_name: "errorCode"))
139
+ Event.add_member(:event_time, Shapes::ShapeRef.new(shape: Time, location_name: "eventTime"))
140
+ Event.add_member(:name, Shapes::ShapeRef.new(shape: EventName, location_name: "name"))
141
+ Event.add_member(:participant_id, Shapes::ShapeRef.new(shape: ParticipantId, location_name: "participantId"))
142
+ Event.add_member(:remote_participant_id, Shapes::ShapeRef.new(shape: ParticipantId, location_name: "remoteParticipantId"))
143
+ Event.struct_class = Types::Event
144
+
145
+ EventList.member = Shapes::ShapeRef.new(shape: Event)
146
+
147
+ GetParticipantRequest.add_member(:participant_id, Shapes::ShapeRef.new(shape: ParticipantId, required: true, location_name: "participantId"))
148
+ GetParticipantRequest.add_member(:session_id, Shapes::ShapeRef.new(shape: StageSessionId, required: true, location_name: "sessionId"))
149
+ GetParticipantRequest.add_member(:stage_arn, Shapes::ShapeRef.new(shape: StageArn, required: true, location_name: "stageArn"))
150
+ GetParticipantRequest.struct_class = Types::GetParticipantRequest
151
+
152
+ GetParticipantResponse.add_member(:participant, Shapes::ShapeRef.new(shape: Participant, location_name: "participant"))
153
+ GetParticipantResponse.struct_class = Types::GetParticipantResponse
154
+
109
155
  GetStageRequest.add_member(:arn, Shapes::ShapeRef.new(shape: StageArn, required: true, location_name: "arn"))
110
156
  GetStageRequest.struct_class = Types::GetStageRequest
111
157
 
112
158
  GetStageResponse.add_member(:stage, Shapes::ShapeRef.new(shape: Stage, location_name: "stage"))
113
159
  GetStageResponse.struct_class = Types::GetStageResponse
114
160
 
161
+ GetStageSessionRequest.add_member(:session_id, Shapes::ShapeRef.new(shape: StageSessionId, required: true, location_name: "sessionId"))
162
+ GetStageSessionRequest.add_member(:stage_arn, Shapes::ShapeRef.new(shape: StageArn, required: true, location_name: "stageArn"))
163
+ GetStageSessionRequest.struct_class = Types::GetStageSessionRequest
164
+
165
+ GetStageSessionResponse.add_member(:stage_session, Shapes::ShapeRef.new(shape: StageSession, location_name: "stageSession"))
166
+ GetStageSessionResponse.struct_class = Types::GetStageSessionResponse
167
+
115
168
  InternalServerException.add_member(:exception_message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "exceptionMessage"))
116
169
  InternalServerException.struct_class = Types::InternalServerException
117
170
 
171
+ ListParticipantEventsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxParticipantEventResults, location_name: "maxResults"))
172
+ ListParticipantEventsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
173
+ ListParticipantEventsRequest.add_member(:participant_id, Shapes::ShapeRef.new(shape: ParticipantId, required: true, location_name: "participantId"))
174
+ ListParticipantEventsRequest.add_member(:session_id, Shapes::ShapeRef.new(shape: StageSessionId, required: true, location_name: "sessionId"))
175
+ ListParticipantEventsRequest.add_member(:stage_arn, Shapes::ShapeRef.new(shape: StageArn, required: true, location_name: "stageArn"))
176
+ ListParticipantEventsRequest.struct_class = Types::ListParticipantEventsRequest
177
+
178
+ ListParticipantEventsResponse.add_member(:events, Shapes::ShapeRef.new(shape: EventList, required: true, location_name: "events"))
179
+ ListParticipantEventsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
180
+ ListParticipantEventsResponse.struct_class = Types::ListParticipantEventsResponse
181
+
182
+ ListParticipantsRequest.add_member(:filter_by_published, Shapes::ShapeRef.new(shape: Published, location_name: "filterByPublished"))
183
+ ListParticipantsRequest.add_member(:filter_by_state, Shapes::ShapeRef.new(shape: ParticipantState, location_name: "filterByState"))
184
+ ListParticipantsRequest.add_member(:filter_by_user_id, Shapes::ShapeRef.new(shape: UserId, location_name: "filterByUserId"))
185
+ ListParticipantsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxParticipantResults, location_name: "maxResults"))
186
+ ListParticipantsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
187
+ ListParticipantsRequest.add_member(:session_id, Shapes::ShapeRef.new(shape: StageSessionId, required: true, location_name: "sessionId"))
188
+ ListParticipantsRequest.add_member(:stage_arn, Shapes::ShapeRef.new(shape: StageArn, required: true, location_name: "stageArn"))
189
+ ListParticipantsRequest.struct_class = Types::ListParticipantsRequest
190
+
191
+ ListParticipantsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
192
+ ListParticipantsResponse.add_member(:participants, Shapes::ShapeRef.new(shape: ParticipantList, required: true, location_name: "participants"))
193
+ ListParticipantsResponse.struct_class = Types::ListParticipantsResponse
194
+
195
+ ListStageSessionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxStageSessionResults, location_name: "maxResults"))
196
+ ListStageSessionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
197
+ ListStageSessionsRequest.add_member(:stage_arn, Shapes::ShapeRef.new(shape: StageArn, required: true, location_name: "stageArn"))
198
+ ListStageSessionsRequest.struct_class = Types::ListStageSessionsRequest
199
+
200
+ ListStageSessionsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
201
+ ListStageSessionsResponse.add_member(:stage_sessions, Shapes::ShapeRef.new(shape: StageSessionList, required: true, location_name: "stageSessions"))
202
+ ListStageSessionsResponse.struct_class = Types::ListStageSessionsResponse
203
+
118
204
  ListStagesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxStageResults, location_name: "maxResults"))
119
205
  ListStagesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
120
206
  ListStagesRequest.struct_class = Types::ListStagesRequest
@@ -129,6 +215,26 @@ module Aws::IVSRealTime
129
215
  ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, required: true, location_name: "tags"))
130
216
  ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
131
217
 
218
+ Participant.add_member(:attributes, Shapes::ShapeRef.new(shape: ParticipantAttributes, location_name: "attributes"))
219
+ Participant.add_member(:first_join_time, Shapes::ShapeRef.new(shape: Time, location_name: "firstJoinTime"))
220
+ Participant.add_member(:participant_id, Shapes::ShapeRef.new(shape: ParticipantId, location_name: "participantId"))
221
+ Participant.add_member(:published, Shapes::ShapeRef.new(shape: Published, location_name: "published"))
222
+ Participant.add_member(:state, Shapes::ShapeRef.new(shape: ParticipantState, location_name: "state"))
223
+ Participant.add_member(:user_id, Shapes::ShapeRef.new(shape: UserId, location_name: "userId"))
224
+ Participant.struct_class = Types::Participant
225
+
226
+ ParticipantAttributes.key = Shapes::ShapeRef.new(shape: String)
227
+ ParticipantAttributes.value = Shapes::ShapeRef.new(shape: String)
228
+
229
+ ParticipantList.member = Shapes::ShapeRef.new(shape: ParticipantSummary)
230
+
231
+ ParticipantSummary.add_member(:first_join_time, Shapes::ShapeRef.new(shape: Time, location_name: "firstJoinTime"))
232
+ ParticipantSummary.add_member(:participant_id, Shapes::ShapeRef.new(shape: ParticipantId, location_name: "participantId"))
233
+ ParticipantSummary.add_member(:published, Shapes::ShapeRef.new(shape: Published, location_name: "published"))
234
+ ParticipantSummary.add_member(:state, Shapes::ShapeRef.new(shape: ParticipantState, location_name: "state"))
235
+ ParticipantSummary.add_member(:user_id, Shapes::ShapeRef.new(shape: UserId, location_name: "userId"))
236
+ ParticipantSummary.struct_class = Types::ParticipantSummary
237
+
132
238
  ParticipantToken.add_member(:attributes, Shapes::ShapeRef.new(shape: ParticipantTokenAttributes, location_name: "attributes"))
133
239
  ParticipantToken.add_member(:capabilities, Shapes::ShapeRef.new(shape: ParticipantTokenCapabilities, location_name: "capabilities"))
134
240
  ParticipantToken.add_member(:duration, Shapes::ShapeRef.new(shape: ParticipantTokenDurationMinutes, location_name: "duration"))
@@ -168,6 +274,18 @@ module Aws::IVSRealTime
168
274
  Stage.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "tags"))
169
275
  Stage.struct_class = Types::Stage
170
276
 
277
+ StageSession.add_member(:end_time, Shapes::ShapeRef.new(shape: Time, location_name: "endTime"))
278
+ StageSession.add_member(:session_id, Shapes::ShapeRef.new(shape: StageSessionId, location_name: "sessionId"))
279
+ StageSession.add_member(:start_time, Shapes::ShapeRef.new(shape: Time, location_name: "startTime"))
280
+ StageSession.struct_class = Types::StageSession
281
+
282
+ StageSessionList.member = Shapes::ShapeRef.new(shape: StageSessionSummary)
283
+
284
+ StageSessionSummary.add_member(:end_time, Shapes::ShapeRef.new(shape: Time, location_name: "endTime"))
285
+ StageSessionSummary.add_member(:session_id, Shapes::ShapeRef.new(shape: StageSessionId, location_name: "sessionId"))
286
+ StageSessionSummary.add_member(:start_time, Shapes::ShapeRef.new(shape: Time, location_name: "startTime"))
287
+ StageSessionSummary.struct_class = Types::StageSessionSummary
288
+
171
289
  StageSummary.add_member(:active_session_id, Shapes::ShapeRef.new(shape: StageSessionId, location_name: "activeSessionId"))
172
290
  StageSummary.add_member(:arn, Shapes::ShapeRef.new(shape: StageArn, required: true, location_name: "arn"))
173
291
  StageSummary.add_member(:name, Shapes::ShapeRef.new(shape: StageName, location_name: "name"))
@@ -272,6 +390,17 @@ module Aws::IVSRealTime
272
390
  o.errors << Shapes::ShapeRef.new(shape: PendingVerification)
273
391
  end)
274
392
 
393
+ api.add_operation(:get_participant, Seahorse::Model::Operation.new.tap do |o|
394
+ o.name = "GetParticipant"
395
+ o.http_method = "POST"
396
+ o.http_request_uri = "/GetParticipant"
397
+ o.input = Shapes::ShapeRef.new(shape: GetParticipantRequest)
398
+ o.output = Shapes::ShapeRef.new(shape: GetParticipantResponse)
399
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
400
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
401
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
402
+ end)
403
+
275
404
  api.add_operation(:get_stage, Seahorse::Model::Operation.new.tap do |o|
276
405
  o.name = "GetStage"
277
406
  o.http_method = "POST"
@@ -283,6 +412,65 @@ module Aws::IVSRealTime
283
412
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
284
413
  end)
285
414
 
415
+ api.add_operation(:get_stage_session, Seahorse::Model::Operation.new.tap do |o|
416
+ o.name = "GetStageSession"
417
+ o.http_method = "POST"
418
+ o.http_request_uri = "/GetStageSession"
419
+ o.input = Shapes::ShapeRef.new(shape: GetStageSessionRequest)
420
+ o.output = Shapes::ShapeRef.new(shape: GetStageSessionResponse)
421
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
422
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
423
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
424
+ end)
425
+
426
+ api.add_operation(:list_participant_events, Seahorse::Model::Operation.new.tap do |o|
427
+ o.name = "ListParticipantEvents"
428
+ o.http_method = "POST"
429
+ o.http_request_uri = "/ListParticipantEvents"
430
+ o.input = Shapes::ShapeRef.new(shape: ListParticipantEventsRequest)
431
+ o.output = Shapes::ShapeRef.new(shape: ListParticipantEventsResponse)
432
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
433
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
434
+ o[:pager] = Aws::Pager.new(
435
+ limit_key: "max_results",
436
+ tokens: {
437
+ "next_token" => "next_token"
438
+ }
439
+ )
440
+ end)
441
+
442
+ api.add_operation(:list_participants, Seahorse::Model::Operation.new.tap do |o|
443
+ o.name = "ListParticipants"
444
+ o.http_method = "POST"
445
+ o.http_request_uri = "/ListParticipants"
446
+ o.input = Shapes::ShapeRef.new(shape: ListParticipantsRequest)
447
+ o.output = Shapes::ShapeRef.new(shape: ListParticipantsResponse)
448
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
449
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
450
+ o[:pager] = Aws::Pager.new(
451
+ limit_key: "max_results",
452
+ tokens: {
453
+ "next_token" => "next_token"
454
+ }
455
+ )
456
+ end)
457
+
458
+ api.add_operation(:list_stage_sessions, Seahorse::Model::Operation.new.tap do |o|
459
+ o.name = "ListStageSessions"
460
+ o.http_method = "POST"
461
+ o.http_request_uri = "/ListStageSessions"
462
+ o.input = Shapes::ShapeRef.new(shape: ListStageSessionsRequest)
463
+ o.output = Shapes::ShapeRef.new(shape: ListStageSessionsResponse)
464
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
465
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
466
+ o[:pager] = Aws::Pager.new(
467
+ limit_key: "max_results",
468
+ tokens: {
469
+ "next_token" => "next_token"
470
+ }
471
+ )
472
+ end)
473
+
286
474
  api.add_operation(:list_stages, Seahorse::Model::Operation.new.tap do |o|
287
475
  o.name = "ListStages"
288
476
  o.http_method = "POST"
@@ -67,6 +67,20 @@ module Aws::IVSRealTime
67
67
  end
68
68
  end
69
69
 
70
+ class GetParticipant
71
+ def self.build(context)
72
+ unless context.config.regional_endpoint
73
+ endpoint = context.config.endpoint.to_s
74
+ end
75
+ Aws::IVSRealTime::EndpointParameters.new(
76
+ region: context.config.region,
77
+ use_dual_stack: context.config.use_dualstack_endpoint,
78
+ use_fips: context.config.use_fips_endpoint,
79
+ endpoint: endpoint,
80
+ )
81
+ end
82
+ end
83
+
70
84
  class GetStage
71
85
  def self.build(context)
72
86
  unless context.config.regional_endpoint
@@ -81,6 +95,62 @@ module Aws::IVSRealTime
81
95
  end
82
96
  end
83
97
 
98
+ class GetStageSession
99
+ def self.build(context)
100
+ unless context.config.regional_endpoint
101
+ endpoint = context.config.endpoint.to_s
102
+ end
103
+ Aws::IVSRealTime::EndpointParameters.new(
104
+ region: context.config.region,
105
+ use_dual_stack: context.config.use_dualstack_endpoint,
106
+ use_fips: context.config.use_fips_endpoint,
107
+ endpoint: endpoint,
108
+ )
109
+ end
110
+ end
111
+
112
+ class ListParticipantEvents
113
+ def self.build(context)
114
+ unless context.config.regional_endpoint
115
+ endpoint = context.config.endpoint.to_s
116
+ end
117
+ Aws::IVSRealTime::EndpointParameters.new(
118
+ region: context.config.region,
119
+ use_dual_stack: context.config.use_dualstack_endpoint,
120
+ use_fips: context.config.use_fips_endpoint,
121
+ endpoint: endpoint,
122
+ )
123
+ end
124
+ end
125
+
126
+ class ListParticipants
127
+ def self.build(context)
128
+ unless context.config.regional_endpoint
129
+ endpoint = context.config.endpoint.to_s
130
+ end
131
+ Aws::IVSRealTime::EndpointParameters.new(
132
+ region: context.config.region,
133
+ use_dual_stack: context.config.use_dualstack_endpoint,
134
+ use_fips: context.config.use_fips_endpoint,
135
+ endpoint: endpoint,
136
+ )
137
+ end
138
+ end
139
+
140
+ class ListStageSessions
141
+ def self.build(context)
142
+ unless context.config.regional_endpoint
143
+ endpoint = context.config.endpoint.to_s
144
+ end
145
+ Aws::IVSRealTime::EndpointParameters.new(
146
+ region: context.config.region,
147
+ use_dual_stack: context.config.use_dualstack_endpoint,
148
+ use_fips: context.config.use_fips_endpoint,
149
+ endpoint: endpoint,
150
+ )
151
+ end
152
+ end
153
+
84
154
  class ListStages
85
155
  def self.build(context)
86
156
  unless context.config.regional_endpoint
@@ -64,8 +64,18 @@ module Aws::IVSRealTime
64
64
  Aws::IVSRealTime::Endpoints::DeleteStage.build(context)
65
65
  when :disconnect_participant
66
66
  Aws::IVSRealTime::Endpoints::DisconnectParticipant.build(context)
67
+ when :get_participant
68
+ Aws::IVSRealTime::Endpoints::GetParticipant.build(context)
67
69
  when :get_stage
68
70
  Aws::IVSRealTime::Endpoints::GetStage.build(context)
71
+ when :get_stage_session
72
+ Aws::IVSRealTime::Endpoints::GetStageSession.build(context)
73
+ when :list_participant_events
74
+ Aws::IVSRealTime::Endpoints::ListParticipantEvents.build(context)
75
+ when :list_participants
76
+ Aws::IVSRealTime::Endpoints::ListParticipants.build(context)
77
+ when :list_stage_sessions
78
+ Aws::IVSRealTime::Endpoints::ListStageSessions.build(context)
69
79
  when :list_stages
70
80
  Aws::IVSRealTime::Endpoints::ListStages.build(context)
71
81
  when :list_tags_for_resource
@@ -48,8 +48,8 @@ module Aws::IVSRealTime
48
48
  # @return [Array<String>]
49
49
  #
50
50
  # @!attribute [rw] duration
51
- # Duration (in minutes), after which the token expires. Default: 60 (1
52
- # hour).
51
+ # Duration (in minutes), after which the token expires. Default: 720
52
+ # (12 hours).
53
53
  # @return [Integer]
54
54
  #
55
55
  # @!attribute [rw] stage_arn
@@ -153,8 +153,8 @@ module Aws::IVSRealTime
153
153
  class DeleteStageResponse < Aws::EmptyStructure; end
154
154
 
155
155
  # @!attribute [rw] participant_id
156
- # Identifier of the participant to be disconnected. This is returned
157
- # by CreateParticipantToken.
156
+ # Identifier of the participant to be disconnected. This is assigned
157
+ # by IVS and returned by CreateParticipantToken.
158
158
  # @return [String]
159
159
  #
160
160
  # @!attribute [rw] reason
@@ -179,6 +179,85 @@ module Aws::IVSRealTime
179
179
  #
180
180
  class DisconnectParticipantResponse < Aws::EmptyStructure; end
181
181
 
182
+ # An occurrence during a stage session.
183
+ #
184
+ # @!attribute [rw] error_code
185
+ # If the event is an error event, the error code is provided to give
186
+ # insight into the specific error that occurred. If the event is not
187
+ # an error event, this field is null. `INSUFFICIENT_CAPABILITIES`
188
+ # indicates that the participant tried to take an action that the
189
+ # participant’s token is not allowed to do. For more information about
190
+ # participant capabilities, see the `capabilities` field in
191
+ # CreateParticipantToken.
192
+ # @return [String]
193
+ #
194
+ # @!attribute [rw] event_time
195
+ # ISO 8601 timestamp (returned as a string) for when the event
196
+ # occurred.
197
+ # @return [Time]
198
+ #
199
+ # @!attribute [rw] name
200
+ # The name of the event.
201
+ # @return [String]
202
+ #
203
+ # @!attribute [rw] participant_id
204
+ # Unique identifier for the participant who triggered the event. This
205
+ # is assigned by IVS.
206
+ # @return [String]
207
+ #
208
+ # @!attribute [rw] remote_participant_id
209
+ # Unique identifier for the remote participant. For a subscribe event,
210
+ # this is the publisher. For a publish or join event, this is null.
211
+ # This is assigned by IVS.
212
+ # @return [String]
213
+ #
214
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/Event AWS API Documentation
215
+ #
216
+ class Event < Struct.new(
217
+ :error_code,
218
+ :event_time,
219
+ :name,
220
+ :participant_id,
221
+ :remote_participant_id)
222
+ SENSITIVE = []
223
+ include Aws::Structure
224
+ end
225
+
226
+ # @!attribute [rw] participant_id
227
+ # Unique identifier for the participant. This is assigned by IVS and
228
+ # returned by CreateParticipantToken.
229
+ # @return [String]
230
+ #
231
+ # @!attribute [rw] session_id
232
+ # ID of a session within the stage.
233
+ # @return [String]
234
+ #
235
+ # @!attribute [rw] stage_arn
236
+ # Stage ARN.
237
+ # @return [String]
238
+ #
239
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetParticipantRequest AWS API Documentation
240
+ #
241
+ class GetParticipantRequest < Struct.new(
242
+ :participant_id,
243
+ :session_id,
244
+ :stage_arn)
245
+ SENSITIVE = []
246
+ include Aws::Structure
247
+ end
248
+
249
+ # @!attribute [rw] participant
250
+ # The participant that is returned.
251
+ # @return [Types::Participant]
252
+ #
253
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetParticipantResponse AWS API Documentation
254
+ #
255
+ class GetParticipantResponse < Struct.new(
256
+ :participant)
257
+ SENSITIVE = []
258
+ include Aws::Structure
259
+ end
260
+
182
261
  # @!attribute [rw] arn
183
262
  # ARN of the stage for which the information is to be retrieved.
184
263
  # @return [String]
@@ -192,6 +271,7 @@ module Aws::IVSRealTime
192
271
  end
193
272
 
194
273
  # @!attribute [rw] stage
274
+ # The stage that is returned.
195
275
  # @return [Types::Stage]
196
276
  #
197
277
  # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetStageResponse AWS API Documentation
@@ -202,6 +282,35 @@ module Aws::IVSRealTime
202
282
  include Aws::Structure
203
283
  end
204
284
 
285
+ # @!attribute [rw] session_id
286
+ # ID of a session within the stage.
287
+ # @return [String]
288
+ #
289
+ # @!attribute [rw] stage_arn
290
+ # ARN of the stage for which the information is to be retrieved.
291
+ # @return [String]
292
+ #
293
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetStageSessionRequest AWS API Documentation
294
+ #
295
+ class GetStageSessionRequest < Struct.new(
296
+ :session_id,
297
+ :stage_arn)
298
+ SENSITIVE = []
299
+ include Aws::Structure
300
+ end
301
+
302
+ # @!attribute [rw] stage_session
303
+ # The stage session that is returned.
304
+ # @return [Types::StageSession]
305
+ #
306
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetStageSessionResponse AWS API Documentation
307
+ #
308
+ class GetStageSessionResponse < Struct.new(
309
+ :stage_session)
310
+ SENSITIVE = []
311
+ include Aws::Structure
312
+ end
313
+
205
314
  # @!attribute [rw] exception_message
206
315
  # Unexpected error during processing of request.
207
316
  # @return [String]
@@ -214,6 +323,168 @@ module Aws::IVSRealTime
214
323
  include Aws::Structure
215
324
  end
216
325
 
326
+ # @!attribute [rw] max_results
327
+ # Maximum number of results to return. Default: 50.
328
+ # @return [Integer]
329
+ #
330
+ # @!attribute [rw] next_token
331
+ # The first participant to retrieve. This is used for pagination; see
332
+ # the `nextToken` response field.
333
+ # @return [String]
334
+ #
335
+ # @!attribute [rw] participant_id
336
+ # Unique identifier for this participant. This is assigned by IVS and
337
+ # returned by CreateParticipantToken.
338
+ # @return [String]
339
+ #
340
+ # @!attribute [rw] session_id
341
+ # ID of a session within the stage.
342
+ # @return [String]
343
+ #
344
+ # @!attribute [rw] stage_arn
345
+ # Stage ARN.
346
+ # @return [String]
347
+ #
348
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListParticipantEventsRequest AWS API Documentation
349
+ #
350
+ class ListParticipantEventsRequest < Struct.new(
351
+ :max_results,
352
+ :next_token,
353
+ :participant_id,
354
+ :session_id,
355
+ :stage_arn)
356
+ SENSITIVE = []
357
+ include Aws::Structure
358
+ end
359
+
360
+ # @!attribute [rw] events
361
+ # List of the matching events.
362
+ # @return [Array<Types::Event>]
363
+ #
364
+ # @!attribute [rw] next_token
365
+ # If there are more rooms than `maxResults`, use `nextToken` in the
366
+ # request to get the next set.
367
+ # @return [String]
368
+ #
369
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListParticipantEventsResponse AWS API Documentation
370
+ #
371
+ class ListParticipantEventsResponse < Struct.new(
372
+ :events,
373
+ :next_token)
374
+ SENSITIVE = []
375
+ include Aws::Structure
376
+ end
377
+
378
+ # @!attribute [rw] filter_by_published
379
+ # Filters the response list to only show participants who published
380
+ # during the stage session. Only one of `filterByUserId`,
381
+ # `filterByPublished`, or `filterByState` can be provided per request.
382
+ # @return [Boolean]
383
+ #
384
+ # @!attribute [rw] filter_by_state
385
+ # Filters the response list to only show participants in the specified
386
+ # state. Only one of `filterByUserId`, `filterByPublished`, or
387
+ # `filterByState` can be provided per request.
388
+ # @return [String]
389
+ #
390
+ # @!attribute [rw] filter_by_user_id
391
+ # Filters the response list to match the specified user ID. Only one
392
+ # of `filterByUserId`, `filterByPublished`, or `filterByState` can be
393
+ # provided per request. A `userId` is a customer-assigned name to help
394
+ # identify the token; this can be used to link a participant to a user
395
+ # in the customer’s own systems.
396
+ # @return [String]
397
+ #
398
+ # @!attribute [rw] max_results
399
+ # Maximum number of results to return. Default: 50.
400
+ # @return [Integer]
401
+ #
402
+ # @!attribute [rw] next_token
403
+ # The first participant to retrieve. This is used for pagination; see
404
+ # the `nextToken` response field.
405
+ # @return [String]
406
+ #
407
+ # @!attribute [rw] session_id
408
+ # ID of the session within the stage.
409
+ # @return [String]
410
+ #
411
+ # @!attribute [rw] stage_arn
412
+ # Stage ARN.
413
+ # @return [String]
414
+ #
415
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListParticipantsRequest AWS API Documentation
416
+ #
417
+ class ListParticipantsRequest < Struct.new(
418
+ :filter_by_published,
419
+ :filter_by_state,
420
+ :filter_by_user_id,
421
+ :max_results,
422
+ :next_token,
423
+ :session_id,
424
+ :stage_arn)
425
+ SENSITIVE = []
426
+ include Aws::Structure
427
+ end
428
+
429
+ # @!attribute [rw] next_token
430
+ # If there are more rooms than `maxResults`, use `nextToken` in the
431
+ # request to get the next set.
432
+ # @return [String]
433
+ #
434
+ # @!attribute [rw] participants
435
+ # List of the matching participants (summary information only).
436
+ # @return [Array<Types::ParticipantSummary>]
437
+ #
438
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListParticipantsResponse AWS API Documentation
439
+ #
440
+ class ListParticipantsResponse < Struct.new(
441
+ :next_token,
442
+ :participants)
443
+ SENSITIVE = []
444
+ include Aws::Structure
445
+ end
446
+
447
+ # @!attribute [rw] max_results
448
+ # Maximum number of results to return. Default: 50.
449
+ # @return [Integer]
450
+ #
451
+ # @!attribute [rw] next_token
452
+ # The first stage to retrieve. This is used for pagination; see the
453
+ # `nextToken` response field.
454
+ # @return [String]
455
+ #
456
+ # @!attribute [rw] stage_arn
457
+ # Stage ARN.
458
+ # @return [String]
459
+ #
460
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListStageSessionsRequest AWS API Documentation
461
+ #
462
+ class ListStageSessionsRequest < Struct.new(
463
+ :max_results,
464
+ :next_token,
465
+ :stage_arn)
466
+ SENSITIVE = []
467
+ include Aws::Structure
468
+ end
469
+
470
+ # @!attribute [rw] next_token
471
+ # If there are more rooms than `maxResults`, use `nextToken` in the
472
+ # request to get the next set.
473
+ # @return [String]
474
+ #
475
+ # @!attribute [rw] stage_sessions
476
+ # List of matching stage sessions.
477
+ # @return [Array<Types::StageSessionSummary>]
478
+ #
479
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListStageSessionsResponse AWS API Documentation
480
+ #
481
+ class ListStageSessionsResponse < Struct.new(
482
+ :next_token,
483
+ :stage_sessions)
484
+ SENSITIVE = []
485
+ include Aws::Structure
486
+ end
487
+
217
488
  # @!attribute [rw] max_results
218
489
  # Maximum number of results to return. Default: 50.
219
490
  # @return [Integer]
@@ -276,6 +547,95 @@ module Aws::IVSRealTime
276
547
  include Aws::Structure
277
548
  end
278
549
 
550
+ # Object describing a participant that has joined a stage.
551
+ #
552
+ # @!attribute [rw] attributes
553
+ # Application-provided attributes to encode into the token and attach
554
+ # to a stage. Map keys and values can contain UTF-8 encoded text. The
555
+ # maximum length of this field is 1 KB total. *This field is exposed
556
+ # to all stage participants and should not be used for personally
557
+ # identifying, confidential, or sensitive information*.
558
+ # @return [Hash<String,String>]
559
+ #
560
+ # @!attribute [rw] first_join_time
561
+ # ISO 8601 timestamp (returned as a string) when the participant first
562
+ # joined the stage session.
563
+ # @return [Time]
564
+ #
565
+ # @!attribute [rw] participant_id
566
+ # Unique identifier for this participant, assigned by IVS.
567
+ # @return [String]
568
+ #
569
+ # @!attribute [rw] published
570
+ # Whether the participant ever published to the stage session.
571
+ # @return [Boolean]
572
+ #
573
+ # @!attribute [rw] state
574
+ # Whether the participant is connected to or disconnected from the
575
+ # stage.
576
+ # @return [String]
577
+ #
578
+ # @!attribute [rw] user_id
579
+ # Customer-assigned name to help identify the token; this can be used
580
+ # to link a participant to a user in the customer’s own systems. This
581
+ # can be any UTF-8 encoded text. *This field is exposed to all stage
582
+ # participants and should not be used for personally identifying,
583
+ # confidential, or sensitive information*.
584
+ # @return [String]
585
+ #
586
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/Participant AWS API Documentation
587
+ #
588
+ class Participant < Struct.new(
589
+ :attributes,
590
+ :first_join_time,
591
+ :participant_id,
592
+ :published,
593
+ :state,
594
+ :user_id)
595
+ SENSITIVE = []
596
+ include Aws::Structure
597
+ end
598
+
599
+ # Summary object describing a participant that has joined a stage.
600
+ #
601
+ # @!attribute [rw] first_join_time
602
+ # ISO 8601 timestamp (returned as a string) when the participant first
603
+ # joined the stage session.
604
+ # @return [Time]
605
+ #
606
+ # @!attribute [rw] participant_id
607
+ # Unique identifier for this participant, assigned by IVS.
608
+ # @return [String]
609
+ #
610
+ # @!attribute [rw] published
611
+ # Whether the participant ever published to the stage session.
612
+ # @return [Boolean]
613
+ #
614
+ # @!attribute [rw] state
615
+ # Whether the participant is connected to or disconnected from the
616
+ # stage.
617
+ # @return [String]
618
+ #
619
+ # @!attribute [rw] user_id
620
+ # Customer-assigned name to help identify the token; this can be used
621
+ # to link a participant to a user in the customer’s own systems. This
622
+ # can be any UTF-8 encoded text. *This field is exposed to all stage
623
+ # participants and should not be used for personally identifying,
624
+ # confidential, or sensitive information*.
625
+ # @return [String]
626
+ #
627
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ParticipantSummary AWS API Documentation
628
+ #
629
+ class ParticipantSummary < Struct.new(
630
+ :first_join_time,
631
+ :participant_id,
632
+ :published,
633
+ :state,
634
+ :user_id)
635
+ SENSITIVE = []
636
+ include Aws::Structure
637
+ end
638
+
279
639
  # Object specifying a participant token in a stage.
280
640
  #
281
641
  # @!attribute [rw] attributes
@@ -292,7 +652,7 @@ module Aws::IVSRealTime
292
652
  #
293
653
  # @!attribute [rw] duration
294
654
  # Duration (in minutes), after which the participant token expires.
295
- # Default: 60 (1 hour).
655
+ # Default: 720 (12 hours).
296
656
  # @return [Integer]
297
657
  #
298
658
  # @!attribute [rw] expiration_time
@@ -309,10 +669,11 @@ module Aws::IVSRealTime
309
669
  # @return [String]
310
670
  #
311
671
  # @!attribute [rw] user_id
312
- # Name to help identify the token. This can be any UTF-8 encoded text.
313
- # *This field is exposed to all stage participants and should not be
314
- # used for personally identifying, confidential, or sensitive
315
- # information.*
672
+ # Customer-assigned name to help identify the token; this can be used
673
+ # to link a participant to a user in the customer’s own systems. This
674
+ # can be any UTF-8 encoded text. *This field is exposed to all stage
675
+ # participants and should not be used for personally identifying,
676
+ # confidential, or sensitive information.*
316
677
  # @return [String]
317
678
  #
318
679
  # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ParticipantToken AWS API Documentation
@@ -347,14 +708,15 @@ module Aws::IVSRealTime
347
708
  #
348
709
  # @!attribute [rw] duration
349
710
  # Duration (in minutes), after which the corresponding participant
350
- # token expires. Default: 60 (1 hour).
711
+ # token expires. Default: 720 (12 hours).
351
712
  # @return [Integer]
352
713
  #
353
714
  # @!attribute [rw] user_id
354
- # Name that can be specified to help identify the corresponding
355
- # participant token. This can be any UTF-8 encoded text. *This field
356
- # is exposed to all stage participants and should not be used for
357
- # personally identifying, confidential, or sensitive information.*
715
+ # Customer-assigned name to help identify the token; this can be used
716
+ # to link a participant to a user in the customer’s own systems. This
717
+ # can be any UTF-8 encoded text. *This field is exposed to all stage
718
+ # participants and should not be used for personally identifying,
719
+ # confidential, or sensitive information.*
358
720
  # @return [String]
359
721
  #
360
722
  # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ParticipantTokenConfiguration AWS API Documentation
@@ -441,6 +803,62 @@ module Aws::IVSRealTime
441
803
  include Aws::Structure
442
804
  end
443
805
 
806
+ # A stage session begins when the first participant joins a stage and
807
+ # ends after the last participant leaves the stage. A stage session
808
+ # helps with debugging stages by grouping events and participants into
809
+ # shorter periods of time (i.e., a session), which is helpful when
810
+ # stages are used over long periods of time.
811
+ #
812
+ # @!attribute [rw] end_time
813
+ # ISO 8601 timestamp (returned as a string) when the stage session
814
+ # ended. This is null if the stage is active.
815
+ # @return [Time]
816
+ #
817
+ # @!attribute [rw] session_id
818
+ # ID of the session within the stage.
819
+ # @return [String]
820
+ #
821
+ # @!attribute [rw] start_time
822
+ # ISO 8601 timestamp (returned as a string) when this stage session
823
+ # began.
824
+ # @return [Time]
825
+ #
826
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/StageSession AWS API Documentation
827
+ #
828
+ class StageSession < Struct.new(
829
+ :end_time,
830
+ :session_id,
831
+ :start_time)
832
+ SENSITIVE = []
833
+ include Aws::Structure
834
+ end
835
+
836
+ # Summary information about a stage session.
837
+ #
838
+ # @!attribute [rw] end_time
839
+ # ISO 8601 timestamp (returned as a string) when the stage session
840
+ # ended. This is null if the stage is active.
841
+ # @return [Time]
842
+ #
843
+ # @!attribute [rw] session_id
844
+ # ID of the session within the stage.
845
+ # @return [String]
846
+ #
847
+ # @!attribute [rw] start_time
848
+ # ISO 8601 timestamp (returned as a string) when this stage session
849
+ # began.
850
+ # @return [Time]
851
+ #
852
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/StageSessionSummary AWS API Documentation
853
+ #
854
+ class StageSessionSummary < Struct.new(
855
+ :end_time,
856
+ :session_id,
857
+ :start_time)
858
+ SENSITIVE = []
859
+ include Aws::Structure
860
+ end
861
+
444
862
  # Summary information about a stage.
445
863
  #
446
864
  # @!attribute [rw] active_session_id
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-ivsrealtime/customizations'
52
52
  # @!group service
53
53
  module Aws::IVSRealTime
54
54
 
55
- GEM_VERSION = '1.1.0'
55
+ GEM_VERSION = '1.2.0'
56
56
 
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ivsrealtime
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.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: 2023-04-05 00:00:00.000000000 Z
11
+ date: 2023-05-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core