import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { CreateChannelRequest, CreateChannelResponse } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link CreateChannelCommand}. */ export interface CreateChannelCommandInput extends CreateChannelRequest { } /** * @public * * The output of {@link CreateChannelCommand}. */ export interface CreateChannelCommandOutput extends CreateChannelResponse, __MetadataBearer { } declare const CreateChannelCommand_base: { new (input: CreateChannelCommandInput): import("@smithy/core/client").CommandImpl; new (input: CreateChannelCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

Create a channel to start receiving content streams. The channel represents the input to MediaPackage for incoming live content from an encoder such as AWS Elemental MediaLive. The channel receives content, and after packaging it, outputs it through an origin endpoint to downstream devices (such as video players or CDNs) that request the content. You can create only one channel with each request. We recommend that you spread out channels between channel groups, such as putting redundant channels in the same AWS Region in different channel groups.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { MediaPackageV2Client, CreateChannelCommand } from "@aws-sdk/client-mediapackagev2"; // ES Modules import * // const { MediaPackageV2Client, CreateChannelCommand } = require("@aws-sdk/client-mediapackagev2"); // CommonJS import * // import type { MediaPackageV2ClientConfig } from "@aws-sdk/client-mediapackagev2"; * const config = {}; // type is MediaPackageV2ClientConfig * const client = new MediaPackageV2Client(config); * const input = { // CreateChannelRequest * ChannelGroupName: "STRING_VALUE", // required * ChannelName: "STRING_VALUE", // required * ClientToken: "STRING_VALUE", * InputType: "HLS" || "CMAF", * Description: "STRING_VALUE", * InputSwitchConfiguration: { // InputSwitchConfiguration * MQCSInputSwitching: true || false, * PreferredInput: Number("int"), * }, * OutputHeaderConfiguration: { // OutputHeaderConfiguration * PublishMQCS: true || false, * }, * OutputLockingMode: "EPOCH_LOCKED" || "NON_EPOCH_LOCKED", * Tags: { // TagMap * "": "STRING_VALUE", * }, * }; * const command = new CreateChannelCommand(input); * const response = await client.send(command); * // { // CreateChannelResponse * // Arn: "STRING_VALUE", // required * // ChannelName: "STRING_VALUE", // required * // ChannelGroupName: "STRING_VALUE", // required * // CreatedAt: new Date("TIMESTAMP"), // required * // ModifiedAt: new Date("TIMESTAMP"), // required * // Description: "STRING_VALUE", * // IngestEndpoints: [ // IngestEndpointList * // { // IngestEndpoint * // Id: "STRING_VALUE", * // Url: "STRING_VALUE", * // }, * // ], * // InputType: "HLS" || "CMAF", * // ETag: "STRING_VALUE", * // Tags: { // TagMap * // "": "STRING_VALUE", * // }, * // InputSwitchConfiguration: { // InputSwitchConfiguration * // MQCSInputSwitching: true || false, * // PreferredInput: Number("int"), * // }, * // OutputHeaderConfiguration: { // OutputHeaderConfiguration * // PublishMQCS: true || false, * // }, * // OutputLockingMode: "EPOCH_LOCKED" || "NON_EPOCH_LOCKED", * // }; * * ``` * * @param CreateChannelCommandInput - {@link CreateChannelCommandInput} * @returns {@link CreateChannelCommandOutput} * @see {@link CreateChannelCommandInput} for command's `input` shape. * @see {@link CreateChannelCommandOutput} for command's `response` shape. * @see {@link MediaPackageV2ClientResolvedConfig | config} for MediaPackageV2Client's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

Access is denied because either you don't have permissions to perform the requested operation or MediaPackage is getting throttling errors with CDN authorization. The user or role that is making the request must have at least one IAM permissions policy attached that grants the required permissions. For more information, see Access Management in the IAM User Guide. Or, if you're using CDN authorization, you will receive this exception if MediaPackage receives a throttling error from Secrets Manager.

* * @throws {@link ConflictException} (client fault) *

Updating or deleting this resource can cause an inconsistent state.

* * @throws {@link InternalServerException} (server fault) *

Indicates that an error from the service occurred while trying to process a request.

* * @throws {@link ResourceNotFoundException} (client fault) *

The specified resource doesn't exist.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

The request would cause a service quota to be exceeded.

* * @throws {@link ThrottlingException} (client fault) *

The request throughput limit was exceeded.

* * @throws {@link ValidationException} (client fault) *

The input failed to meet the constraints specified by the AWS service.

* * @throws {@link MediaPackageV2ServiceException} *

Base exception class for all service exceptions from MediaPackageV2 service.

* * * @example Creating a Channel * ```javascript * // * const input = { * ChannelGroupName: "exampleChannelGroup", * ChannelName: "exampleChannel", * Description: "Description for exampleChannel", * InputType: "HLS", * Tags: { * key1: "value1", * key2: "value2" * } * }; * const command = new CreateChannelCommand(input); * const response = await client.send(command); * /* response is * { * Arn: "arn:aws:mediapackagev2:us-west-2:123456789012:channelGroup/exampleChannelGroup/channel/exampleChannel", * ChannelGroupName: "exampleChannelGroup", * ChannelName: "exampleChannel", * CreatedAt: "2022-10-18T09:36:00.00Z", * Description: "Description for exampleChannel", * ETag: "GlfT+dwAyGIR4wuy8nKWl1RDPwSrjQej9qUutLZxoxk=", * IngestEndpoints: [ * { * Id: "1", * Url: "https://abcde-1.ingest.vwxyz.mediapackagev2.us-west-2.amazonaws.com/v1/exampleChannelGroup/exampleChannel/index" * }, * { * Id: "2", * Url: "https://abcde-2.ingest.vwxyz.mediapackagev2.us-west-2.amazonaws.com/v1/exampleChannelGroup/exampleChannel/index" * } * ], * InputType: "HLS", * ModifiedAt: "2022-10-18T09:36:00.00Z", * Tags: { * key1: "value1", * key2: "value2" * } * } * *\/ * ``` * * @example Creating a CMAF Channel with non-epoch-locked output locking mode * ```javascript * // * const input = { * ChannelGroupName: "exampleChannelGroup", * ChannelName: "exampleCmafChannel", * Description: "Non-epoch-locked CMAF channel", * InputType: "CMAF", * OutputLockingMode: "NON_EPOCH_LOCKED" * }; * const command = new CreateChannelCommand(input); * const response = await client.send(command); * /* response is * { * Arn: "arn:aws:mediapackagev2:us-west-2:123456789012:channelGroup/exampleChannelGroup/channel/exampleCmafChannel", * ChannelGroupName: "exampleChannelGroup", * ChannelName: "exampleCmafChannel", * CreatedAt: "2022-10-18T09:36:00.00Z", * Description: "Non-epoch-locked CMAF channel", * ETag: "GlfT+dwAyGIR4wuy8nKWl1RDPwSrjQej9qUutLZxoxk=", * IngestEndpoints: [ * { * Id: "1", * Url: "https://abcde-1.ingest.vwxyz.mediapackagev2.us-west-2.amazonaws.com/v1/exampleChannelGroup/exampleCmafChannel" * }, * { * Id: "2", * Url: "https://abcde-2.ingest.vwxyz.mediapackagev2.us-west-2.amazonaws.com/v1/exampleChannelGroup/exampleCmafChannel" * } * ], * InputType: "CMAF", * ModifiedAt: "2022-10-18T09:36:00.00Z", * OutputLockingMode: "NON_EPOCH_LOCKED" * } * *\/ * ``` * * @public */ export declare class CreateChannelCommand extends CreateChannelCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: CreateChannelRequest; output: CreateChannelResponse; }; sdk: { input: CreateChannelCommandInput; output: CreateChannelCommandOutput; }; }; }