Example code for Kinesis Video Streams pools
The following examples show how to create, update, get, list, and delete Kinesis Video Streams (KVS) pools. Expand each section to learn more.
''' Define imports and common variables ''' import boto3 from uuid import
uuid4
import json client = boto3.client("chime-sdk-media-pipelines", region_name='us-east-1
') pool_name = 'MyDemoKvsPool
' def pretty_print_json(obj): print(json.dumps(obj, default=str, indent=4))
response = client.create_media_pipeline_kinesis_video_stream_pool( StreamConfiguration={ 'Region': '
us-east-1
', 'DataRetentionInHours':24
}, PoolName=pool_name
, ClientRequestToken=str(uuid4
()), Tags=[ { 'Key': 'MyTagForAccessControl
', 'Value': 'SomeTagValue
' }, ] ) pretty_print_json(response['KinesisVideoStreamPoolConfiguration'])
Output:
{ "PoolArn": "arn:aws:chime:
us-east-1
:account-ID
:media-pipeline-kinesis-video-stream-pool/MyDemoKvsPool
", "PoolName": "MyDemoKvsPool
", "PoolId": "ChimeMediaPipelines-MyDemoKvsPool
-1f4e1a69-e718-4884-bf92-8a393ac0405b
", "PoolStatus": "CREATING", "StreamConfiguration": { "Region": "us-east-1
", "DataRetentionInHours":24
}, "CreatedTimestamp": "2023-10-13 01:26:09.979000+00:00
", "UpdatedTimestamp": "2023-10-13 01:26:09.979000+00:00
" }
response = client.get_media_pipeline_kinesis_video_stream_pool( Identifier=
pool_name
) pretty_print_json(response['KinesisVideoStreamPoolConfiguration'])
Output:
{ "PoolArn": "arn:aws:chime:
us-east-1
:account-ID
:media-pipeline-kinesis-video-stream-pool/MyDemoKvsPool
", "PoolName": "MyDemoKvsPool
", "PoolId": "ChimeMediaPipelines-MyDemoKvsPool
-1f4e1a69-e718-4884-bf92-8a393ac0405b
", "PoolStatus": "ACTIVE", "StreamConfiguration": { "Region": "us-east-1
", "DataRetentionInHours":24
}, "CreatedTimestamp": "2023-10-13 01:26:09.979000+00:00
", "UpdatedTimestamp": "2023-10-13 01:26:09.979000+00:00
" }
response = client.update_media_pipeline_kinesis_video_stream_pool( Identifier=
pool_name
, StreamConfiguration={ 'DataRetentionInHours':48
} ) pretty_print_json(response['KinesisVideoStreamPoolConfiguration'])
Output:
{ "PoolArn": "arn:aws:chime:
us-east-1
:account-ID
:media-pipeline-kinesis-video-stream-pool/MyDemoKvsPool
", "PoolName": "MyDemoKvsPool
", "PoolId": "ChimeMediaPipelines-MyDemoKvsPool
-d08c26ae-0336-4e2e-acdf-805a7d71b891
", "PoolStatus": "UPDATING", "PoolSize":40
, "StreamConfiguration": { "Region": "us-east-1
", "DataRetentionInHours":48
}, "CreatedTimestamp": "2023-10-13 01:44:23.010000+00:00
", "UpdatedTimestamp": "2023-10-13 01:44:28.486000+00:00
" }
list_of_pools = [] max_results =
100
next_token = None while(True): if next_token: response = client.list_media_pipeline_kinesis_video_stream_pools( NextToken=next_token, MaxResults=max_results ) else: response = client.list_media_pipeline_kinesis_video_stream_pools( MaxResults=max_results ) list_of_pools.extend(response['KinesisVideoStreamPools']) next_token = response.get('NextToken') if not next_token: break pretty_print_json(list_of_pools)
Output:
[ { "PoolName": "
MyDemoKvsPool
", "PoolId": "ChimeMediaPipelines-MyDemoKvsPool
-6588e703-f046-4288-ba7f-0c03de76a6bb
", "PoolArn": "arn:aws:chime:us-east-1
:account-ID
:media-pipeline-kinesis-video-stream-pool/MyDemoKvsPool
" } ]
client.delete_media_pipeline_kinesis_video_stream_pool( Identifier=
pool_name
)
Output: A successful
delete_media_pipeline_kinesis_video_stream_pool
request has no body.