@@ -29,8 +29,8 @@ namespace ivsrealtime
2929 * between participant tokens and participants.</p> </li> </ul> <p>For server-side
3030 * composition:</p> <ul> <li> <p> <b>Composition process</b> — Composites
3131 * participants of a stage into a single video and forwards it to a set of outputs
32- * (e.g., IVS channels). Composition endpoints support this process.</p> </li> < li>
33- * <p> <b>Composition</b> — Controls the look of the outputs, including how
32+ * (e.g., IVS channels). Composition operations support this process.</p> </li>
33+ * <li> < p> <b>Composition</b> — Controls the look of the outputs, including how
3434 * participants are positioned in the video.</p> </li> </ul> <p>For more
3535 * information about your IVS live stream, also see <a
3636 * href="https://docs.aws.amazon.com/ivs/latest/RealTimeUserGuide/getting-started.html">Getting
@@ -39,15 +39,15 @@ namespace ivsrealtime
3939 * comprises a <i>key</i> and a <i>value</i>, both set by you. For example, you
4040 * might set a tag as <code>topic:nature</code> to label a particular video
4141 * category. See <a
42- * href="https://docs.aws.amazon.com/general /latest/gr/aws_tagging .html">Tagging
43- * AWS Resources </a> for more information, including restrictions that apply to
44- * tags and "Tag naming limits and requirements"; Amazon IVS stages has no
45- * service-specific constraints beyond what is documented there.</p> <p>Tags can
46- * help you identify and organize your AWS resources. For example, you can use the
47- * same tag for different resources to indicate that they are related. You can also
48- * use tags to manage access (see <a
42+ * href="https://docs.aws.amazon.com/tag-editor /latest/userguide/best-practices-and-strats .html">Best
43+ * practices and strategies </a> in <i>Tagging AWS Resources and Tag Editor</i> for
44+ * details, including restrictions that apply to tags and "Tag naming limits and
45+ * requirements"; Amazon IVS stages has no service-specific constraints beyond what
46+ * is documented there.</p> <p>Tags can help you identify and organize your AWS
47+ * resources. For example, you can use the same tag for different resources to
48+ * indicate that they are related. You can also use tags to manage access (see <a
4949 * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html">Access
50- * Tags</a>).</p> <p>The Amazon IVS real-time API has these tag-related endpoints :
50+ * Tags</a>).</p> <p>The Amazon IVS real-time API has these tag-related operations :
5151 * <a>TagResource</a>, <a>UntagResource</a>, and <a>ListTagsForResource</a>. The
5252 * following resource supports tagging: Stage.</p> <p>At most 50 tags can be
5353 * applied to a resource.</p>
@@ -135,6 +135,32 @@ namespace ivsrealtime
135135 return SubmitAsync (&IvsrealtimeClient::CreateEncoderConfiguration, request, handler, context);
136136 }
137137
138+ /* *
139+ * <p>Creates a new IngestConfiguration resource, used to specify the ingest
140+ * protocol for a stage.</p><p><h3>See Also:</h3> <a
141+ * href="http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/CreateIngestConfiguration">AWS
142+ * API Reference</a></p>
143+ */
144+ virtual Model::CreateIngestConfigurationOutcome CreateIngestConfiguration (const Model::CreateIngestConfigurationRequest& request) const ;
145+
146+ /* *
147+ * A Callable wrapper for CreateIngestConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
148+ */
149+ template <typename CreateIngestConfigurationRequestT = Model::CreateIngestConfigurationRequest>
150+ Model::CreateIngestConfigurationOutcomeCallable CreateIngestConfigurationCallable (const CreateIngestConfigurationRequestT& request) const
151+ {
152+ return SubmitCallable (&IvsrealtimeClient::CreateIngestConfiguration, request);
153+ }
154+
155+ /* *
156+ * An Async wrapper for CreateIngestConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
157+ */
158+ template <typename CreateIngestConfigurationRequestT = Model::CreateIngestConfigurationRequest>
159+ void CreateIngestConfigurationAsync (const CreateIngestConfigurationRequestT& request, const CreateIngestConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr ) const
160+ {
161+ return SubmitAsync (&IvsrealtimeClient::CreateIngestConfiguration, request, handler, context);
162+ }
163+
138164 /* *
139165 * <p>Creates an additional token for a specified stage. This can be done after
140166 * stage creation or when tokens expire. Tokens always are scoped to the stage for
@@ -243,6 +269,34 @@ namespace ivsrealtime
243269 return SubmitAsync (&IvsrealtimeClient::DeleteEncoderConfiguration, request, handler, context);
244270 }
245271
272+ /* *
273+ * <p>Deletes a specified IngestConfiguration, so it can no longer be used to
274+ * broadcast. An IngestConfiguration cannot be deleted if the publisher is actively
275+ * streaming to a stage, unless <code>force</code> is set to
276+ * <code>true</code>.</p><p><h3>See Also:</h3> <a
277+ * href="http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/DeleteIngestConfiguration">AWS
278+ * API Reference</a></p>
279+ */
280+ virtual Model::DeleteIngestConfigurationOutcome DeleteIngestConfiguration (const Model::DeleteIngestConfigurationRequest& request) const ;
281+
282+ /* *
283+ * A Callable wrapper for DeleteIngestConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
284+ */
285+ template <typename DeleteIngestConfigurationRequestT = Model::DeleteIngestConfigurationRequest>
286+ Model::DeleteIngestConfigurationOutcomeCallable DeleteIngestConfigurationCallable (const DeleteIngestConfigurationRequestT& request) const
287+ {
288+ return SubmitCallable (&IvsrealtimeClient::DeleteIngestConfiguration, request);
289+ }
290+
291+ /* *
292+ * An Async wrapper for DeleteIngestConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
293+ */
294+ template <typename DeleteIngestConfigurationRequestT = Model::DeleteIngestConfigurationRequest>
295+ void DeleteIngestConfigurationAsync (const DeleteIngestConfigurationRequestT& request, const DeleteIngestConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr ) const
296+ {
297+ return SubmitAsync (&IvsrealtimeClient::DeleteIngestConfiguration, request, handler, context);
298+ }
299+
246300 /* *
247301 * <p>Deletes the specified public key used to sign stage participant tokens. This
248302 * invalidates future participant tokens generated using the key pair’s private
@@ -271,8 +325,10 @@ namespace ivsrealtime
271325 }
272326
273327 /* *
274- * <p>Shuts down and deletes the specified stage (disconnecting all
275- * participants).</p><p><h3>See Also:</h3> <a
328+ * <p>Shuts down and deletes the specified stage (disconnecting all participants).
329+ * This operation also removes the <code>stageArn</code> from the associated
330+ * <a>IngestConfiguration</a>, if there are participants using the
331+ * IngestConfiguration to publish to the stage.</p><p><h3>See Also:</h3> <a
276332 * href="http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/DeleteStage">AWS
277333 * API Reference</a></p>
278334 */
@@ -327,8 +383,10 @@ namespace ivsrealtime
327383 }
328384
329385 /* *
330- * <p>Disconnects a specified participant and revokes the participant permanently
331- * from a specified stage.</p><p><h3>See Also:</h3> <a
386+ * <p>Disconnects a specified participant from a specified stage. If the
387+ * participant is publishing using an <a>IngestConfiguration</a>,
388+ * DisconnectParticipant also updates the <code>stageArn</code> in the
389+ * IngestConfiguration to be an empty string.</p><p><h3>See Also:</h3> <a
332390 * href="http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/DisconnectParticipant">AWS
333391 * API Reference</a></p>
334392 */
@@ -404,6 +462,32 @@ namespace ivsrealtime
404462 return SubmitAsync (&IvsrealtimeClient::GetEncoderConfiguration, request, handler, context);
405463 }
406464
465+ /* *
466+ * <p>Gets information about the specified IngestConfiguration.</p><p><h3>See
467+ * Also:</h3> <a
468+ * href="http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/GetIngestConfiguration">AWS
469+ * API Reference</a></p>
470+ */
471+ virtual Model::GetIngestConfigurationOutcome GetIngestConfiguration (const Model::GetIngestConfigurationRequest& request) const ;
472+
473+ /* *
474+ * A Callable wrapper for GetIngestConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
475+ */
476+ template <typename GetIngestConfigurationRequestT = Model::GetIngestConfigurationRequest>
477+ Model::GetIngestConfigurationOutcomeCallable GetIngestConfigurationCallable (const GetIngestConfigurationRequestT& request) const
478+ {
479+ return SubmitCallable (&IvsrealtimeClient::GetIngestConfiguration, request);
480+ }
481+
482+ /* *
483+ * An Async wrapper for GetIngestConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
484+ */
485+ template <typename GetIngestConfigurationRequestT = Model::GetIngestConfigurationRequest>
486+ void GetIngestConfigurationAsync (const GetIngestConfigurationRequestT& request, const GetIngestConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr ) const
487+ {
488+ return SubmitAsync (&IvsrealtimeClient::GetIngestConfiguration, request, handler, context);
489+ }
490+
407491 /* *
408492 * <p>Gets information about the specified participant token.</p><p><h3>See
409493 * Also:</h3> <a
@@ -610,6 +694,32 @@ namespace ivsrealtime
610694 return SubmitAsync (&IvsrealtimeClient::ListEncoderConfigurations, request, handler, context);
611695 }
612696
697+ /* *
698+ * <p>Lists all IngestConfigurations in your account, in the AWS region where the
699+ * API request is processed.</p><p><h3>See Also:</h3> <a
700+ * href="http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/ListIngestConfigurations">AWS
701+ * API Reference</a></p>
702+ */
703+ virtual Model::ListIngestConfigurationsOutcome ListIngestConfigurations (const Model::ListIngestConfigurationsRequest& request = {}) const ;
704+
705+ /* *
706+ * A Callable wrapper for ListIngestConfigurations that returns a future to the operation so that it can be executed in parallel to other requests.
707+ */
708+ template <typename ListIngestConfigurationsRequestT = Model::ListIngestConfigurationsRequest>
709+ Model::ListIngestConfigurationsOutcomeCallable ListIngestConfigurationsCallable (const ListIngestConfigurationsRequestT& request = {}) const
710+ {
711+ return SubmitCallable (&IvsrealtimeClient::ListIngestConfigurations, request);
712+ }
713+
714+ /* *
715+ * An Async wrapper for ListIngestConfigurations that queues the request into a thread executor and triggers associated callback when operation has finished.
716+ */
717+ template <typename ListIngestConfigurationsRequestT = Model::ListIngestConfigurationsRequest>
718+ void ListIngestConfigurationsAsync (const ListIngestConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr , const ListIngestConfigurationsRequestT& request = {}) const
719+ {
720+ return SubmitAsync (&IvsrealtimeClient::ListIngestConfigurations, request, handler, context);
721+ }
722+
613723 /* *
614724 * <p>Lists events for a specified participant that occurred during a specified
615725 * stage session.</p><p><h3>See Also:</h3> <a
@@ -794,7 +904,7 @@ namespace ivsrealtime
794904 /* *
795905 * <p>Starts a Composition from a stage based on the configuration provided in the
796906 * request.</p> <p>A Composition is an ephemeral resource that exists after this
797- * endpoint returns successfully. Composition stops and the resource is
907+ * operation returns successfully. Composition stops and the resource is
798908 * deleted:</p> <ul> <li> <p>When <a>StopComposition</a> is called.</p> </li> <li>
799909 * <p>After a 1-minute timeout, when all participants are disconnected from the
800910 * stage.</p> </li> <li> <p>After a 1-minute timeout, if there are no participants
@@ -903,6 +1013,33 @@ namespace ivsrealtime
9031013 return SubmitAsync (&IvsrealtimeClient::UntagResource, request, handler, context);
9041014 }
9051015
1016+ /* *
1017+ * <p>Updates a specified IngestConfiguration. Only the stage ARN attached to the
1018+ * IngestConfiguration can be updated. An IngestConfiguration that is active cannot
1019+ * be updated.</p><p><h3>See Also:</h3> <a
1020+ * href="http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/UpdateIngestConfiguration">AWS
1021+ * API Reference</a></p>
1022+ */
1023+ virtual Model::UpdateIngestConfigurationOutcome UpdateIngestConfiguration (const Model::UpdateIngestConfigurationRequest& request) const ;
1024+
1025+ /* *
1026+ * A Callable wrapper for UpdateIngestConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
1027+ */
1028+ template <typename UpdateIngestConfigurationRequestT = Model::UpdateIngestConfigurationRequest>
1029+ Model::UpdateIngestConfigurationOutcomeCallable UpdateIngestConfigurationCallable (const UpdateIngestConfigurationRequestT& request) const
1030+ {
1031+ return SubmitCallable (&IvsrealtimeClient::UpdateIngestConfiguration, request);
1032+ }
1033+
1034+ /* *
1035+ * An Async wrapper for UpdateIngestConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
1036+ */
1037+ template <typename UpdateIngestConfigurationRequestT = Model::UpdateIngestConfigurationRequest>
1038+ void UpdateIngestConfigurationAsync (const UpdateIngestConfigurationRequestT& request, const UpdateIngestConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr ) const
1039+ {
1040+ return SubmitAsync (&IvsrealtimeClient::UpdateIngestConfiguration, request, handler, context);
1041+ }
1042+
9061043 /* *
9071044 * <p>Updates a stage’s configuration.</p><p><h3>See Also:</h3> <a
9081045 * href="http://docs.aws.amazon.com/goto/WebAPI/ivs-realtime-2020-07-14/UpdateStage">AWS
0 commit comments