The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Paws::KinesisVideo - Perl Interface to AWS Amazon Kinesis Video Streams

SYNOPSIS

  use Paws;

  my $obj = Paws->service('KinesisVideo');
  my $res = $obj->Method(
    Arg1 => $val1,
    Arg2 => [ 'V1', 'V2' ],
    # if Arg3 is an object, the HashRef will be used as arguments to the constructor
    # of the arguments type
    Arg3 => { Att1 => 'Val1' },
    # if Arg4 is an array of objects, the HashRefs will be passed as arguments to
    # the constructor of the arguments type
    Arg4 => [ { Att1 => 'Val1'  }, { Att1 => 'Val2' } ],
  );

DESCRIPTION

For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30

METHODS

CreateSignalingChannel

ChannelName => Str
[ChannelType => Str]
[SingleMasterConfiguration => Paws::KinesisVideo::SingleMasterConfiguration]
[Tags => ArrayRef[Paws::KinesisVideo::Tag]]

Each argument is described in detail in: Paws::KinesisVideo::CreateSignalingChannel

Returns: a Paws::KinesisVideo::CreateSignalingChannelOutput instance

Creates a signaling channel.

CreateSignalingChannel is an asynchronous operation.

CreateStream

StreamName => Str
[DataRetentionInHours => Int]
[DeviceName => Str]
[KmsKeyId => Str]
[MediaType => Str]
[Tags => Paws::KinesisVideo::ResourceTags]

Each argument is described in detail in: Paws::KinesisVideo::CreateStream

Returns: a Paws::KinesisVideo::CreateStreamOutput instance

Creates a new Kinesis video stream.

When you create a new stream, Kinesis Video Streams assigns it a version number. When you change the stream's metadata, Kinesis Video Streams updates the version.

CreateStream is an asynchronous operation.

For information about how the service works, see How it Works (https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/how-it-works.html).

You must have permissions for the KinesisVideo:CreateStream action.

DeleteSignalingChannel

ChannelARN => Str
[CurrentVersion => Str]

Each argument is described in detail in: Paws::KinesisVideo::DeleteSignalingChannel

Returns: a Paws::KinesisVideo::DeleteSignalingChannelOutput instance

Deletes a specified signaling channel. DeleteSignalingChannel is an asynchronous operation. If you don't specify the channel's current version, the most recent version is deleted.

DeleteStream

StreamARN => Str
[CurrentVersion => Str]

Each argument is described in detail in: Paws::KinesisVideo::DeleteStream

Returns: a Paws::KinesisVideo::DeleteStreamOutput instance

Deletes a Kinesis video stream and the data contained in the stream.

This method marks the stream for deletion, and makes the data in the stream inaccessible immediately.

To ensure that you have the latest version of the stream before deleting it, you can specify the stream version. Kinesis Video Streams assigns a version to each stream. When you update a stream, Kinesis Video Streams assigns a new version number. To get the latest stream version, use the DescribeStream API.

This operation requires permission for the KinesisVideo:DeleteStream action.

DescribeSignalingChannel

[ChannelARN => Str]
[ChannelName => Str]

Each argument is described in detail in: Paws::KinesisVideo::DescribeSignalingChannel

Returns: a Paws::KinesisVideo::DescribeSignalingChannelOutput instance

Returns the most current information about the signaling channel. You must specify either the name or the ARN of the channel that you want to describe.

DescribeStream

[StreamARN => Str]
[StreamName => Str]

Each argument is described in detail in: Paws::KinesisVideo::DescribeStream

Returns: a Paws::KinesisVideo::DescribeStreamOutput instance

Returns the most current information about the specified stream. You must specify either the StreamName or the StreamARN.

GetDataEndpoint

APIName => Str
[StreamARN => Str]
[StreamName => Str]

Each argument is described in detail in: Paws::KinesisVideo::GetDataEndpoint

Returns: a Paws::KinesisVideo::GetDataEndpointOutput instance

Gets an endpoint for a specified stream for either reading or writing. Use this endpoint in your application to read from the specified stream (using the GetMedia or GetMediaForFragmentList operations) or write to it (using the PutMedia operation).

