KinesisVideo ************ Client ====== class KinesisVideo.Client A low-level client representing Amazon Kinesis Video Streams import boto3 client = boto3.client('kinesisvideo') These are the available methods: * can_paginate * close * create_signaling_channel * create_stream * delete_edge_configuration * delete_signaling_channel * delete_stream * describe_edge_configuration * describe_image_generation_configuration * describe_mapped_resource_configuration * describe_media_storage_configuration * describe_notification_configuration * describe_signaling_channel * describe_stream * get_data_endpoint * get_paginator * get_signaling_channel_endpoint * get_waiter * list_edge_agent_configurations * list_signaling_channels * list_streams * list_tags_for_resource * list_tags_for_stream * start_edge_configuration_update * tag_resource * tag_stream * untag_resource * untag_stream * update_data_retention * update_image_generation_configuration * update_media_storage_configuration * update_notification_configuration * update_signaling_channel * update_stream Paginators ========== Paginators are available on a client instance via the "get_paginator" method. For more detailed instructions and examples on the usage of paginators, see the paginators user guide. The available paginators are: * DescribeMappedResourceConfiguration * ListEdgeAgentConfigurations * ListSignalingChannels * ListStreams KinesisVideo / Paginator / ListStreams ListStreams *********** class KinesisVideo.Paginator.ListStreams paginator = client.get_paginator('list_streams') paginate(**kwargs) Creates an iterator that will paginate through responses from "KinesisVideo.Client.list_streams()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( StreamNameCondition={ 'ComparisonOperator': 'BEGINS_WITH', 'ComparisonValue': 'string' }, PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **StreamNameCondition** (*dict*) -- Optional: Returns only streams that satisfy a specific condition. Currently, you can specify only the prefix of a stream name as a condition. * **ComparisonOperator** *(string) --* A comparison operator. Currently, you can specify only the "BEGINS_WITH" operator, which finds streams whose names start with a given prefix. * **ComparisonValue** *(string) --* A value to compare. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'StreamInfoList': [ { 'DeviceName': 'string', 'StreamName': 'string', 'StreamARN': 'string', 'MediaType': 'string', 'KmsKeyId': 'string', 'Version': 'string', 'Status': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING', 'CreationTime': datetime(2015, 1, 1), 'DataRetentionInHours': 123 }, ], } **Response Structure** * *(dict) --* * **StreamInfoList** *(list) --* An array of "StreamInfo" objects. * *(dict) --* An object describing a Kinesis video stream. * **DeviceName** *(string) --* The name of the device that is associated with the stream. * **StreamName** *(string) --* The name of the stream. * **StreamARN** *(string) --* The Amazon Resource Name (ARN) of the stream. * **MediaType** *(string) --* The "MediaType" of the stream. * **KmsKeyId** *(string) --* The ID of the Key Management Service (KMS) key that Kinesis Video Streams uses to encrypt data on the stream. * **Version** *(string) --* The version of the stream. * **Status** *(string) --* The status of the stream. * **CreationTime** *(datetime) --* A time stamp that indicates when the stream was created. * **DataRetentionInHours** *(integer) --* How long the stream retains data, in hours. KinesisVideo / Paginator / DescribeMappedResourceConfiguration DescribeMappedResourceConfiguration *********************************** class KinesisVideo.Paginator.DescribeMappedResourceConfiguration paginator = client.get_paginator('describe_mapped_resource_configuration') paginate(**kwargs) Creates an iterator that will paginate through responses from "KinesisVideo.Client.describe_mapped_resource_configuration()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( StreamName='string', StreamARN='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **StreamName** (*string*) -- The name of the stream. * **StreamARN** (*string*) -- The Amazon Resource Name (ARN) of the stream. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'MappedResourceConfigurationList': [ { 'Type': 'string', 'ARN': 'string' }, ], } **Response Structure** * *(dict) --* * **MappedResourceConfigurationList** *(list) --* A structure that encapsulates, or contains, the media storage configuration properties. * *(dict) --* A structure that encapsulates, or contains, the media storage configuration properties. * **Type** *(string) --* The type of the associated resource for the kinesis video stream. * **ARN** *(string) --* The Amazon Resource Name (ARN) of the Kinesis Video Stream resource, associated with the stream. KinesisVideo / Paginator / ListSignalingChannels ListSignalingChannels ********************* class KinesisVideo.Paginator.ListSignalingChannels paginator = client.get_paginator('list_signaling_channels') paginate(**kwargs) Creates an iterator that will paginate through responses from "KinesisVideo.Client.list_signaling_channels()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( ChannelNameCondition={ 'ComparisonOperator': 'BEGINS_WITH', 'ComparisonValue': 'string' }, PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **ChannelNameCondition** (*dict*) -- Optional: Returns only the channels that satisfy a specific condition. * **ComparisonOperator** *(string) --* A comparison operator. Currently, you can only specify the "BEGINS_WITH" operator, which finds signaling channels whose names begin with a given prefix. * **ComparisonValue** *(string) --* A value to compare. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'ChannelInfoList': [ { 'ChannelName': 'string', 'ChannelARN': 'string', 'ChannelType': 'SINGLE_MASTER'|'FULL_MESH', 'ChannelStatus': 'CREATING'|'ACTIVE'|'UPDATING'|'DELETING', 'CreationTime': datetime(2015, 1, 1), 'SingleMasterConfiguration': { 'MessageTtlSeconds': 123 }, 'Version': 'string' }, ], } **Response Structure** * *(dict) --* * **ChannelInfoList** *(list) --* An array of "ChannelInfo" objects. * *(dict) --* A structure that encapsulates a signaling channel's metadata and properties. * **ChannelName** *(string) --* The name of the signaling channel. * **ChannelARN** *(string) --* The Amazon Resource Name (ARN) of the signaling channel. * **ChannelType** *(string) --* The type of the signaling channel. * **ChannelStatus** *(string) --* Current status of the signaling channel. * **CreationTime** *(datetime) --* The time at which the signaling channel was created. * **SingleMasterConfiguration** *(dict) --* A structure that contains the configuration for the "SINGLE_MASTER" channel type. * **MessageTtlSeconds** *(integer) --* The period of time a signaling channel retains undelivered messages before they are discarded. * **Version** *(string) --* The current version of the signaling channel. KinesisVideo / Paginator / ListEdgeAgentConfigurations ListEdgeAgentConfigurations *************************** class KinesisVideo.Paginator.ListEdgeAgentConfigurations paginator = client.get_paginator('list_edge_agent_configurations') paginate(**kwargs) Creates an iterator that will paginate through responses from "KinesisVideo.Client.list_edge_agent_configurations()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( HubDeviceArn='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **HubDeviceArn** (*string*) -- **[REQUIRED]** The "Internet of Things (IoT) Thing" Arn of the edge agent. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'EdgeConfigs': [ { 'StreamName': 'string', 'StreamARN': 'string', 'CreationTime': datetime(2015, 1, 1), 'LastUpdatedTime': datetime(2015, 1, 1), 'SyncStatus': 'SYNCING'|'ACKNOWLEDGED'|'IN_SYNC'|'SYNC_FAILED'|'DELETING'|'DELETE_FAILED'|'DELETING_ACKNOWLEDGED', 'FailedStatusDetails': 'string', 'EdgeConfig': { 'HubDeviceArn': 'string', 'RecorderConfig': { 'MediaSourceConfig': { 'MediaUriSecretArn': 'string', 'MediaUriType': 'RTSP_URI'|'FILE_URI' }, 'ScheduleConfig': { 'ScheduleExpression': 'string', 'DurationInSeconds': 123 } }, 'UploaderConfig': { 'ScheduleConfig': { 'ScheduleExpression': 'string', 'DurationInSeconds': 123 } }, 'DeletionConfig': { 'EdgeRetentionInHours': 123, 'LocalSizeConfig': { 'MaxLocalMediaSizeInMB': 123, 'StrategyOnFullSize': 'DELETE_OLDEST_MEDIA'|'DENY_NEW_MEDIA' }, 'DeleteAfterUpload': True|False } } }, ], } **Response Structure** * *(dict) --* * **EdgeConfigs** *(list) --* A description of a single stream's edge configuration. * *(dict) --* A description of a single stream's edge configuration. * **StreamName** *(string) --* The name of the stream. * **StreamARN** *(string) --* The Amazon Resource Name (ARN) of the stream. * **CreationTime** *(datetime) --* The timestamp when the stream first created the edge config. * **LastUpdatedTime** *(datetime) --* The timestamp when the stream last updated the edge config. * **SyncStatus** *(string) --* The current sync status of the stream's edge configuration. * **FailedStatusDetails** *(string) --* A description of the generated failure status. * **EdgeConfig** *(dict) --* A description of the stream's edge configuration that will be used to sync with the Edge Agent IoT Greengrass component. The Edge Agent component will run on an IoT Hub Device setup at your premise. * **HubDeviceArn** *(string) --* The "**Internet of Things (IoT) Thing**" Arn of the stream. * **RecorderConfig** *(dict) --* The recorder configuration consists of the local "MediaSourceConfig" details, that are used as credentials to access the local media files streamed on the camera. * **MediaSourceConfig** *(dict) --* The configuration details that consist of the credentials required ( "MediaUriSecretArn" and "MediaUriType") to access the media files streamed to the camera. * **MediaUriSecretArn** *(string) --* The Amazon Web Services Secrets Manager ARN for the username and password of the camera, or a local media file location. * **MediaUriType** *(string) --* The Uniform Resource Identifier (URI) type. The "FILE_URI" value can be used to stream local media files. Note: Preview only supports the "RTSP_URI" media source URI format . * **ScheduleConfig** *(dict) --* The configuration that consists of the "ScheduleExpression" and the "DurationInMinutes" details that specify the scheduling to record from a camera, or local media file, onto the Edge Agent. If the "ScheduleExpression" attribute is not provided, then the Edge Agent will always be set to recording mode. * **ScheduleExpression** *(string) --* The Quartz cron expression that takes care of scheduling jobs to record from the camera, or local media file, onto the Edge Agent. If the "ScheduleExpression" is not provided for the "RecorderConfig", then the Edge Agent will always be set to recording mode. For more information about Quartz, refer to the Cron Trigger Tutorial page to understand the valid expressions and its use. * **DurationInSeconds** *(integer) --* The total duration to record the media. If the "ScheduleExpression" attribute is provided, then the "DurationInSeconds" attribute should also be specified. * **UploaderConfig** *(dict) --* The uploader configuration contains the "ScheduleExpression" details that are used to schedule upload jobs for the recorded media files from the Edge Agent to a Kinesis Video Stream. * **ScheduleConfig** *(dict) --* The configuration that consists of the "ScheduleExpression" and the "DurationInMinutes" details that specify the scheduling to record from a camera, or local media file, onto the Edge Agent. If the "ScheduleConfig" is not provided in this "UploaderConfig", then the Edge Agent will upload at regular intervals (every 1 hour). * **ScheduleExpression** *(string) --* The Quartz cron expression that takes care of scheduling jobs to record from the camera, or local media file, onto the Edge Agent. If the "ScheduleExpression" is not provided for the "RecorderConfig", then the Edge Agent will always be set to recording mode. For more information about Quartz, refer to the Cron Trigger Tutorial page to understand the valid expressions and its use. * **DurationInSeconds** *(integer) --* The total duration to record the media. If the "ScheduleExpression" attribute is provided, then the "DurationInSeconds" attribute should also be specified. * **DeletionConfig** *(dict) --* The deletion configuration is made up of the retention time ( "EdgeRetentionInHours") and local size configuration ( "LocalSizeConfig") details that are used to make the deletion. * **EdgeRetentionInHours** *(integer) --* The number of hours that you want to retain the data in the stream on the Edge Agent. The default value of the retention time is 720 hours, which translates to 30 days. * **LocalSizeConfig** *(dict) --* The value of the local size required in order to delete the edge configuration. * **MaxLocalMediaSizeInMB** *(integer) --* The overall maximum size of the media that you want to store for a stream on the Edge Agent. * **StrategyOnFullSize** *(string) --* The strategy to perform when a stream’s "MaxLocalMediaSizeInMB" limit is reached. * **DeleteAfterUpload** *(boolean) --* The "boolean" value used to indicate whether or not you want to mark the media for deletion, once it has been uploaded to the Kinesis Video Stream cloud. The media files can be deleted if any of the deletion configuration values are set to "true", such as when the limit for the "EdgeRetentionInHours", or the "MaxLocalMediaSizeInMB", has been reached. Since the default value is set to "true", configure the uploader schedule such that the media files are not being deleted before they are initially uploaded to the Amazon Web Services cloud. KinesisVideo / Client / describe_mapped_resource_configuration describe_mapped_resource_configuration ************************************** KinesisVideo.Client.describe_mapped_resource_configuration(**kwargs) Returns the most current information about the stream. The "streamName" or "streamARN" should be provided in the input. See also: AWS API Documentation **Request Syntax** response = client.describe_mapped_resource_configuration( StreamName='string', StreamARN='string', MaxResults=123, NextToken='string' ) Parameters: * **StreamName** (*string*) -- The name of the stream. * **StreamARN** (*string*) -- The Amazon Resource Name (ARN) of the stream. * **MaxResults** (*integer*) -- The maximum number of results to return in the response. * **NextToken** (*string*) -- The token to provide in your next request, to get another batch of results. Return type: dict Returns: **Response Syntax** { 'MappedResourceConfigurationList': [ { 'Type': 'string', 'ARN': 'string' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **MappedResourceConfigurationList** *(list) --* A structure that encapsulates, or contains, the media storage configuration properties. * *(dict) --* A structure that encapsulates, or contains, the media storage configuration properties. * **Type** *(string) --* The type of the associated resource for the kinesis video stream. * **ARN** *(string) --* The Amazon Resource Name (ARN) of the Kinesis Video Stream resource, associated with the stream. * **NextToken** *(string) --* The token that was used in the >>``<