

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon Chime SDK 미디어 스트림 파이프라인용 Kinesis Video Streams 풀의 예제 코드
<a name="pool-creation-code"></a>

다음 예제는 Kinesis Video Streams(KVS) 풀을 생성, 업데이트, 가져오기, 나열 및 삭제하는 방법을 보여줍니다. 각 섹션을 펼쳐 자세히 알아보세요.

## 가져오기 및 공통 변수
<a name="imports-variables"></a>

```
'''
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))
```

## CreateMediaPipelineKinesisVideoStreamPool
<a name="create-stream-sample"></a>

```
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']){{}}
```

**출력**:

```
{
    "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}}"
}
```

## GetMediaPipelineKinesisVideoStream
<a name="get-stream-sample"></a>

```
response = client.get_media_pipeline_kinesis_video_stream_pool(
        Identifier={{pool_name}}
)

pretty_print_json(response['KinesisVideoStreamPoolConfiguration'])
```

**출력:**

```
{
    "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}}"
}
```

## UpdateMediaPipelineKinesisVideoStream
<a name="update-stream-sample"></a>

```
response = client.update_media_pipeline_kinesis_video_stream_pool(
    Identifier={{pool_name}},
    StreamConfiguration={
        'DataRetentionInHours': {{48}}
    }
)
pretty_print_json(response['KinesisVideoStreamPoolConfiguration'])
```

**출력:**

```
{
    "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}}"
}
```

## ListMediaPipelineKinesisVideoStream
<a name="list-stream-sample"></a>

```
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)
```

**출력:**

```
[
    {
        "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}}"
    }
]
```

## DeleteMediaPipelineKinesisVideoStream
<a name="delete-stream-sample"></a>

```
client.delete_media_pipeline_kinesis_video_stream_pool(
    Identifier={{pool_name}}
)
```

**출력**: 성공적인 `delete_media_pipeline_kinesis_video_stream_pool` 요청에는 본문이 없습니다.