aws-sdk-ivsrealtime 1.0.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e8b4100c5c444b4cc921daaa390c672e6e520ff4f7dae37b9010ae93adfcb9ef
4
- data.tar.gz: 0202d7d50036ee2ad5bbeb9ea9273f3a5b4da5cbab963d672314f34f8bde5495
3
+ metadata.gz: b02fdb8bdabe4457d10d87e3b8e48037e8a63291de686aee50579407aa54f939
4
+ data.tar.gz: cb7213d02b74146fe4f6131b61df1948a261bcee832e48a033cfd455df10c97b
5
5
  SHA512:
6
- metadata.gz: 803a9106a056d917e20a70f9d6a680c53bc3670be842fda8c56addbb01b5d921e75f3ca12dbd4535a63a489d85ac45b8c49385d05a3e50f5624f3ee12831fe13
7
- data.tar.gz: 7293be53868a9d73ccf56a4eb0a8080bf5315442f4c24391e277195bffa3010c744f2fae139b27af9cc70a66e38a18fa91618bf9dbea68d721eda2bc0b870ea0
6
+ metadata.gz: 29fc395a7f74e2be3513b6ea734e9db623a00f9b0d2ba04a5be35e076128735acd75d9770fa05fc1b70eb1ab2f6cd0cd6af40e60f6c01affb9a09393fa1d1236
7
+ data.tar.gz: c3825a9ff90066d5d02c928874a585450c81fd17619bb406742c92bd470c34fa075fbb7e307f6ed5fdb8fcb85602e1e2d2e49785197693aac101aec8571030df
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
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
+
9
+ 1.1.0 (2023-04-05)
10
+ ------------------
11
+
12
+ * Feature - Fix ParticipantToken ExpirationTime format
13
+
4
14
  1.0.0 (2023-03-23)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.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.0.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')
@@ -40,19 +63,23 @@ module Aws::IVSRealTime
40
63
  ParticipantTokenConfiguration = Shapes::StructureShape.new(name: 'ParticipantTokenConfiguration')
41
64
  ParticipantTokenConfigurations = Shapes::ListShape.new(name: 'ParticipantTokenConfigurations')
42
65
  ParticipantTokenDurationMinutes = Shapes::IntegerShape.new(name: 'ParticipantTokenDurationMinutes')
43
- ParticipantTokenExpirationTime = Shapes::TimestampShape.new(name: 'ParticipantTokenExpirationTime')
66
+ ParticipantTokenExpirationTime = Shapes::TimestampShape.new(name: 'ParticipantTokenExpirationTime', timestampFormat: "iso8601")
44
67
  ParticipantTokenId = Shapes::StringShape.new(name: 'ParticipantTokenId')
45
68
  ParticipantTokenList = Shapes::ListShape.new(name: 'ParticipantTokenList')
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
@@ -325,7 +686,7 @@ module Aws::IVSRealTime
325
686
  :participant_id,
326
687
  :token,
327
688
  :user_id)
328
- SENSITIVE = []
689
+ SENSITIVE = [:token]
329
690
  include Aws::Structure
330
691
  end
331
692
 
@@ -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.0.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.0.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-03-23 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