Skip to content

Commit 9dfe418

Browse files
author
awstools
committed
feat(client-kinesis-video): Add support for multiple image feature related APIs for configuring image generation and notification of a video stream. Add "GET_IMAGES" to the list of supported API names for the GetDataEndpoint API.
1 parent 417ad38 commit 9dfe418

14 files changed

+2029
-68
lines changed

clients/client-kinesis-video/src/KinesisVideo.ts

Lines changed: 157 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,16 @@ import {
2020
DeleteStreamCommandInput,
2121
DeleteStreamCommandOutput,
2222
} from "./commands/DeleteStreamCommand";
23+
import {
24+
DescribeImageGenerationConfigurationCommand,
25+
DescribeImageGenerationConfigurationCommandInput,
26+
DescribeImageGenerationConfigurationCommandOutput,
27+
} from "./commands/DescribeImageGenerationConfigurationCommand";
28+
import {
29+
DescribeNotificationConfigurationCommand,
30+
DescribeNotificationConfigurationCommandInput,
31+
DescribeNotificationConfigurationCommandOutput,
32+
} from "./commands/DescribeNotificationConfigurationCommand";
2333
import {
2434
DescribeSignalingChannelCommand,
2535
DescribeSignalingChannelCommandInput,
@@ -69,6 +79,16 @@ import {
6979
UpdateDataRetentionCommandInput,
7080
UpdateDataRetentionCommandOutput,
7181
} from "./commands/UpdateDataRetentionCommand";
82+
import {
83+
UpdateImageGenerationConfigurationCommand,
84+
UpdateImageGenerationConfigurationCommandInput,
85+
UpdateImageGenerationConfigurationCommandOutput,
86+
} from "./commands/UpdateImageGenerationConfigurationCommand";
87+
import {
88+
UpdateNotificationConfigurationCommand,
89+
UpdateNotificationConfigurationCommandInput,
90+
UpdateNotificationConfigurationCommandOutput,
91+
} from "./commands/UpdateNotificationConfigurationCommand";
7292
import {
7393
UpdateSignalingChannelCommand,
7494
UpdateSignalingChannelCommandInput,
@@ -228,6 +248,70 @@ export class KinesisVideo extends KinesisVideoClient {
228248
}
229249
}
230250

251+
/**
252+
* <p>Gets the <code>ImageGenerationConfiguration</code> for a given Kinesis video stream.</p>
253+
*/
254+
public describeImageGenerationConfiguration(
255+
args: DescribeImageGenerationConfigurationCommandInput,
256+
options?: __HttpHandlerOptions
257+
): Promise<DescribeImageGenerationConfigurationCommandOutput>;
258+
public describeImageGenerationConfiguration(
259+
args: DescribeImageGenerationConfigurationCommandInput,
260+
cb: (err: any, data?: DescribeImageGenerationConfigurationCommandOutput) => void
261+
): void;
262+
public describeImageGenerationConfiguration(
263+
args: DescribeImageGenerationConfigurationCommandInput,
264+
options: __HttpHandlerOptions,
265+
cb: (err: any, data?: DescribeImageGenerationConfigurationCommandOutput) => void
266+
): void;
267+
public describeImageGenerationConfiguration(
268+
args: DescribeImageGenerationConfigurationCommandInput,
269+
optionsOrCb?: __HttpHandlerOptions | ((err: any, data?: DescribeImageGenerationConfigurationCommandOutput) => void),
270+
cb?: (err: any, data?: DescribeImageGenerationConfigurationCommandOutput) => void
271+
): Promise<DescribeImageGenerationConfigurationCommandOutput> | void {
272+
const command = new DescribeImageGenerationConfigurationCommand(args);
273+
if (typeof optionsOrCb === "function") {
274+
this.send(command, optionsOrCb);
275+
} else if (typeof cb === "function") {
276+
if (typeof optionsOrCb !== "object") throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
277+
this.send(command, optionsOrCb || {}, cb);
278+
} else {
279+
return this.send(command, optionsOrCb);
280+
}
281+
}
282+
283+
/**
284+
* <p>Gets the <code>NotificationConfiguration</code> for a given Kinesis video stream.</p>
285+
*/
286+
public describeNotificationConfiguration(
287+
args: DescribeNotificationConfigurationCommandInput,
288+
options?: __HttpHandlerOptions
289+
): Promise<DescribeNotificationConfigurationCommandOutput>;
290+
public describeNotificationConfiguration(
291+
args: DescribeNotificationConfigurationCommandInput,
292+
cb: (err: any, data?: DescribeNotificationConfigurationCommandOutput) => void
293+
): void;
294+
public describeNotificationConfiguration(
295+
args: DescribeNotificationConfigurationCommandInput,
296+
options: __HttpHandlerOptions,
297+
cb: (err: any, data?: DescribeNotificationConfigurationCommandOutput) => void
298+
): void;
299+
public describeNotificationConfiguration(
300+
args: DescribeNotificationConfigurationCommandInput,
301+
optionsOrCb?: __HttpHandlerOptions | ((err: any, data?: DescribeNotificationConfigurationCommandOutput) => void),
302+
cb?: (err: any, data?: DescribeNotificationConfigurationCommandOutput) => void
303+
): Promise<DescribeNotificationConfigurationCommandOutput> | void {
304+
const command = new DescribeNotificationConfigurationCommand(args);
305+
if (typeof optionsOrCb === "function") {
306+
this.send(command, optionsOrCb);
307+
} else if (typeof cb === "function") {
308+
if (typeof optionsOrCb !== "object") throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
309+
this.send(command, optionsOrCb || {}, cb);
310+
} else {
311+
return this.send(command, optionsOrCb);
312+
}
313+
}
314+
231315
/**
232316
* <p>Returns the most current information about the signaling channel. You must specify
233317
* either the name or the Amazon Resource Name (ARN) of the channel that you want to
@@ -351,8 +435,8 @@ export class KinesisVideo extends KinesisVideoClient {
351435
* <code>Role</code> determines the messaging permissions. A <code>MASTER</code> role
352436
* results in this API generating an endpoint that a client can use to communicate with any
353437
* of the viewers on the channel. A <code>VIEWER</code> role results in this API generating
354-
* an endpoint that a client can use to communicate only with a
355-
* <code>MASTER</code>. </p>
438+
* an endpoint that a client can use to communicate only with a <code>MASTER</code>.
439+
* </p>
356440
*/
357441
public getSignalingChannelEndpoint(
358442
args: GetSignalingChannelEndpointCommandInput,
@@ -385,8 +469,8 @@ export class KinesisVideo extends KinesisVideoClient {
385469

386470
/**
387471
* <p>Returns an array of <code>ChannelInfo</code> objects. Each object describes a
388-
* signaling channel. To retrieve only those channels that satisfy a specific condition, you can
389-
* specify a <code>ChannelNameCondition</code>.</p>
472+
* signaling channel. To retrieve only those channels that satisfy a specific condition,
473+
* you can specify a <code>ChannelNameCondition</code>.</p>
390474
*/
391475
public listSignalingChannels(
392476
args: ListSignalingChannelsCommandInput,
@@ -513,10 +597,10 @@ export class KinesisVideo extends KinesisVideoClient {
513597

514598
/**
515599
* <p>Adds one or more tags to a signaling channel. A <i>tag</i> is a
516-
* key-value pair (the value is optional) that you can define and assign to AWS resources.
600+
* key-value pair (the value is optional) that you can define and assign to Amazon Web Services resources.
517601
* If you specify a tag that already exists, the tag value is replaced with the value that
518602
* you specify in the request. For more information, see <a href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html">Using Cost Allocation
519-
* Tags</a> in the <i>AWS Billing and Cost Management User
603+
* Tags</a> in the <i>Billing and Cost Management and Cost Management User
520604
* Guide</i>.</p>
521605
*/
522606
public tagResource(args: TagResourceCommandInput, options?: __HttpHandlerOptions): Promise<TagResourceCommandOutput>;
@@ -544,15 +628,15 @@ export class KinesisVideo extends KinesisVideoClient {
544628

545629
/**
546630
* <p>Adds one or more tags to a stream. A <i>tag</i> is a key-value pair
547-
* (the value is optional) that you can define and assign to AWS resources. If you specify
631+
* (the value is optional) that you can define and assign to Amazon Web Services resources. If you specify
548632
* a tag that already exists, the tag value is replaced with the value that you specify in
549633
* the request. For more information, see <a href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html">Using Cost Allocation
550-
* Tags</a> in the <i>AWS Billing and Cost Management User Guide</i>. </p>
634+
* Tags</a> in the <i>Billing and Cost Management and Cost Management User Guide</i>. </p>
551635
* <p>You must provide either the <code>StreamName</code> or the
552636
* <code>StreamARN</code>.</p>
553637
* <p>This operation requires permission for the <code>KinesisVideo:TagStream</code>
554638
* action.</p>
555-
* <p>Kinesis video streams support up to 50 tags.</p>
639+
* <p>A Kinesis video stream can support up to 50 tags.</p>
556640
*/
557641
public tagStream(args: TagStreamCommandInput, options?: __HttpHandlerOptions): Promise<TagStreamCommandOutput>;
558642
public tagStream(args: TagStreamCommandInput, cb: (err: any, data?: TagStreamCommandOutput) => void): void;
@@ -699,6 +783,70 @@ export class KinesisVideo extends KinesisVideoClient {
699783
}
700784
}
701785

786+
/**
787+
* <p>Updates the <code>StreamInfo</code> and <code>ImageProcessingConfiguration</code> fields.</p>
788+
*/
789+
public updateImageGenerationConfiguration(
790+
args: UpdateImageGenerationConfigurationCommandInput,
791+
options?: __HttpHandlerOptions
792+
): Promise<UpdateImageGenerationConfigurationCommandOutput>;
793+
public updateImageGenerationConfiguration(
794+
args: UpdateImageGenerationConfigurationCommandInput,
795+
cb: (err: any, data?: UpdateImageGenerationConfigurationCommandOutput) => void
796+
): void;
797+
public updateImageGenerationConfiguration(
798+
args: UpdateImageGenerationConfigurationCommandInput,
799+
options: __HttpHandlerOptions,
800+
cb: (err: any, data?: UpdateImageGenerationConfigurationCommandOutput) => void
801+
): void;
802+
public updateImageGenerationConfiguration(
803+
args: UpdateImageGenerationConfigurationCommandInput,
804+
optionsOrCb?: __HttpHandlerOptions | ((err: any, data?: UpdateImageGenerationConfigurationCommandOutput) => void),
805+
cb?: (err: any, data?: UpdateImageGenerationConfigurationCommandOutput) => void
806+
): Promise<UpdateImageGenerationConfigurationCommandOutput> | void {
807+
const command = new UpdateImageGenerationConfigurationCommand(args);
808+
if (typeof optionsOrCb === "function") {
809+
this.send(command, optionsOrCb);
810+
} else if (typeof cb === "function") {
811+
if (typeof optionsOrCb !== "object") throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
812+
this.send(command, optionsOrCb || {}, cb);
813+
} else {
814+
return this.send(command, optionsOrCb);
815+
}
816+
}
817+
818+
/**
819+
* <p>Updates the notification information for a stream.</p>
820+
*/
821+
public updateNotificationConfiguration(
822+
args: UpdateNotificationConfigurationCommandInput,
823+
options?: __HttpHandlerOptions
824+
): Promise<UpdateNotificationConfigurationCommandOutput>;
825+
public updateNotificationConfiguration(
826+
args: UpdateNotificationConfigurationCommandInput,
827+
cb: (err: any, data?: UpdateNotificationConfigurationCommandOutput) => void
828+
): void;
829+
public updateNotificationConfiguration(
830+
args: UpdateNotificationConfigurationCommandInput,
831+
options: __HttpHandlerOptions,
832+
cb: (err: any, data?: UpdateNotificationConfigurationCommandOutput) => void
833+
): void;
834+
public updateNotificationConfiguration(
835+
args: UpdateNotificationConfigurationCommandInput,
836+
optionsOrCb?: __HttpHandlerOptions | ((err: any, data?: UpdateNotificationConfigurationCommandOutput) => void),
837+
cb?: (err: any, data?: UpdateNotificationConfigurationCommandOutput) => void
838+
): Promise<UpdateNotificationConfigurationCommandOutput> | void {
839+
const command = new UpdateNotificationConfigurationCommand(args);
840+
if (typeof optionsOrCb === "function") {
841+
this.send(command, optionsOrCb);
842+
} else if (typeof cb === "function") {
843+
if (typeof optionsOrCb !== "object") throw new Error(`Expect http options but get ${typeof optionsOrCb}`);
844+
this.send(command, optionsOrCb || {}, cb);
845+
} else {
846+
return this.send(command, optionsOrCb);
847+
}
848+
}
849+
702850
/**
703851
* <p>Updates the existing signaling channel. This is an asynchronous operation and takes
704852
* time to complete. </p>

clients/client-kinesis-video/src/KinesisVideoClient.ts

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,14 @@ import {
6161
DeleteSignalingChannelCommandOutput,
6262
} from "./commands/DeleteSignalingChannelCommand";
6363
import { DeleteStreamCommandInput, DeleteStreamCommandOutput } from "./commands/DeleteStreamCommand";
64+
import {
65+
DescribeImageGenerationConfigurationCommandInput,
66+
DescribeImageGenerationConfigurationCommandOutput,
67+
} from "./commands/DescribeImageGenerationConfigurationCommand";
68+
import {
69+
DescribeNotificationConfigurationCommandInput,
70+
DescribeNotificationConfigurationCommandOutput,
71+
} from "./commands/DescribeNotificationConfigurationCommand";
6472
import {
6573
DescribeSignalingChannelCommandInput,
6674
DescribeSignalingChannelCommandOutput,
@@ -89,6 +97,14 @@ import {
8997
UpdateDataRetentionCommandInput,
9098
UpdateDataRetentionCommandOutput,
9199
} from "./commands/UpdateDataRetentionCommand";
100+
import {
101+
UpdateImageGenerationConfigurationCommandInput,
102+
UpdateImageGenerationConfigurationCommandOutput,
103+
} from "./commands/UpdateImageGenerationConfigurationCommand";
104+
import {
105+
UpdateNotificationConfigurationCommandInput,
106+
UpdateNotificationConfigurationCommandOutput,
107+
} from "./commands/UpdateNotificationConfigurationCommand";
92108
import {
93109
UpdateSignalingChannelCommandInput,
94110
UpdateSignalingChannelCommandOutput,
@@ -101,6 +117,8 @@ export type ServiceInputTypes =
101117
| CreateStreamCommandInput
102118
| DeleteSignalingChannelCommandInput
103119
| DeleteStreamCommandInput
120+
| DescribeImageGenerationConfigurationCommandInput
121+
| DescribeNotificationConfigurationCommandInput
104122
| DescribeSignalingChannelCommandInput
105123
| DescribeStreamCommandInput
106124
| GetDataEndpointCommandInput
@@ -114,6 +132,8 @@ export type ServiceInputTypes =
114132
| UntagResourceCommandInput
115133
| UntagStreamCommandInput
116134
| UpdateDataRetentionCommandInput
135+
| UpdateImageGenerationConfigurationCommandInput
136+
| UpdateNotificationConfigurationCommandInput
117137
| UpdateSignalingChannelCommandInput
118138
| UpdateStreamCommandInput;
119139

@@ -122,6 +142,8 @@ export type ServiceOutputTypes =
122142
| CreateStreamCommandOutput
123143
| DeleteSignalingChannelCommandOutput
124144
| DeleteStreamCommandOutput
145+
| DescribeImageGenerationConfigurationCommandOutput
146+
| DescribeNotificationConfigurationCommandOutput
125147
| DescribeSignalingChannelCommandOutput
126148
| DescribeStreamCommandOutput
127149
| GetDataEndpointCommandOutput
@@ -135,6 +157,8 @@ export type ServiceOutputTypes =
135157
| UntagResourceCommandOutput
136158
| UntagStreamCommandOutput
137159
| UpdateDataRetentionCommandOutput
160+
| UpdateImageGenerationConfigurationCommandOutput
161+
| UpdateNotificationConfigurationCommandOutput
138162
| UpdateSignalingChannelCommandOutput
139163
| UpdateStreamCommandOutput;
140164

0 commit comments

Comments
 (0)