The returned endpoint does not have the API name appended. The client needs to add the API name to the returned endpoint.

In the request, specify the stream either by StreamName or StreamARN.

GetSignalingChannelEndpoint

ChannelARN => Str
[SingleMasterChannelEndpointConfiguration => Paws::KinesisVideo::SingleMasterChannelEndpointConfiguration]

Each argument is described in detail in: Paws::KinesisVideo::GetSignalingChannelEndpoint

Returns: a Paws::KinesisVideo::GetSignalingChannelEndpointOutput instance

Provides an endpoint for the specified signaling channel to send and receive messages. This API uses the SingleMasterChannelEndpointConfiguration input parameter, which consists of the Protocols and Role properties.

Protocols is used to determine the communication mechanism. For example, specifying WSS as the protocol, results in this API producing a secure websocket endpoint, and specifying HTTPS as the protocol, results in this API generating an HTTPS endpoint.

Role determines the messaging permissions. A MASTER role results in this API generating an endpoint that a client can use to communicate with any of the viewers on the channel. A VIEWER role results in this API generating an endpoint that a client can use to communicate only with a MASTER.

ListSignalingChannels

[ChannelNameCondition => Paws::KinesisVideo::ChannelNameCondition]
[MaxResults => Int]
[NextToken => Str]

Each argument is described in detail in: Paws::KinesisVideo::ListSignalingChannels

Returns: a Paws::KinesisVideo::ListSignalingChannelsOutput instance

Returns an array of ChannelInfo objects. Each object describes a signaling channel. To retrieve only those channels that satisfy a specific condition, you can specify a ChannelNameCondition.

ListStreams

[MaxResults => Int]
[NextToken => Str]
[StreamNameCondition => Paws::KinesisVideo::StreamNameCondition]

Each argument is described in detail in: Paws::KinesisVideo::ListStreams

Returns: a Paws::KinesisVideo::ListStreamsOutput instance

Returns an array of StreamInfo objects. Each object describes a stream. To retrieve only streams that satisfy a specific condition, you can specify a StreamNameCondition.

ListTagsForResource

ResourceARN => Str
[NextToken => Str]

Each argument is described in detail in: Paws::KinesisVideo::ListTagsForResource

Returns: a Paws::KinesisVideo::ListTagsForResourceOutput instance

Returns a list of tags associated with the specified signaling channel.

ListTagsForStream

[NextToken => Str]
[StreamARN => Str]
[StreamName => Str]

Each argument is described in detail in: Paws::KinesisVideo::ListTagsForStream

Returns: a Paws::KinesisVideo::ListTagsForStreamOutput instance

Returns a list of tags associated with the specified stream.

In the request, you must specify either the StreamName or the StreamARN.

TagResource

ResourceARN => Str
Tags => ArrayRef[Paws::KinesisVideo::Tag]

Each argument is described in detail in: Paws::KinesisVideo::TagResource

Returns: a Paws::KinesisVideo::TagResourceOutput instance

Adds one or more tags to a signaling channel. A tag is a key-value pair (the value is optional) that you can define and assign to AWS resources. If you specify a tag that already exists, the tag value is replaced with the value that you specify in the request. For more information, see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) in the AWS Billing and Cost Management User Guide.

TagStream

Tags => Paws::KinesisVideo::ResourceTags
[StreamARN => Str]
[StreamName => Str]

Each argument is described in detail in: Paws::KinesisVideo::TagStream

Returns: a Paws::KinesisVideo::TagStreamOutput instance

Adds one or more tags to a stream. A tag is a key-value pair (the value is optional) that you can define and assign to AWS resources. If you specify a tag that already exists, the tag value is replaced with the value that you specify in the request. For more information, see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) in the AWS Billing and Cost Management User Guide.

You must provide either the StreamName or the StreamARN.

This operation requires permission for the KinesisVideo:TagStream action.

Kinesis video streams support up to 50 tags.

UntagResource

ResourceARN => Str
TagKeyList => ArrayRef[Str|Undef]

Each argument is described in detail in: Paws::KinesisVideo::UntagResource

Returns: a Paws::KinesisVideo::UntagResourceOutput instance

Removes one or more tags from a signaling channel. In the request, specify only a tag key or keys; don't specify the value. If you specify a tag key that does not exist, it's ignored.

UntagStream

TagKeyList => ArrayRef[Str|Undef]
[StreamARN => Str]
[StreamName => Str]

Each argument is described in detail in: Paws::KinesisVideo::UntagStream

Returns: a Paws::KinesisVideo::UntagStreamOutput instance

Removes one or more tags from a stream. In the request, specify only a tag key or keys; don't specify the value. If you specify a tag key that does not exist, it's ignored.

In the request, you must provide the StreamName or StreamARN.

UpdateDataRetention

CurrentVersion => Str
DataRetentionChangeInHours => Int
Operation => Str
[StreamARN => Str]
[StreamName => Str]

Each argument is described in detail in: Paws::KinesisVideo::UpdateDataRetention

Returns: a Paws::KinesisVideo::UpdateDataRetentionOutput instance

Increases or decreases the stream's data retention period by the value that you specify. To indicate whether you want to increase or decrease the data retention period, specify the Operation parameter in the request body. In the request, you must specify either the StreamName or the StreamARN.

The retention period that you specify replaces the current value.

This operation requires permission for the KinesisVideo:UpdateDataRetention action.

Changing the data retention period affects the data in the stream as follows:

  • If the data retention period is increased, existing data is retained for the new retention period. For example, if the data retention period is increased from one hour to seven hours, all existing data is retained for seven hours.

  • If the data retention period is decreased, existing data is retained for the new retention period. For example, if the data retention period is decreased from seven hours to one hour, all existing data is retained for one hour, and any data older than one hour is deleted immediately.

UpdateSignalingChannel

ChannelARN => Str
CurrentVersion => Str
[SingleMasterConfiguration => Paws::KinesisVideo::SingleMasterConfiguration]

Each argument is described in detail in: Paws::KinesisVideo::UpdateSignalingChannel

Returns: a Paws::KinesisVideo::UpdateSignalingChannelOutput instance

Updates the existing signaling channel. This is an asynchronous operation and takes time to complete.

If the MessageTtlSeconds value is updated (either increased or reduced), then it only applies to new messages sent via this channel after it's been updated. Existing messages are still expire as per the previous MessageTtlSeconds value.

UpdateStream

CurrentVersion => Str
[DeviceName => Str]
[MediaType => Str]
[StreamARN => Str]
[StreamName => Str]

Each argument is described in detail in: Paws::KinesisVideo::UpdateStream

Returns: a Paws::KinesisVideo::UpdateStreamOutput instance

Updates stream metadata, such as the device name and media type.

You must provide the stream name or the Amazon Resource Name (ARN) of the stream.

To make sure that you have the latest version of the stream before updating it, you can specify the stream version. Kinesis Video Streams assigns a version to each stream. When you update a stream, Kinesis Video Streams assigns a new version number. To get the latest stream version, use the DescribeStream API.

UpdateStream is an asynchronous operation, and takes time to complete.

PAGINATORS

Paginator methods are helpers that repetively call methods that return partial results

ListAllSignalingChannels(sub { },[ChannelNameCondition => Paws::KinesisVideo::ChannelNameCondition, MaxResults => Int, NextToken => Str])

ListAllSignalingChannels([ChannelNameCondition => Paws::KinesisVideo::ChannelNameCondition, MaxResults => Int, NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - ChannelInfoList, passing the object as the first parameter, and the string 'ChannelInfoList' as the second parameter 

If not, it will return a a Paws::KinesisVideo::ListSignalingChannelsOutput instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

ListAllStreams(sub { },[MaxResults => Int, NextToken => Str, StreamNameCondition => Paws::KinesisVideo::StreamNameCondition])

ListAllStreams([MaxResults => Int, NextToken => Str, StreamNameCondition => Paws::KinesisVideo::StreamNameCondition])

If passed a sub as first parameter, it will call the sub for each element found in :

 - StreamInfoList, passing the object as the first parameter, and the string 'StreamInfoList' as the second parameter 

If not, it will return a a Paws::KinesisVideo::ListStreamsOutput instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

SEE ALSO

This service class forms part of Paws

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues