

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

# Amazon Connect 연락 제어판(CCP)을 사용하도록 네트워크 설정
<a name="ccp-networking"></a>

기존 VoIP 솔루션에서는 특정 UDP 포트 범위와 IP(예: 80 및 443)에 대해 인바운드 및 아웃바운드를 모두 허용해야 합니다. 이러한 솔루션은 TCP에도 적용됩니다. 비교한다면 소프트폰과 함께 연락처 제어판(CCP)을 사용하기 위한 네트워크 요구 사항은 덜 직관적입니다. 웹 브라우저를 통해 지속적인 보내기/받기 연결을 설정할 수 있습니다. 결과적으로 인바운드 트래픽을 수신하기 위해 클라이언트 측 포트를 열 필요가 없습니다.

다음 다이어그램에서는 각 포트의 용도를 보여 줍니다.

![\[Amazon Connect 구성 요소 및 AWS 클라우드 서비스에 대한 연결을 보여주는 다이어그램입니다.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/networking.png)


고객 센터에서 이메일 채널을 사용하는 경우 자세한 내용은 Amazon SES 개발자 안내서를 참조하세요. 비즈니스에서 대량의 이메일을 보내는 경우 전용 IP 주소를 임대할 수 있습니다. 자세한 내용은 [Amazon SES를 위한 전용 IP 주소](https://docs.aws.amazon.com/ses/latest/dg/dedicated-ip.html) 섹션을 참조하세요.

다음 섹션에서는 CCP를 사용하기 위한 두 가지 기본 연결 옵션을 설명합니다.

**Topics**
+ [옵션 1(권장): Amazon EC2 및 CloudFront IP 범위 요구 사항을 도메인 허용 목록으로 바꾸기](#option1)
+ [옵션 2(권장하지 않음): IP 주소 범위 허용](#option2)
+ [Amazon Connect IP 주소 범위 정보](#about-connect-ip-address-range)
+ [상태 비저장 방화벽](#stateless-firewalls)
+ [Amazon Connect 일정에서 잔여 휴가 및 허용량 업로드 허용](#endpoints-scheduling)
+ [소프트폰에 대한 DNS 확인 허용](#allow-dns-resolution)
+ [포트 및 프로토콜 고려 사항](#port-considerations)
+ [리전 선택 고려 사항](#ccp-region-selection)
+ [Amazon Connect를 원격으로 사용하는 에이전트](#remote-agents)
+ [오디오 재라우팅](#reroute-audio)
+ [사용 Direct Connect](#using-directconnect)
+ [Amazon Connect에서 앱, 웹 및 영상 통화를 위한 에이전트 워크스테이션 요구 사항](videocalling-networking-requirements.md)
+ [자세한 네트워크 경로](detailed-network-paths.md)
+ [VDI 환경에서 Amazon Connect 사용](using-ccp-vdi.md)
+ [콜센터 에이전트가 연락 제어판(CCP)에 연결하는 방법](ccp-connectivity.md)
+ [CCP가 WebRTC를 활용하는 방법](ccp-leverages-webrtc.md)
+ [Amazon Connect에서 통합 애플리케이션에 허용 목록 사용](app-integration.md)
+ [도메인 업데이트](update-your-connect-domain.md)

## 옵션 1(권장): Amazon EC2 및 CloudFront IP 범위 요구 사항을 도메인 허용 목록으로 바꾸기
<a name="option1"></a>

이 첫 번째 옵션을 사용하면 영향 범위를 상당히 줄일 수 있습니다.

200회 이상의 통화에는 옵션 1을 시도하고 테스트하는 것이 좋습니다. 소프트폰 오류, 끊어진 통화, 회의/전송 기능에 대해 테스트하세요. 오류 발생률이 2%보다 크면 프록시 확인에 문제가 있을 수 있습니다. 이 경우 옵션 2 사용을 고려하세요.

Amazon EC2 엔드포인트의 트래픽을 허용하려면 다음 표의 첫 번째 행과 같이 URL과 포트의 액세스를 허용합니다. ip-ranges.json 파일에 나열된 모든 IP 주소 범위를 허용하는 대신 이렇게 합니다. 다음 표의 두 번째 행과 같이 CloudFront의 도메인을 사용하는 것과 동일한 이점을 얻을 수 있습니다.


| 도메인/URL 허용 목록 | AWS 리전 | 포트 | Direction | Traffic | 
| --- | --- | --- | --- | --- | 
| rtc\$1.connect-telecom.*리전*.amazonaws.com 이는 ccp\$1(v1)에서 사용됩니다. 이 표 아래의 참고 사항을 참조하세요.  | 리전을 Amazon Connect 인스턴스가 위치하고 있는 리전으로 바꿉니다. | 443(TCP) | 아웃바운드 | 보내기/받기 | 
|  **\$1.my.connect.aws**의 최소 허용 목록은 다음과 같습니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/ccp-networking.html) **\$1.awsapps.com**의 최소 허용 목록은 다음과 같습니다.  **.awsapps.com**은 사라지는 이전 도메인입니다. 도메인을 **my.connect.aws**로 업데이트하는 방법에 대한 지침은 [Amazon Connect 도메인 업데이트](update-your-connect-domain.md) 섹션을 참조하세요.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/ccp-networking.html)  | *myInstanceName*을 Amazon Connect 인스턴스의 별칭으로 바꿉니다.  | 443(TCP) | 아웃바운드 | 보내기/받기 | 
| \$1.telemetry.connect.*리전*.amazonaws.com  | *리전*을 Amazon Connect 인스턴스의 위치로 바꿉니다. | 443(TCP) | 아웃바운드 | 보내기/받기 | 
| participant.connect.*리전*.amazonaws.com  | *리전*을 Amazon Connect 인스턴스의 위치로 바꿉니다. | 443(TCP) | 아웃바운드 | 보내기/받기 | 
| \$1.transport.connect.*리전*.amazonaws.com 이는 ccp-v2에서 사용됩니다.  | *리전*을 Amazon Connect 인스턴스의 위치로 바꿉니다. | 443(TCP) | 아웃바운드 | 보내기/받기 | 
| *Amazon S3 버킷 이름*.s3.*리전*.amazonaws.com  | *Amazon S3 버킷 이름*을 첨부 파일을 저장하는 위치의 이름으로 바꿉니다. *리전*을 Amazon Connect 인스턴스의 위치로 바꿉니다. | 443(TCP) | 아웃바운드 | 보내기/받기 | 
| TurnNlb-\$1.elb.*리전*.amazonaws.com 리전을 기반으로 허용 목록에 특정 엔드포인트를 추가하려면 [NLB 엔드포인트](#nlb-endpoints) 섹션을 참조하세요.  | *리전*을 Amazon Connect 인스턴스의 위치로 바꿉니다. | 3478(UDP) | 아웃바운드 | 보내기/받기 | 
| *instance-id.source-region*.sign-in.connect.aws 이는 [Amazon Connect Global Resiliency](setup-connect-global-resiliency.md)에 온보딩한 경우에만 사용됩니다.  | *instance-id*를 실제 인스턴스 ID로, *source-region*을 소스 인스턴스의 AWS 리전으로 대체하세요. 자세한 내용은 [ID 제공업체(idP)를 Amazon Connect Global Resiliency SAML 로그인 엔드포인트와 통합하세요.](integrate-idp.md) 섹션을 참조하세요. | 443(HTTPS) | 아웃바운드 | 보내기/받기 | 
| \$1.*source-region*.region-discovery.connect.aws 이는 [Amazon Connect Global Resiliency](setup-connect-global-resiliency.md)에 온보딩한 경우에만 필요합니다.  | *source-region*을 소스 인스턴스의 AWS 리전으로 바꾸세요. 소스 리전을 찾는 방법에 대한 지침은 [Amazon Connect 인스턴스의 소스 리전을 찾는 방법](create-replica-connect-instance.md#how-to-find-source-region-of-instances) 섹션을 참조하세요. | 443(HTTPS) | 아웃바운드 | 보내기/받기 | 

정규화된 도메인 이름(FQDN)은 고객별로 변경하거나 사용자 지정할 수 없습니다. 대신 [옵션 2 - IP 주소 범위 허용](#option2)을 사용하세요.

**작은 정보**  
특정 프록시 애플리케이션에서는 `rtc*.connect-telecom.region.amazonaws.com`, ` *.transport.connect.region.amazonaws.com` 및 `https://myInstanceName.awsapps.com`을 사용하면 웹 소켓 처리가 기능에 영향을 미칠 수 있습니다. 프로덕션 환경에 배포하기 전에 테스트하고 확인해야 합니다.

다음 표에는 IP 범위 대신 허용 목록에 도메인을 추가하려는 경우 정적 자산에 사용되는 CloudFront 도메인이 나와 있습니다.


| 리전 | CloudFront 도메인 | 
| --- | --- | 
| us-east-1  | https://dd401jc05x2yk.cloudfront.net/  https://d1f0uslncy85vb.cloudfront.net/  | 
| us-west-2  | https://d38fzyjx9jg8fj.cloudfront.net/  https://d366s8lxuwna4d.cloudfront.net/  | 
| ap-northeast-1  | https://d3h58onr8hrozw.cloudfront.net/  https://d13ljas036gz6c.cloudfront.net/  | 
| ap-northeast-2  | https://d11ouwvqpq1ads.cloudfront.net/  | 
| ap-southeast-1  | https://d2g7up6vqvaq2o.cloudfront.net/  https://d12o1dl1h4w0xc.cloudfront.net/  | 
| ap-southeast-2  | https://d2190hliw27bb8.cloudfront.net/  https://d3mgrlqzmisce5.cloudfront.net/  | 
| eu-central-1  | https://d1n9s7btyr4f0n.cloudfront.net/  https://d3tqoc05lsydd3.cloudfront.net/  | 
| eu-west-2  | https://dl32tyuy2mmv6.cloudfront.net/  https://d2p8ibh10q5exz.cloudfront.net/  | 

**참고**  
AWS는 도메인 `*.my.connect.aws` 뒤에 정적 콘텐츠를 호스팅하므로 ca-central은 표에 포함되지 않습니다.

회사에서 SAML을 사용하지 않고 방화벽 제한이 있는 경우 리전별로 다음 항목을 추가할 수 있습니다.


| 리전 | CloudFront 도메인 | 
| --- | --- | 
| us-east-1  | https://d32i4gd7pg4909.cloudfront.net/  | 
| us-west-2  | https://d18af777lco7lp.cloudfront.net/  | 
| eu-west-2  | https://d16q6638mh01s7.cloudfront.net/  | 
| ap-northeast-1  | https://d2c2t8mxjhq5z1.cloudfront.net/  | 
| ap-northeast-2  | https://d9j3u8qaxidxi.cloudfront.net/  | 
| ap-southeast-1  | https://d3qzmd7y07pz0i.cloudfront.net/  | 
| ap-southeast-2  | https://dwcpoxuuza83q.cloudfront.net/  | 
| eu-central-1  | https://d1whcm49570jjw.cloudfront.net/  | 
| ca-central-1  | https://d2wfbsypmqjmog.cloudfront.net/  | 
| us-gov-east-1:  | https://s3-us-gov-east-1.amazonaws.com/warp-drive-console-static-content-prod-osu/  | 
| us-gov-west-1:  | https://s3-us-gov-west-1.amazonaws.com/warp-drive-console-static-content-prod-pdt/  | 

### NLB 엔드포인트
<a name="nlb-endpoints"></a>

다음 표에는 Amazon Connect 인스턴스가 있는 리전의 특정 엔드포인트가 나와 있습니다. TurnNlb-\$1.elb.*region*.amazonaws.com 와일드카드를 사용하지 않으려면 대신 허용 목록에 이러한 엔드포인트를 추가할 수 있습니다.


| 리전 | Turn Domain/URL | 
| --- | --- | 
| us-west-2  | TurnNlb-8d79b4466d82ad0e.elb.us-west-2.amazonaws.com TurnNlb-dbc4ebb71307fda2.elb.us-west-2.amazonaws.com TurnNlb-13c884fe3673ed9f.elb.us-west-2.amazonaws.com TurnNlb-6bb66ee54ee32710.elb.us-west-2.amazonaws.com TurnNlb-ecc67f8fbd7a29f6.elb.us-west-2.amazonaws.com | 
| us-east-1  | TurnNlb-d76454ac48d20c1e.elb.us-east-1.amazonaws.com  TurnNlb-31a7fe8a79c27929.elb.us-east-1.amazonaws.com TurnNlb-7a9b8e750cec315a.elb.us-east-1.amazonaws.com TurnNlb-d40f7ff9cdd63758.elb.us-east-1.amazonaws.com TurnNlb-7675623c965365c2.elb.us-east-1.amazonaws.com  | 
| af-south-1  | TurnNlb-29b8f2824c2958b8.elb.af-south-1.amazonaws.com | 
| ap-northeast-1  | TurnNlb-3c6ddabcbeb821d8.elb.ap-northeast-1.amazonaws.com  | 
| ap-northeast-2  | TurnNlb-a2d59ac3f246f09a.elb.ap-northeast-2.amazonaws.com | 
| ap-southeast-1  | TurnNlb-261982506d86d300.elb.ap-southeast-1.amazonaws.com | 
| ap-southeast-2  | TurnNlb-93f2de0c97c4316b.elb.ap-southeast-2.amazonaws.com | 
| ca-central-1  | TurnNlb-b019de6142240b9f.elb.ca-central-1.amazonaws.com | 
| eu-central-1  | TurnNlb-ea5316ebe2759cbc.elb.eu-central-1.amazonaws.com TurnNlb-cce94fede9926d70.elb.eu-central-1.amazonaws.com  | 
| eu-west-2  | TurnNlb-1dc64a459ead57ea.elb.eu-west-2.amazonaws.com TurnNlb-0c39b6a52bcdd446.elb.eu-west-2.amazonaws.com  | 
| us-gov-west-1  | TurnNlb-d7c623c23f628042.elb.us-gov-west-1.amazonaws.com | 

## 옵션 2(권장하지 않음): IP 주소 범위 허용
<a name="option2"></a>

두 번째 옵션은 허용 목록을 사용하여 Amazon Connect에서 사용할 수 있는 IP 주소 및 포트를 정의하는 것입니다. [AWS ip-ranges.json](https://ip-ranges.amazonaws.com/ip-ranges.json) 파일의 IP 주소를 사용하여 이 허용 목록을 생성합니다.

에서 Amazon Connect를 사용하는 리전이 AWS ip-ranges.json 파일에 표시되지 않는 경우 전역 값만 사용합니다.

이 파일에 대한 자세한 내용은 [Amazon Connect IP 주소 범위 정보](#about-connect-ip-address-range)을 참조합니다.


| IP-범위 항목 | AWS 리전 | 포트/프로토콜 | Direction | Traffic | 
| --- | --- | --- | --- | --- | 
| AMAZON\$1CONNECT | Amazon Connect 인스턴스가 위치한 GLOBAL 및 리전(허용 목록에 GLOBAL 및 리전별 항목 추가)  | 3478(UDP) | 아웃바운드 | 보내기/받기 | 
| EC2 | Amazon Connect 인스턴스가 위치한 GLOBAL 및 리전(리전별 항목이 없는 경우에만 GLOBAL) | 443(TCP) | 아웃바운드 | 보내기/받기 | 
| CLOUDFRONT | 글로벌\$1 | 443(TCP) | 아웃바운드 | 보내기/받기 | 

\$1CloudFront는 에이전트가 위치하고 있는 장소와 관련하여 대기 시간이 가장 짧은 엣지 로케이션에서 정적 콘텐츠(예: 이미지 또는 JavaScript)를 제공합니다. CloudFront에 대한 IP 범위 허용 목록은 글로벌이며 ip-ranges.json 파일에서 **"service": "CLOUDFRONT"**와 연결된 모든 IP 주소가 필요합니다.

## Amazon Connect IP 주소 범위 정보
<a name="about-connect-ip-address-range"></a>

[AWS ip-ranges.json](https://ip-ranges.amazonaws.com/ip-ranges.json) 파일에서 전체 /19 IP 주소 범위는 Amazon Connect가 소유합니다. /19 범위에서 들어오고 나가는 모든 트래픽은 Amazon Connect에서 송수신됩니다.

/19 IP 주소 범위는 다른 서비스와 공유되지 않으며, 전 세계적으로 Amazon Connect에만 사용됩니다.

 AWS ip-ranges.json 파일에서 동일한 범위를 두 번 나열할 수 있습니다. 예제: 

```
            
                { "ip_prefix": "15.193.0.0/19", 
                "region": "GLOBAL", 
                "service": "AMAZON" 
                }, 
                {
                "ip_prefix": "15.193.0.0/19", 
                "region": "GLOBAL", 
                "service": "AMAZON_CONNECT" 
                },
```

AWS 는 항상 모든 IP 범위를 두 번 게시합니다. 하나는 특정 서비스용이고 다른 하나는 "AMAZON" 서비스용입니다. 서비스 내에서 보다 구체적인 사용 사례를 위해 세 번 게시하는 경우도 있습니다.

Amazon Connect에 대해 지원되는 새 IP 주소 범위가 있는 경우 공개적으로 사용 가능한 ip-ranges.json 파일에 추가됩니다. 이러한 IP 주소 범위는 서비스에서 사용되기 전에 최소 30일 동안 보관됩니다. 30일 후 다음 2주에 걸쳐 새로운 IP 주소 범위를 통한 소프트폰 트래픽이 증가합니다. 2주가 지나면 트래픽은 사용 가능한 모든 범위와 동일한 새 범위를 통해 라우팅됩니다.

의이 파일 및 IP 주소 범위에 대한 자세한 내용은 IP 주소 범위를 AWS참조하세요. [AWS](https://docs.aws.amazon.com/general/latest/gr/aws-ip-ranges.html) 

## 상태 비저장 방화벽
<a name="stateless-firewalls"></a>

두 옵션 모두에 대해 상태 비저장 방화벽을 사용하는 경우 이전 섹션에서 설명하는 요구 사항을 적용합니다. 그런 다음 아래 표와 같이 브라우저에서 사용되는 휘발성 포트 범위를 허용 목록에 추가해야 합니다.


| IP-범위 항목 | 포트 | Direction | Traffic | 
| --- | --- | --- | --- | 
| AMAZON\$1CONNECT | Windows 환경의 경우: 49152\$165535(UDP) Linux 환경의 경우: 32768\$161000 | 인바운드 | 보내기/받기 | 

## Amazon Connect 일정에서 잔여 휴가 및 허용량 업로드 허용
<a name="endpoints-scheduling"></a>

Amazon Connect 일정에 남은 휴가와 허용량을 업로드할 수 있도록 하려면 프록시 예외 목록에 다음 업로드 엔드포인트를 추가하세요.
+ https://bm-prod-*region*-cell-1-uploadservice-staging.s3.*region*.amazonaws.com
+ https://bm-prod-*region*-cell-2-uploadservice-staging.s3.*region*.amazonaws.com

이러한 엔드포인트가 지원하는 활동에 대한 자세한 내용은 다음 주제를 참조하세요.
+ [Amazon Connect에서 휴가에 대한 그룹 허용량 설정](config-group-allowance-to.md)
+ [Amazon Connect에서 에이전트의 남은 휴가 가져오기](upload-timeoff-balance.md)

## 소프트폰에 대한 DNS 확인 허용
<a name="allow-dns-resolution"></a>

허용 목록에 Amazon Connect IP 범위를 이미 추가했고 DNS 이름 확인에 제한이 없는 경우, 허용 목록에 **TurnNlb-\$1.elb.*region*.amazonaws.com**을 추가하지 않아도 됩니다.
+ 네트워크에 있는 동안 DNS 이름 확인에 제한이 있는지 확인하려면 `nslookup` 명령을 사용합니다. 예제: 

   `nslookup TurnNlb-d76454ac48d20c1e.elb.us-east-1.amazonaws.com`

DNS를 확인할 수 없는 경우 허용 목록에 [위에 나열된](#nlb-endpoints) TurnNLB 엔드포인트 또는 **TurnNlb-\$1.elb.*리전*.amazonaws.com**을 추가해야 합니다.

이 도메인을 허용하지 않으면 에이전트가 전화를 받으려고 할 때 CCP(연락처 제어판)에서 다음 오류가 발생합니다.
+ 소프트폰 연결을 설정하지 못했습니다. 다시 시도하거나 다음과 같이 관리자에게 문의합니다. 브라우저가 turn:TurnNlb-xxxxxxxxxxxxx.elb.*리전*.amazonaws.com:3478?transport=udp로 미디어 채널을 설정할 수 없습니다.

## 포트 및 프로토콜 고려 사항
<a name="port-considerations"></a>

Amazon Connect의 네트워크 구성을 변경할 때 다음을 고려하세요.
+ Amazon Connect 인스턴스를 생성한 리전의 모든 주소 및 범위에 대해 트래픽을 허용해야 합니다.
+ CCP와 Amazon Connect 사이에 프록시 또는 방화벽을 사용하는 경우, 에이전트의 전체 교대를 커버하도록 SSL 인증서 캐시 시간 제한을 늘리세요. 그러면 예정된 업무 시간 중 인증서 갱신으로 인한 연결 문제가 방지됩니다. 예를 들어 에이전트가 휴식 시간을 포함하여 8시간 교대로 근무할 예정이라면 간격을 8시간(휴식 및 중식 시간 포함)으로 늘리세요.
+ 포트를 열 때 Amazon EC2와 Amazon Connect에는 인스턴스와 동일한 리전의 엔드포인트에 대한 포트만 필요합니다. Amazon CloudFront는 에이전트가 위치하고 있는 장소와 관련하여 대기 시간이 가장 짧은 엣지 로케이션에서 정적 콘텐츠를 제공합니다. CloudFront에 대한 IP 범위 허용 목록은 글로벌이며 ip-ranges.json 파일에서 "service": "CLOUDFRONT"와 연결된 모든 IP 주소가 필요합니다.
+ ip-ranges.json이 업데이트되면 연결된 AWS 서비스는 30일 후에 업데이트된 IP 범위를 사용하기 시작합니다. 서비스에서 새 IP 범위에 트래픽을 라우팅하기 시작할 때 간헐적인 연결 문제를 방지하려면, 새 IP 범위가 ip-ranges.json에 추가된 시간부터 30일 이내에 새 IP 범위를 허용 목록에 추가해야 합니다.
+ Amazon Connect Streams API를 통해 사용자 지정 CCP를 사용하는 경우, Amazon Connect와의 통신을 위해 포트를 개방할 필요가 없는 미디어리스 CCP를 생성할 수 있지만, Amazon EC2 및 CloudFront와 통신을 위해서는 여전히 포트를 개방해야 합니다.

## 리전 선택 고려 사항
<a name="ccp-region-selection"></a>

Amazon Connect 리전 선택은 데이터 거버넌스 요구 사항, 사용 사례, 각 리전에서 사용 가능한 서비스 그리고 에이전트, 고객 응대 및 외부 전송 엔드포인트 위치와 관련된 대기 시간에 따라 달라집니다.
+ **에이전트 위치/네트워크** - CCP 연결은 퍼블릭 WAN을 통과하므로 워크스테이션은 가능한 한 대기 시간이 짧고 홉이 적은 것이 중요합니다. 리소스 및 Amazon Connect 인스턴스가 호스팅되는 AWS 리전에서는 특히 그렇습니다. 예를 들어 엣지 라우터에 도달하기 위해 여러 개의 홉이 필요한 허브 앤 스포크 네트워크에서는 지연 시간이 증가하고 경험의 품질이 저하될 수 있습니다.

  인스턴스와 에이전트를 설정할 때 에이전트와 지리적으로 가장 인접한 리전에 인스턴스를 생성해야 합니다. 회사 정책 또는 기타 규정을 준수하기 위해 특정 리전에 인스턴스를 설정해야 하는 경우, 에이전트 컴퓨터와 Amazon Connect 인스턴스 사이에 네트워크 홉이 최소화되도록 구성을 선택하세요.
+ **발신자 위치** - 통화는 Amazon Connect 리전 엔드포인트에 고정되므로 PSTN 대기 시간이 발생할 수 있습니다. 발신자 및 전송 엔드포인트는 지연 시간을 최소화하기 위해 Amazon Connect 인스턴스가 호스팅되는 AWS 리전과 최대한 가깝게 지리적으로 위치하는 것이 이상적입니다.

  최적의 성능을 위해, 또한 고객이 고객 센터에 전화할 때 대기 시간을 제한하려면 Amazon Connect 인스턴스를 고객이 발신하는 위치와 지리적으로 가장 가까운 리전에서 생성하세요. 복수의 Amazon Connect 인스턴스를 생성하고 고객에게 발신 위치와 가장 가까운 번호에 대한 연락처 정보를 제공하는 것을 고려해볼 수 있습니다.
+ **외부 전송** - Amazon Connect를 통한 외부 전송은 통화가 진행되는 동안 Amazon Connect 리전 엔드포인트에 고정된 상태로 유지됩니다. 전송된 통화는 수신자가 끊을 때까지 분 단위 사용량이 계속 계산됩니다. 에이전트가 끊거나 전송이 완료된 이후에는 통화가 녹음되지 않습니다. 전송된 통화의 고객 응대 레코드 데이터 및 관련 통화 녹음은 통화 종료 후에 생성됩니다. PSTN 대기 시간이 가중되는 것을 방지하려면 가능한 한 Amazon Connect로 다시 전송될 수 있는 통화는 전송하지 마세요(이를 순환 전송이라고 함).

## Amazon Connect를 원격으로 사용하는 에이전트
<a name="remote-agents"></a>

**중요**  
에이전트가 SAML 2.0을 사용하여 Amazon Connect에 로그인하는 경우 로그인 엔드포인트 및 할당량에 나열된 AWS SSO 엔드포인트를 허용 목록에 추가해야 합니다. [AWS](https://docs.aws.amazon.com/general/latest/gr/signin-service.html) 

원격 에이전트, 즉 조직의 기본 네트워크에 연결되지 않은 위치에서 Amazon Connect를 사용하는 에이전트는 불안정한 연결, 패킷 손실, 높은 대기 시간 등 로컬 네트워크와 관련된 문제를 겪을 수 있습니다. VPN이 리소스에 액세스해야 할 경우 이 문제가 가중됩니다. 에이전트는 AWS 리소스와 Amazon Connect 인스턴스가 호스팅되는 리전과 AWS 가까운 곳에 위치하고 퍼블릭 WAN에 안정적으로 연결하는 것이 가장 좋습니다.

## 오디오 재라우팅
<a name="reroute-audio"></a>

오디오를 기존 디바이스로 재라우팅하는 경우 Amazon Connect 리전에 대한 디바이스의 위치를 고려해야 합니다. 잠재적 추가 지연 시간을 고려할 수 있기 때문입니다. 오디오를 재라우팅하는 경우, 에이전트를 향한 통화가 발생할 때마다 아웃바운드 통화가 구성된 디바이스로 배치됩니다. 에이전트가 디바이스에 응답하면 해당 에이전트가 발신자와 연결됩니다. 에이전트가 디바이스에 응답하지 않을 경우 에이전트 또는 관리자가 상태를 사용 가능으로 다시 변경할 때까지 에이전트가 누락된 고객 응대 상태로 전환됩니다.

## 사용 Direct Connect
<a name="using-directconnect"></a>

CCP(Contact Control Panel) 네트워크 연결 문제는 프라이빗 WAN/LAN, ISP 또는 둘 다를 AWS 사용하여 로 가는 경로에 가장 많이 기반합니다. Direct Connect 는 엣지 라우터로의 프라이빗 LAN/WAN 순회와 관련된 문제를 해결하지 않지만 엣지 라우터와 AWS 리소스 간의 지연 시간 및 연결 문제를 해결하는 데 도움이 될 수 있습니다.는 ISP를 사용하여 요청을 AWS 리소스로 동적으로 라우팅하는 대신 내구성 있고 일관된 연결을 Direct Connect 제공합니다. 또한 퍼블릭 WAN을 통과하는 대신 전용 광섬유를 통해 AWS 트래픽을 리디렉션하도록 엣지 라우터를 구성할 수 있습니다.

# Amazon Connect에서 앱, 웹 및 영상 통화를 위한 에이전트 워크스테이션 요구 사항
<a name="videocalling-networking-requirements"></a>

 Amazon Connect 인앱, 웹 및 영상 통화 기능을 사용하면 고객이 웹 또는 모바일 애플리케이션을 떠나지 않고도 연락할 수 있습니다. 영상 통화 기능은 영상 스트림의 Amazon Chime SDK 통신 기본 요소를 활용합니다. 음성 환경은를 통해 처리됩니다 Amazon Connect.

**중요**  
영상 통화는 VDI 환경을 지원하지 않습니다.

다음 테이블에는 에이전트 워크스테이션의 추가 네트워킹 요구 사항이 나와 있습니다.


| 도메인 | 서브넷 | 포트 | 
| --- | --- | --- | 
| \$1.chime.aws | 99.77.128.0/18  | 443(TCP) 3478(UDP) | 

다음 다이어그램은 커뮤니케이션 위젯을 사용하여 연락하는 고객의 네트워킹 요구 사항을 보여 줍니다.

![\[웹 통화 또는 영상을 사용하는 고객을 위한 네트워킹 요구 사항.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/networking-customer.png)


# Amazon Connect의 자세한 네트워크 경로
<a name="detailed-network-paths"></a>

## 음성 통화
<a name="detailed-network-paths-voice"></a>

다음 다이어그램은 Amazon Connect를 통한 음성 통화 흐름을 보여 줍니다.

![\[브라우저 액세스, WebRTC, PSTN 연결 및 S3 레코딩 스토리지를 보여 주는 음성 통화 흐름 다이어그램입니다.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/network-path-voice-calls.png)


1. 사용자는 웹 브라우저를 사용하여 Amazon Connect 애플리케이션에 액세스합니다. 모든 통신은 TLS를 사용하여 전송 중에 암호화됩니다.

1. 사용자는 WebRTC를 사용하여 브라우저에서 Amazon Connect에 대한 음성 연결을 설정합니다. 신호 통신은 TLS를 사용하여 전송 중에 암호화됩니다. 오디오는 SRTP를 사용하여 전송 중에 암호화됩니다.

1. 기존 전화(PSTN)에 대한 음성 연결은 프라이빗 네트워크 연결을 사용하여 Amazon Connect와 AWS 통신 사업자 파트너 간에 설정됩니다. 공유 네트워크 연결이 사용되는 경우, 신호 통신은 TLS를 사용하여 전송 중에 암호화되고 오디오는 SRTP를 사용하여 전송 중에 암호화됩니다.

1. 통화 녹음은 Amazon Connect에 액세스 권한이 부여된 Amazon S3 버킷에 저장됩니다. 이 데이터는 TLS를 사용하여 Amazon Connect와 Amazon S3 간에 암호화됩니다.

1. Amazon S3 서버 측 암호화는 고객 소유 KMS 키를 사용하여 저장 시 통화 녹음을 암호화하는 데 사용됩니다.

## Authentication
<a name="detailed-network-paths-authentication"></a>

다음 다이어그램은에서 AD Connector를 사용하여 기존 고객 Active Directory 설치에 연결하는 Directory Service 방법을 보여줍니다. 흐름은 AWS Managed Microsoft AD을 사용하는 것과 유사합니다.

![\[AD Connector와 고객 Active Directory의 통합을 보여 주는 인증 흐름 다이어그램입니다.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/network-path-authentication.png)


1. 사용자의 웹 브라우저는 사용자 보안 인증 정보(Amazon Connect 로그인 페이지)를 사용하여 퍼블릭 인터넷을 통해 TLS상에서 OAuth 게이트웨이에 대한 인증을 시작합니다.

1. OAuth 게이트웨이는 TLS를 통해 AD Connector로 인증 요청을 전송합니다.

1. AD Connector는 Active Directory에 대한 LDAP 인증을 수행합니다.

1. 사용자의 웹 브라우저는 인증 요청에 따라 게이트웨이에서 다시 OAuth 티켓을 수신합니다.

1. 클라이언트는 CCP(Contact Control Panel)를 로드합니다. 요청은 TLS 상에 있으며, OAuth 티켓을 사용하여 사용자/디렉터리를 식별합니다.

# VDI 환경에서 Amazon Connect 사용
<a name="using-ccp-vdi"></a>

가상 데스크탑 인프라(VDI) 환경은 솔루션에 또 하나의 복잡성을 추가해 최적화를 위해 별도의 POC 노력과 성능 테스트가 필요합니다. 연락처 제어판(CCP)은 다른 모든 WebRTC 기반 브라우저 애플리케이션과 마찬가지로 씩, 씬 및 제로 클라이언트 VDI 환경에서 작동할 수 있으며, 그 구성/지원/최적화는 VDI 지원 팀에서 가장 잘 처리할 수 있습니다. 다음은 VDI 기반 고객에게 유용한 고려 사항 및 모범 사례의 모음입니다.

## 분할 CCP 모델 사용
<a name="use-split-ccp"></a>

VDI에서 실행되는 미디어리스 CCP와 로컬 PC에서 미디어를 전달하는 CCP가 있는 분할 CCP 모델을 사용하는 것이 좋습니다. Amazon Connect Streams API를 통해 사용자 지정 CCP를 구축하여 애플리케이션 데이터 및 통화 신호 전송을 위한 미디어 없는 CCP를 생성할 수 있습니다. 이렇게 하면 미디어가 표준 CCP를 사용하여 로컬 데스크톱으로 전송되고 데이터 및 통화 제어가 미디어리스 CCP와의 원격 연결로 전송됩니다. streams API에 대한 자세한 내용은 GitHub 리포지토리([https://github.com/aws/amazon-connect-streams](https://github.com/aws/amazon-connect-streams))를 참조하세요.

**참고**  
**Firefox 사용자:** 분할 모드에서 VDI를 사용하는 경우 VDI 외부에서 CCP에 Firefox 브라우저를 사용할 수 없습니다. CCP는 Firefox 마이크 사용 지침을 준수하며 CCP 탭이 포커스 상태일 때만 사용자의 마이크에 연결할 수 있는 액세스 권한이 있습니다.

다음 다이어그램은 에이전트 워크스테이션이 로컬 브라우저와 가상 데스크톱으로 구성된 방법을 보여 줍니다. WebRTC를 통해 Amazon Connect에 연결하고 VDI 연결을 통해 기업 가상 인프라에 연결합니다.

![\[에이전트 워크스테이션, 가상 데스크톱, 기업 가상 인프라 및 Amazon Connect.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/use-split-ccp.png)


## 클라우드 데스크톱
<a name="use-cloud-desktops"></a>

Citrix, Amazon WorkSpaces 또는 Omnissa 클라우드 데스크톱을 사용하는 경우 사용자 지정 CCP와 같은 기존 에이전트 사용자 인터페이스를 업데이트하거나 새로 만들어 오디오 처리를 에이전트의 로컬 디바이스로 오프로드하고 오디오를 Amazon Connect로 자동으로 리디렉션할 수 있습니다. 이렇게 하면 에이전트 경험이 더욱 간소화되고 네트워크 연결이 원활하지 않은 상황에서도 오디오 품질이 향상됩니다. 시작하려면 [Amazon Connect 오픈 소스 라이브러리](https://github.com/amazon-connect/amazon-connect-streams)를 사용하여 사용자 지정 CCP와 같은 기존 에이전트 사용자 인터페이스를 업데이트하거나 새로 만들 수 있습니다.

## VDI 환경을 설계할 때 고려해야 할 사항
<a name="considerations-vdi"></a>
+ **에이전트 위치** - 이상적으로는 에이전트가 CCP를 사용하는 위치와 VDI 호스트 위치 사이에 홉이 가능한 한 적어 왕복 시간이 최소화되어야 합니다.
+ **VDI 솔루션의 호스트 위치** - VDI 호스트 위치는 에이전트와 동일한 네트워크 세그먼트에 위치하며 내부 리소스와 에지 라우터 모두에서 홉이 최대한 적게 발생하는 것이 좋습니다. 또한 WebRTC 및 Amazon EC2 범위 엔드포인트까지 왕복 시간이 최소화되는 것이 좋습니다.
+ **네트워크** - 트래픽이 엔드포인트 사이에서 통과하는 각 홉은 장애 가능성을 높이고 대기 시간이 발생할 가능성을 추가합니다. VDI 환경은 기본 라우팅이 최적화되지 않았거나 파이프가 충분히 빠르거나 넓지 않은 경우 통화 품질 문제에 특히 취약합니다. Direct Connect 는 엣지 라우터에서 로의 통화 품질을 개선할 수 있지만 내부 라우팅 문제는 해결하지 AWS않습니다. 프라이빗 LAN/WAN을 업그레이드 또는 최적화하거나 외부 디바이스로 리디렉션해 오디오 문제를 우회해야 할 수 있습니다. 대부분의 시나리오에서, 이러한 조치가 필요하다면 CCP만 문제가 발생하는 애플리케이션은 아닙니다.
+ **전용 리소스** - 사용 가능한 에이전트 리소스가 백업 및 대용량 파일 전송과 같은 활동에 의해 영향을 받지 않도록 네트워크 및 데스크톱 수준의 전용 리소스가 권장됩니다. 리소스 경합을 방지하는 한 방법은 다른 방식으로 리소스를 사용하는 비즈니스 유닛과 리소스를 공유하는 대신 환경을 비슷하게 사용할 Amazon Connect 사용자로 데스크톱 액세스를 제한하는 것입니다.
+ **원격 연결을 통해 소프트폰 사용** - VDI 환경에서는 오디오 품질에 악영향을 초래할 수 있습니다.
**작은 정보**  
에이전트가 원격 엔드포인트에 연결하고 해당 환경에서 업무를 수행할 경우 오디오를 외부 E.164 엔드포인트로 재라우팅하거나 로컬 디바이스를 통해 미디어를 연결한 후 원격 연결을 통해 신호를 전송하는 것이 좋습니다.

# Citrix 클라우드 데스크톱을 위한 Amazon Connect 오디오 최적화
<a name="using-ccp-vdi-citrix-step-by-step"></a>

Amazon Connect를 사용하면 에이전트가 Citrix 가상 데스크톱 인프라 (VDI) 환경을 사용할 때 고품질 음성 경험을 더 쉽게 제공할 수 있습니다. 에이전트는 Citrix Workspaces와 같은 Citrix 원격 데스크톱 애플리케이션을 활용하여 오디오 처리를 에이전트의 로컬 디바이스로 오프로드하고 오디오를 Amazon Connect로 자동으로 리디렉션할 수 있습니다. 따라서 네트워크 연결이 원활하지 않을 때도 오디오 품질이 개선됩니다.

시작하려면 [Amazon Connect open source libraries](https://github.com/amazon-connect/amazon-connect-streams)를 사용하여 사용자 지정 Contact Control Panel(CCP)과 같은 기존 에이전트 사용자 인터페이스를 업데이트하거나 새로 만들 수 있습니다.

## 시스템 요구 사항
<a name="using-ccp-vdi-citrix-step-by-step-requirements"></a>

이 섹션에서는 Amazon Connect와 함께 Citrix United Communications SDK를 사용하기 위한 시스템 요구 사항을 설명합니다.
+ **Citrix Workspace 애플리케이션 버전**

  [이 설명서](https://community.citrix.com/tech-zone/learn/tech-briefs/ucssdk/)에 설명된 대로 Citrix Workspace 애플리케이션의 최신 버전을 사용하는 것이 좋습니다. 그러나 최소한 CWA 2305 이상을 사용해야 합니다.
+ **Citrix 서버 버전**

  Citrix VDA(가상 전송 에이전트) 버전은 2203 LTSR 이상인 것이 좋습니다.
+ **Citrix 서버 설정**

  Citrix UC SDK는 기본적으로 사용이 지원되지 않으므로 시스템 관리자는 다음과 같이 허용 목록 레지스트리 항목을 추가해야 합니다.
  + **키 경로:** `Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Citrix\WebSocketService`
  + **키 이름:** `ProcessWhitelist`
  + **키 유형:** `REG_MULTI_SZ`
  + **키 값:**
    + `Chrome.exe`
    + `msedge.exe`

  레지스트리가 성공적으로 구성된 후 **작업 관리자**를 사용하여 `CitrixHdxWebSocketService`를 다시 시작하여 설정을 완료하세요.  
![\[Windows의 작업 관리자를 사용하여 CitrixHdxWebSocketService를 다시 시작합니다.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/using-ccp-vdi-citrix-server-setup.png)
+ **네트워킹/방화벽 구성**
  + **Citrix 서버 구성**

    관리자는 Citrix 서버가 다음 다이어그램에 언급된 도메인에 대한 Amazon Connect TCP/443 트래픽에 액세스할 수 있도록 허용해야 합니다. 자세한 내용은 [네트워크 설정](ccp-networking.md) 단원을 참조하십시오.
  + **에이전트 시스템 구성**

    이 솔루션을 사용하려면 에이전트의 씬 클라이언트와 Amazon Connect 간의 미디어 연결이 필요합니다. 에이전트의 시스템과 Amazon Connect의 소프트폰 미디어 UDP 포트 3478 간의 트래픽을 허용하려면 [네트워크 설정](ccp-networking.md) 섹션을 참조하세요.  
![\[Citrix 서버 및 에이전트 시스템 방화벽 설정.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/using-ccp-vdi-citrix-server-firewall.png)
+ **지원되지 않는 CCP 배포**
  + 네이티브 CCP

## 통화 중에 씬 클라이언트와 Amazon Connect 간의 미디어 흐름 확인
<a name="using-ccp-vdi-citrix-confirm-media-flow"></a>
+ **작업 관리자(Windows)를 사용하여 확인**

  에이전트의 씬 클라이언트에서 **작업 관리자**를 시작하고 HDX 서비스가 실행 중인지 확인합니다. 실행 중이면 미디어가 예상대로 리디렉션되고 있음을 의미합니다.  
![\[Windows에서 작업 관리자 사용.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/using-ccp-vdi-citrix-confirm-media-flow-windows.png)

# Amazon WorkSpaces 클라우드 데스크톱용 Amazon Connect 오디오 최적화
<a name="using-ccp-vdi-workspaces"></a>

Amazon Connect는 Amazon WorkSpaces가상 데스크톱 인프라(VDI) 환경 내에서 운영되는 에이전트에 대한 고품질 음성 경험 제공을 간소화합니다. 에이전트는 WebRTC 리디렉션 기능과 함께 Amazon WorkSpaces를 활용하여 Amazon Connect 오디오 처리를 로컬 디바이스로 리디렉션할 수 있습니다. 이 접근 방식을 사용하면 까다로운 네트워크 조건에서도 오디오 품질이 향상됩니다. 이 기능을 활용하려면 다음을 수행해야 합니다.
+ 사용자 지정 연락 제어판(CCP)과 같은 기존 에이전트 사용자 인터페이스를 업데이트하거나 새로 생성하려면 [Amazon Connect 오픈 소스 라이브러리](https://github.com/amazon-connect/amazon-connect-streams)를 사용합니다.
+ WebRTC 리디렉션을 활성화하도록 Amazon WorkSpaces를 구성합니다.

## 시스템 요구 사항
<a name="using-ccp-vdi-citrix-step-by-step-requirements"></a>

이 섹션에서는 Amazon Connect with WorkSpaces WebRTC 리디렉션을 사용하기 위한 시스템 요구 사항을 설명합니다.
+ **WorkSpaces 프로토콜**

  WorkSpaces는 Amazon DCV를 사용해야 합니다. 자세한 내용은 [Amazon DCV란 무엇입니까?](https://docs.aws.amazon.com/dcv/latest/adminguide/what-is-dcv.html) 섹션을 참조하세요.
+ **클라이언트 버전**

  사용자는 WorkSpaces Web Access 또는 WorkSpaces Windows 클라이언트 버전 5.21.0 이상을 사용해야 합니다. [설정 및 설치](https://docs.aws.amazon.com/workspaces/latest/userguide/amazon-workspaces-windows-client.html#windows_setup) 지침을 완료합니다.
+ **그룹 정책**

  WebRTC 리디렉션은 DCV 그룹 정책에서 활성화해야 합니다. [DCV에 대한 그룹 정책 설정 관리](https://docs.aws.amazon.com/workspaces/latest/adminguide/group_policy.html#gp_configurations_dcv) 주제에서 **DCV에서 WebRTC 리디렉션 활성화 또는 비활성화**라는 제목의 축소된 섹션을 열고 해당 지침을 완료합니다.
+ **네트워킹/방화벽 구성**
  + **Workspace VDI 구성**

    관리자는 Workspaces가 다음 다이어그램에 언급된 도메인에 대한 Amazon Connect TCP/443 트래픽에 액세스할 수 있도록 허용해야 합니다. 자세한 내용은 [네트워크 설정](ccp-networking.md) 단원을 참조하십시오.
  + **에이전트 시스템 구성**

    이 솔루션을 사용하려면 에이전트 씬 클라이언트와 Amazon Connect 간의 미디어 연결이 필요합니다. 에이전트의 시스템과 Amazon Connect의 소프트폰 미디어 UDP 포트 3478 간의 트래픽을 허용하려면 [네트워크 설정](ccp-networking.md) 섹션을 참조하세요.  
![\[Workspace VDI 및 에이전트 시스템 방화벽을 설정합니다.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/vdi-workspaces.png)
+ **지원되지 않는 CCP 배포**
  + 네이티브 CCP

## 통화 중에 에이전트 머신과 Amazon Connect 간의 미디어 흐름 확인
<a name="using-ccp-vdi-citrix-confirm-media-flow"></a>
+ DCV WebRTC 브라우저 확장이 활성화되어 있고 준비 상태인지 확인합니다.

# Omnissa 클라우드 데스크톱을 위한 Amazon Connect 오디오 최적화
<a name="using-ccp-vdi-omnissa-step-by-step"></a>

Amazon Connect를 사용하면 에이전트가 Omnissa 가상 데스크톱 인프라(VDI) 환경을 사용할 때 고품질 음성 경험을 더 쉽게 제공할 수 있습니다. 에이전트는 Omnissa Horizon 클라이언트와 같은 Omnissa 원격 데스크톱 애플리케이션을 활용하여 오디오 처리를 에이전트의 로컬 디바이스로 오프로드하고 오디오를 Amazon Connect로 자동으로 리디렉션할 수 있습니다. 따라서 네트워크 연결이 원활하지 않을 때도 오디오 품질이 개선됩니다.

시작하려면 [Amazon Connect open source libraries](https://github.com/amazon-connect/amazon-connect-streams)를 사용하여 사용자 지정 Contact Control Panel(CCP)과 같은 기존 에이전트 사용자 인터페이스를 업데이트하거나 새로 만들 수 있습니다.

## 시스템 요구 사항
<a name="using-ccp-vdi-omnissa-step-by-step-requirements"></a>

이 섹션에서는 Amazon Connect와 함께 Omnissa Horizon SDK를 사용하기 위한 시스템 요구 사항을 설명합니다.
+ **Omnissa Horizon 클라이언트 버전**
  + 최소 필수 버전: 에이전트와 클라이언트 모두에 대해 8.15.0(Horizon 2503)
  + Omnissa는 현재 이 기능에 대해 Windows를 실행하는 에이전트 워크스테이션만 지원합니다.
  + 최신 Omnissa 클라이언트 다운로드
**중요**  
2503 릴리스는 ICE 재시작 기능을 지원하는 첫 번째 버전이 됩니다. 이전 버전에서는 이 기능을 지원하지 않습니다.
Omnissa Horizon 클라이언트 버전 2503은 [Omnissa Customer Connect](https://customerconnect.omnissa.com/downloads/info/slug/desktop_end_user_computing/omnissa_horizon_clients/8)를 통해 사용할 수 있습니다. Customer Connect에서 최신 버전을 확인합니다.
+ **Omnissa 확장 및 SDK 요구 사항**
  + Horizon WebRTC 웹 앱은 확장 및 SDK 8.15.0 이상을 모두 지원합니다.
  + 이 브라우저 확장은 Horizon Agent 내에서 WebRTC SDK에 대한 웹 앱 지원을 활성화하며 [여기](https://chromewebstore.google.com/detail/horizon-webrtc-web-app-su/emildoafpcgihdmhphelfhghioccllfi?pli=1)의 Chrome Store에서 다운로드할 수 있습니다.
+ **브라우저 지원(최신 3개 버전) **
  + Google Chrome
  + Microsoft Edge(Chromium)
+ **Omnissa 서버 설정**: Omnissa Horizon SDK는 기본적으로 활성화되어 있지 않습니다. 시스템 관리자는 Omnissa Horizon 에이전트 가상 머신 내에서 (가급적 레지스트리 편집기(regedit)를 통해) 다음 레지스트리 설정을 구성해야 합니다.
  + **레지스트리 편집기 열기**
    + Windows의 경우:
      + **Windows \$1 R**을 누릅니다.
      + **regedit**을 입력하고 **Enter** 키를 누릅니다.
  + 다음 레지스트리 경로를 생성/이동합니다.

    ```
    Key Path: Computer\HKLM\SOFTWARE\Policies\Omnissa\Horizon\WebRTCRedirSDKWebApp
    Key Names and Values:
    chrome_enabled (REG_DWORD) = 1
    edge_chrome_enabled (REG_DWORD) = 1
    enabled (REG_DWORD) = 1
    ```

    ```
    Key Path: Computer\HKLM\SOFTWARE\Policies\Omnissa\Horizon\WebRTCRedirSDKWebApp\UrlAllowList
    Key Name: https://*.connect.aws/*
    Key Name: https://*.connect.aws.a2z.com/* 
    Key Type: REG_SZ
    ```

  Omnissa 에이전트 설치 후 html5server.exe 및 wsnm.exe 프로세스는 SDK 활성화 상태에 관계없이 항상 태스크 관리자에서 실행됩니다. 다음 이미지는 태스크 관리자에서 실행되는 html5server.exe 프로세스를 보여 줍니다.  
![\[태스크 관리자, html5server.exe 프로세스가 실행 중입니다.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/omnissa-1.png)

  다음 이미지는 태스크 관리자에서 실행되는 wsnm.exe 프로세스를 보여 줍니다.  
![\[태스크 관리자, wsnm.exe 프로세스가 실행 중입니다.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/omnissa-2.png)
+ **문제 해결**
  + Omnissa 로그 파일은 다음에서 찾을 수 있습니다.

    ` %tmp%\omnissa-{username}\horizon-html5Client-{pid}.log`
**참고**  
`{pid}`는 태스크 관리자에서 찾을 수 있는 Horizon 클라이언트 'horizon-protocol.exe' 프로세스 ID를 나타냅니다.
  + 향상된 로깅을 위한 레지스트리 설정

    문제 해결을 위해 세부 로깅을 활성화하려면 다음 레지스트리 항목을 추가합니다.

    ```
    HKEY_LOCAL_MACHINE\SOFTWARE\Omnissa\Horizon\Html5mmr: - "html5mmr.log.noThrottle" = dword:00000001
    ```

    ```
    HKEY_LOCAL_MACHINE\SOFTWARE\Omnissa\Horizon\Html5mmr\WebrtcRedir:
     - "html5mmr.log.webrtc.allowFullText" = dword:00000001
     - "html5mmr.log.webrtc.allowThrottle" = dword:00000000
     - "html5mmr.log.webrtc.sharedlib.internal" = dword:00000001
     - "html5mmr.log.webrtc.sharedlib.network" = dword:00000001
     - "html5mmr.log.webrtc.sharedlib.media" = dword:00000001
     - "html5mmr.log.webrtc.shim.logToConsole" = dword:00000001
     - "html5mmr.log.webrtc.sharedlib.signal" = dword:00000001
     - "html5mmr.log.noThrottle" = dword:00000001
     - "html5mmr.log.webrtc.tracelevel" = dword:00000001
    ```

    이러한 레지스트리 설정을 사용하면 세부 로깅을 활성화하여 Omnissa VDI 통합 문제를 진단하는 데 도움이 될 수 있습니다.
+ **네트워킹/방화벽 구성**
  + **Omnissa VDI 구성**

    관리자는 Omnissa 서버가 다음 다이어그램에 언급된 도메인에 대한 Amazon Connect TCP/443 트래픽에 액세스할 수 있도록 허용해야 합니다. 이 설정에 대해서는 [네트워크 설정](ccp-networking.md) 주제를 참조하세요.
  + **에이전트 워크스테이션 구성**

    이 솔루션을 사용하려면 에이전트 씬 클라이언트와 Amazon Connect 간의 미디어 연결이 필요합니다. 에이전트의 시스템과 Amazon Connect의 소프트폰 미디어 UDP 포트 3478 간의 트래픽을 허용하려면 [네트워크 설정](ccp-networking.md) 섹션을 참조하세요.

     다음 다이어그램은 UDP 포트 3478의 사용을 보여 줍니다.  
![\[UDP 포트 3478 사용을 보여 주는 다이어그램입니다.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/omnissa-3.png)

## 사용자 지정 CCP에서 필요한 코드 변경
<a name="omnissa-required-initccp-changes"></a>

Omnissa VDI 환경에서 오디오 최적화를 활성화하려면 다음과 같은 변경 사항으로 사용자 지정 CCP를 구성해야 합니다.

1. CCP 초기화 전에 다음 코드 조각을 추가합니다. CCP의 창 식별을 관리하는 데 도움이 되며, 특히 에이전트가 여러 창을 열었을 때 중요합니다. 활성 CCP 창을 식별하는 데 도움이 되는 타임스탬프와 '활성 소프트폰 탭' 마커를 추가합니다.

   ```
   const ACTIVE_SOFTPHONE_TAB = "Active Softphone Tab";
   
       window.addEventListener('message', (event) => {
   
           if (event.data.type === 'get_horizon_window_title') {
               let title = document.title;
              const currentTime = new Date();
               if (!title.endsWith(ACTIVE_SOFTPHONE_TAB)) {
                   title += ` ${currentTime.getHours()}${currentTime.getMinutes()}${currentTime.getSeconds()} ` + ACTIVE_SOFTPHONE_TAB;
                   document.title += ` ${currentTime.getHours()}${currentTime.getMinutes()}${currentTime.getSeconds()} ` + ACTIVE_SOFTPHONE_TAB;
               }
   
               event.source.postMessage(
                   { type: 'horizon_window_title_response', title: title, source: 'parent' },
                   event.origin
               );
           }
       });
   ```

1. initCCP 구성에 VDI 플랫폼 파라미터를 추가합니다. 오디오 리디렉션을 활성화하기 위한 것입니다.

   ```
   softphone: {
       allowFramedSoftphone: true,  
       VDIPlatform: "OMNISSA"
   }
   ```
**중요**  
`VDIPlatform: "OMNISSA"`를 설정하면 Omnissa 오디오 최적화에 실패할 경우 CCP가 표준 웹 브라우저 오디오로 폴백되지 않습니다. 이는 다음을 의미합니다.  
에이전트가 Omnissa VM 외부의 CCP에 액세스하는 경우 통화가 실패합니다.
CCP 개발자는 이 파라미터를 설정하기 전에 CCP가 Omnissa VM 내에서 실행 중인지 확인해야 합니다.
**구현 옵션**:  
Omnissa 및 비 Omnissa 액세스에 대해 별도의 URL 경로를 사용합니다.
URL 파라미터를 사용하여 환경을 결정합니다.
API를 구현하여 사용자 컨텍스트에 따라 올바른 구성을 결정합니다.

## 통화 중에 씬 클라이언트와 Amazon Connect 간의 미디어 흐름을 확인하는 방법
<a name="verify-omnissa"></a>

1. Omnissa Horizon WebRTC 브라우저 확장이 활성화되어 있고 준비 상태인지 확인합니다.

1. 브라우저 도구 모음에서 확장 아이콘을 확인합니다.

   1. 파란색 아이콘은 준비 상태와 적절한 기능을 나타냅니다.

   1. 회색 아이콘은 준비되지 않음 상태 및 잠재적 문제를 나타냅니다.

   다음 이미지는 Omnissa Horizon WebRTC 브라우저 확장이 활성화되고 준비 상태일 때의 모습을 보여 줍니다.  
![\[활성화된 경우의 Omnissa Horizon WebRTC 브라우저 확장입니다.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/omnissa-4.png)

1. 프로세스 상태 확인:

   1. 태스크 관리자를 엽니다.

   1. html5server.exe 및 wsnm.exe 프로세스가 실행 중인지 확인합니다.

   1. 통화 중에 이러한 프로세스가 계속 실행되고 있는지 확인합니다. 두 프로세스 중 하나가 충돌하면 VDI 기능이 실패합니다.

1. 오디오 흐름 테스트:

   1. 테스트 통화 수행

   1. VM의 브라우저에서 마이크 액세스를 비활성화하여 오디오 최적화 확인 - 오디오가 로컬에서 처리되므로 통화가 계속 작동해야 함

   1. 오디오 지연 시간 또는 품질 문제가 있는지 확인.

1. Wireshark를 사용하여 다음을 확인합니다.

   Wireshark는 무료 오픈 소스 네트워크 패킷 분석기입니다. 자세한 내용은 Wireshark [웹사이트](https://www.wireshark.org/)를 참조하세요.

   1. [여기](https://www.wireshark.org/download.html)에서 Wireshark를 다운로드합니다.

   1. Wireshark를 설치한 후 씬 클라이언트에서 Wireshark를 열고 로컬 네트워크 모니터링을 시작합니다.

   1. 통화에 연결하고 상단의 필터 표시줄에 다음 필터를 입력합니다.

      ```
      (udp.srcport == 3478 or udp.dstport == 3478) and ((ip.dst_host = "15.193.6.0/24"))
      ```

   1. 에이전트의 시스템과 Amazon Connect 간의 미디어 패킷 흐름을 볼 수 있는지 확인합니다.

   1. 패킷이 표시되지 않는 경우:
      + 네트워크 연결 및 방화벽 규칙을 확인합니다.
      + 오디오 최적화 설정을 확인합니다.
**참고**  
위에 표시된 IP 범위는 미국 동부(버지니아 북부) AWS 리전에 대한 것입니다. 다른 리전의 IP 범위는 [네트워크 설정](ccp-networking.md) 섹션을 참조하세요.  
다음 이미지는 해당 IP 범위를 보여 줍니다.  

![\[활성화된 경우의 Omnissa Horizon WebRTC 브라우저 확장입니다.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/omnissa-5.png)


1. 콘솔 로깅

   1. Windows의 경우: 브라우저 개발자 도구(F12)를 엽니다.

   1. Omnissa 초기화를 확인하는 WebRTC 관련 메시지인 R`TC.js is using OmnissaVDIStrategy`를 찾습니다.

      다음은 확인 메시지의 예제입니다.

      ```
      {
              "component": "softphone",
              "level": "LOG",
              "text": " RTC.js is using OmnissaVDIStrategy",
              "time": "2025-04-03T20:47:40.460Z",
              "exception": null,
              "objects": [],
              "line": 64,
              "agentResourceId": "20c6b5a3-259e-4e18-a8a7-b962d54a6344",
              "loggerId": "1743713238678-pz6yp1q4n9s",
              "contextLayer": "CRM"
          },
      ```

## 제한 사항
<a name="omnissa-limitations"></a>

다음 CCP 구성은 지원되지 않습니다.
+ 네이티브 CCP: 네이티브 CCP에 대한 오디오 최적화는 지원되지 않습니다. 미디어는 동일한 방식을 사용하여 처리된 통화에 대해 VM 내의 브라우저를 통해 계속 흐름을 진행합니다.
+ Salesforce CTI 어댑터: VDI 플랫폼 감지를 지원하지 않으므로 클라이언트 측 오디오 처리를 최적화하는 대신 VM의 브라우저를 통해 미디어 라우팅이 이루어집니다.

# 에이전트 워크스페이스를 사용하여 Citrix, Amazon WorkSpaces 및 Omnissa 클라우드 데스크톱용 오디오 최적화
<a name="optimize-audio-cdd"></a>

Amazon Connect 에이전트 워크스페이스를 사용하여 Amazon WorkSpaces, Citrix 및 Omnissa Virtual Desktop Infrastructure(VDI) 환경에서 고품질 음성 경험 제공을 간소화할 수 있습니다.

Amazon Connect는 [Amazon WorkSpaces](using-ccp-vdi-workspaces.md), [Citrix](using-ccp-vdi-citrix-step-by-step.md) 및 [Omnissa](using-ccp-vdi-omnissa-step-by-step.md) 클라우드 데스크톱에 대한 오디오 최적화를 지원합니다. 이 최적화는 에이전트의 로컬 데스크톱에서 Amazon Connect로 미디어를 리디렉션합니다. 네트워크 홉을 줄여 에이전트 경험을 간소화하고 오디오 품질을 개선합니다. 에이전트는 에이전트 Workspace에서 이러한 오디오 최적화를 활용할 수 있습니다.

## 중요한 참고 사항
<a name="optimize-audio-cdd-important-notes"></a>
+ SSO가 아닌 사용자의 경우 에이전트가 Amazon Connect 관리자 웹 사이트에서 에이전트 워크스페이스로 이동하는 경우 URL에 이미 추가된 참조자에 대한 쿼리 파라미터가 있습니다. URL 형식은 `https://your-instance-url/agent-app-v2?referrer=admin`입니다. VDI 플랫폼 쿼리 파라미터를 구성하려면 URL에서 참조자 파라미터를 제거합니다(예: 메모장을 사용하여 URL을 편집할 수 있음). VDI 플랫폼 파라미터를 URL의 `/agent-app-v2` 경로에 직접 추가합니다.
+ VDI 환경 내에서 오디오 최적화를 위해 항상 에이전트 Workspace에 북마크된 URL을 사용합니다.
+ 실제 VDI 환경 내에서 에이전트 Workspace를 사용하지 않는 경우 VDI 쿼리 파라미터를 추가하지 마세요.
+ 에이전트는 VDI 환경 내에서 진행 중인 연락처 동안 하나의 미디어 디바이스를 사용하는 것이 좋습니다. 미디어 디바이스 정보는 연락처 시작 시 릴레이되므로 에이전트가 진행 중인 연락처 중에 미디어 디바이스를 전환하려는 경우 업데이트된 디바이스의 오디오에 액세스할 수 없습니다.

## 에이전트 워크스페이스에서 오디오 최적화를 사용하는 방법
<a name="howto-optimize-audio-cdd"></a>

에이전트 워크스페이스에서 오디오 최적화를 사용하려면 URL에 에이전트 워크스페이스가 사용되는 VDI 환경의 값이 포함된 쿼리 파라미터가 있어야 합니다. 이 프로세스는 특정 VDI 환경에서 에이전트가 사용 중인 로컬 디바이스로의 통화에 대해 WebRTC 리디렉션을 수행하도록 연락 제어판(CCP)에 신호를 보냅니다.

VDI 환경에 쿼리 파라미터를 사용하려면 다음 단계를 완료하세요.

### SSO 기반 로그인 없이 사용
<a name="without-sso"></a>

1. Amazon Connect 에이전트 워크스페이스로 이동하여 에이전트 워크스페이스의 URL을 메모장에 복사합니다.

1. 키 `VDIPlatform` 및 해당 VDI 환경과 동일한 값을 사용하여 쿼리 파라미터를 추가합니다. 예제:

   1. Citrix 클라우드 데스크톱의 경우 쿼리 파라미터의 값은 `CITRIX`입니다. 다음 코드는 전체 URL의 예제를 보여 줍니다.
      + `https://your-instance-url/agent-app-v2?VDIPlatform=CITRIX`

   1. Amazon WorkSpaces 클라우드 데스크톱의 경우 쿼리 파라미터 값은 `AWS_WORKSPACE`입니다. 다음 코드는 전체 URL의 예제를 보여 줍니다.
      + `https://your-instance-url/agent-app-v2?VDIPlatform=AWS_WORKSPACE`

   1. Omnissa 클라우드 데스크톱의 경우 쿼리 파라미터의 값은 `OMNISSA`입니다. 다음 코드는 전체 URL의 예제를 보여 줍니다.
      + `https://your-instance-url/agent-app-v2?VDIPlatform=OMNISSA`

1. URL을 복사하여 에이전트의 브라우저에 붙여넣습니다.

1. 모든 에이전트에 대해 이 URL을 북마크하는 것이 좋습니다. 이렇게 하면 에이전트가 북마크된 링크를 클릭하기만 하면 나중에 쉽게 액세스할 수 있습니다.

### SSO 기반 로그인과 함께 사용
<a name="with-sso"></a>

1. SSO를 사용하여 Amazon Connect 에이전트 워크스페이스에 직접 로그인하는 경우 SSO 설정의 릴레이 상태 URL을 변경하여 VDI 쿼리 파라미터를 추가해야 합니다. 이렇게 하려면 다음 단계를 완료하세요.

   1. ID 제공업체(IdP)의 릴레이 상태에서 에이전트 Workspace에 액세스하는 데 사용하는 릴레이 상태를 복사하여 붙여넣습니다.

   1. [릴레이 상태 URL 예제](configure-saml.md#destination-relay)를 참조하세요. 예제에서는 ``%2Fagent-app-v2``가 대상입니다.

   1. 적절한 값이 있는 `VDIPlatform` 파라미터를 이 릴레이 상태에 추가합니다. 위 링크의 예제를 사용하면 Amazon Connect 에이전트 Workspace의 전체 릴레이 상태 URL은 다음과 같습니다.

      1. Citrix Desktop의 경우

         `https://us-east-1.console.aws.amazon.com/connect/federate/instance-id?destination=%2Fagent-app-v2?VDIPlatform=CITRIX`

      1. Amazon WorkSpaces의 경우

         `https://us-east-1.console.aws.amazon.com/connect/federate/instance-id?destination=%2Fagent-app-v2?VDIPlatform=AWS_WORKSPACE`

      1. Omnissa의 경우

         `https://us-east-1.console.aws.amazon.com/connect/federate/instance-id?destination=%2Fagent-app-v2?VDIPlatform=OMNISSA`

1. 릴레이 상태 URL`VDIPlatform`에서를 설정하면 사용 중인 특정 VDI 환경에 대한 에이전트 워크스페이스의 오디오 최적화가 자동으로 설정됩니다.

   1. IdP에서 로그인하고 ``VDIPlatform``이 쿼리 파라미터로 존재하는지 확인합니다.

# 콜센터 에이전트가 연락 제어판(CCP)에 연결하는 방법
<a name="ccp-connectivity"></a>

에이전트가 로그인하면 CCP는 AWS ipranges.json 파일에 나열된 Amazon EC2 신호 엔드포인트, 미디어용 Amazon Connect, 이미지와 같은 웹 아티팩트용 CloudFront에 연결을 시도합니다. 에이전트가 로그아웃하거나 브라우저가 닫히면, 에이전트가 다음 번에 로그인할 때 엔드포인트가 다시 선택됩니다. Amazon EC2 또는 Amazon Connect 연결이 실패할 경우 CCP에 오류가 표시됩니다. CloudFront 연결이 실패할 경우 버튼 또는 아이콘 같은 웹 요소, 심지어 페이지 자체도 제대로 로드되지 않습니다.

**참고**  
로그인하는 동안 **세션 만료됨** 메시지가 표시되는 경우 세션 토큰을 새로 고치기만 하면 문제가 해결될 수 있습니다. ID 제공업체로 이동하여 로그인합니다. Amazon Connect 페이지를 새로 고칩니다. 이 메시지가 계속 표시되면 IT 팀에 문의하세요.

**아웃바운드 통화**
+ 아웃바운드 통화가 배치되면 이벤트 신호가 Amazon EC2 엔드포인트로 전송되고, 그러면 Amazon Connect와 통신하여 전화를 겁니다. 다이얼 시도가 성공하면 에이전트가 연결되고, 그러면 통화가 Amazon Connect 엔드포인트에 고정됩니다. 외부 전송 또는 컨퍼런스도 통화가 끊어질 때까지 이 앵커를 사용합니다. 고정은 PSTN 지연 시간을 단축하는 데 도움이 될 수 있습니다.

**인바운드 통화**
+ 인바운드 통화가 수신되면 통화가 Amazon Connect 엔드포인트에 고정됩니다. 외부 전송 또는 컨퍼런스도 통화가 끊어질 때까지 이 앵커를 사용합니다.
+ 에이전트가 사용 가능해지면 통화가 새 Amazon EC2 연결을 통해 에이전트의 브라우저로 푸시됩니다.
+ 에이전트가 통화를 수락하거나 외부 디바이스가 응답했거나 CCP가 통화 수신이 가능한 것으로 판단하는 경우 에이전트로의 통화 미디어를 위한 Amazon Connect 연결이 설정됩니다.

**전송된 통화:**
+ 통화가 전송되면 아웃바운드 통화를 지정된 전송 대상으로 배치하라고 신호하는 전송 이벤트가 Amazon EC2로 전송되고, 그러면 Amazon Connect와 통신하여 전화를 겁니다.
+ 전화가 걸리면 에이전트가 연결되고 통화가 에이전트의 기존 Amazon Connect 엔드포인트로 고정됩니다. 외부 전송 또는 컨퍼런스도 통화가 끊어질 때까지 이 앵커를 사용합니다.
+ 에이전트가 연결된 통화를 끊을 경우 에이전트의 통화 연결이 종료되지만, Amazon Connect는 수신자가 끊을 때까지 Amazon Connect 고정 지점에서 통화를 유지합니다. 통화가 끊어지면 고객 응대 레코드 및 연결된 녹음이 생성되고 해당 통화에 대해 사용 가능해집니다.

**누락된 통화:**
+ 통화가 에이전트 측에서 대기 중일 경우 에이전트가 사용 가능해지고 통화가 성공적으로 해당 에이전트로 라우팅될 때까지 고객 대기열 흐름 로직이 사용됩니다.
+ 에이전트가 통화를 수락하지 않을 경우 에이전트가 누락된 통화 상태로 전환되고 해당 에이전트 또는 고객 센터 관리자가 상태를 다시 사용 가능으로 전환할 때까지 전화를 받을 수 없습니다. 통화가 에이전트를 기다리는 동안에는 발신자에게 벨소리가 들리지 않으며 고객 대기열 흐름 로직에 정의된 대로 에이전트와 연결될 때까지 대기 상태를 유지합니다.
+ 에이전트가 [교차 채널 동시성](channels-and-concurrency.md)을 지원하도록 구성된 경우 다른 채널의 다른 고객 응대를 라우팅하려면 먼저 누락된 고객 응대를 지워야 합니다. 예를 들어 음성과 채팅을 동시에 처리하도록 구성되어 있는데 채팅을 놓친 경우 다른 음성 또는 채팅 고객 응대를 라우팅하기 전에 해당 고객 응대를 지워야 합니다.

**패닉 로그아웃:**
+ CCP가 실행되는 브라우저 창이 닫힐 경우 통화가 연결 상태를 유지하지만, 브라우저를 열고 다시 로그인하더라도 미디어 연결을 다시 설정할 수 없습니다. 여전히 통화를 전송 또는 종료할 수 있지만, 에이전트와 발신자 사이에 오디오 경로가 설정되지 않습니다.

# 연락 제어판(CCP)이 WebRTC를 활용하는 방법
<a name="ccp-leverages-webrtc"></a>

이 고급 주제는 연락 제어판(CCP)이 음성 통화를 전달하는 방법에 관심이 있는 IT 관리자를 위한 것입니다. 또한 몇 가지 네트워킹 세부 정보도 제공합니다.

CCP는 WebRTC를 고객 센터 에이전트와 고객 간의 실시간 커뮤니케이션을 지원하는 기본 기술로 사용합니다. 이를 통해 에이전트는 웹 브라우저에서 직접 인바운드 및 아웃바운드 통화와 화상 회의를 관리할 수 있습니다.

**Topics**
+ [WebRTC란 무엇인가요?](#whatis-webrtc)
+ [용어](#ccp-leverages-webrtc-terminology)
+ [WebRTC 작동 방식](#how-webrtc-works)
+ [STUN, TURN, ICE가 함께 작동하는 방식](#how-stun-turn-ice-works)
+ [모범 사례](#webrtc-ccp-bp)

## WebRTC란 무엇인가요?
<a name="whatis-webrtc"></a>

WebRTC는 간단한 API를 통해 브라우저와 모바일 애플리케이션 간 실시간 커뮤니케이션(RTC)을 가능하게 하는 개방형 기술 사양입니다.

WebRTC는 피어링 기술을 사용하여 연결된 피어 간의 실시간 데이터 교환을 수행합니다. 사람 간 상호작용에 필요한 저지연 미디어 스트리밍을 제공합니다.

WebRTC 사양에는 P2P 연결 설정을 위한 [Interactive Connectivity Establishment](https://www.ietf.org/rfc/rfc5245.txt), [Traversal Using Relay around NAT(TURN)](https://datatracker.ietf.org/doc/html/rfc5766), [Session Traversal Utilities for NAT(STUN)](https://www.ietf.org/rfc/rfc5389.txt) 등의 IETF 프로토콜 세트가 포함되어 있습니다. 이는 안정적이고 안전한 실시간 미디어 및 데이터 스트리밍을 위한 프로토콜 사양에 추가됩니다.

Amazon Connect는 WebRTC를 사용하기 때문에 실시간 커뮤니케이션을 위해 복잡한 인프라를 구축하고 유지 관리할 필요가 없습니다. 이를 통해 Amazon Connect를 통해 옴니채널 고객 참여 솔루션을 신속하게 배포하는 동시에 WebRTC가 제공하는 짧은 지연 시간, 고품질 미디어 스트리밍 및 안전한 P2P 연결의 이점을 누릴 수 있습니다.

## 용어
<a name="ccp-leverages-webrtc-terminology"></a>

NAT을 위한 세션 순회 유틸리티 (STUN)  
퍼블릭 주소를 검색하고 라우터에서 피어와의 직접 연결을 방해하는 제한 사항을 확인하는 데 사용되는 프로토콜입니다.  
STUN 엔드포인트를 관리하는 구성 요소입니다. 이 엔드포인트는 애플리케이션이 NAT 또는 방화벽 뒤에 위치할 때 퍼블릭 IP 주소를 검색할 수 있도록 합니다.

NAT 주변의 릴레이를 사용한 순회 (TURN)  
TURN 서버와의 연결을 열고 해당 서버를 통해 모든 정보를 중계하여 대칭형 NAT 제한을 우회하는 데 사용되는 서버입니다.  
TURN 엔드포인트를 관리하는 구성 요소입니다. 이 엔드포인트는 애플리케이션이 미디어를 P2P로 스트리밍할 수 없을 때 클라우드를 사용한 미디어 릴레이를 지원합니다.

세션 설명 프로토콜 (SDP)  
해상도, 형식, 코덱, 암호화 등 연결의 멀티미디어 콘텐츠를 설명하는 표준으로, 이를 통해 데이터 전송 시 두 피어가 서로를 알아볼 수 있습니다.

SDP 제안  
세션을 생성하거나 수정하기 위해 에이전트가 보내는 SDP 메시지로, 세션 설명을 생성합니다. 원하는 미디어 커뮤니케이션의 측면을 설명합니다.

SDP 응답  
제안자로부터 받은 제안에 대한 응답으로 응답자가 보내는 SDP 메시지입니다. 응답은 수락하는 측면을 나타냅니다. 가령, 제안에 포함된 모든 오디오 및 비디오 스트림의 수락 여부를 나타냅니다.

상호 연결 확립(ICE)  
웹 브라우저를 피어와 연결할 수 있도록 하는 프레임워크입니다.

ICE 후보  
송신 피어가 통신에 사용할 수 있는 방법입니다.

피어  
WebRTC와의 실시간 양방향 커뮤니케이션을 위해 구성된 모든 디바이스 또는 애플리케이션(예: 모바일 또는 웹 애플리케이션)입니다.

신호 전송  
신호 구성 요소는 애플리케이션이 P2P 라이브 미디어 스트리밍을 위해 서로 안전하게 연결할 수 있도록 하는 WebRTC 신호 엔드포인트를 관리합니다.

## WebRTC 작동 방식
<a name="how-webrtc-works"></a>

WebRTC는 브라우저용 JavaScript 세션 설정 프로토콜(JSEP) 또는 WebSockets/XMPP 기반 사용자 지정 프로토콜과 같은 신호 프로토콜을 사용하여 커뮤니케이션 세션을 시작하고 관리합니다. 또한 오디오 및 비디오 데이터를 인코딩 및 디코딩하기 위한 코덱, 미디어 스트림을 암호화하기 위한 보안 실시간 전송 프로토콜(SRTP)을 사용하여 프라이버시를 보장하고, ICE, STUN 및 TURN 프로토콜을 사용하여 NAT 게이트웨이 및 방화벽 간에 P2P 연결을 탐색하고 설정합니다.

## STUN, TURN, ICE가 함께 작동하는 방식
<a name="how-stun-turn-ice-works"></a>

양방향 미디어 스트림(예: 음성 통화)에 WebRTC를 사용하여 에이전트 연락 제어판(CCP)이 피어 A이고 Amazon Connect가 피어 B인 시나리오를 살펴보겠습니다.

다음은 에이전트 CCP가 Amazon Connect와의 연결을 설정하려고 할 때 발생하는 상황입니다.

1. 에이전트 CCP는 사용할 코덱, 오디오 또는 비디오 세션 등 원하는 세션에 대한 정보가 포함된 SDP 제안을 생성합니다. 또한 Amazon Connect가 에이전트 CCP에 연결하기 위해 시도할 수 있는 IP/포트 쌍인 ICE 후보 목록도 포함되어 있습니다.

1. ICE 후보를 수집하기 위해 CCP는 STUN 서버에 일련의 요청을 수행합니다. STUN 서버는 요청을 보낸 퍼블릭 IP 주소와 포트 쌍을 반환합니다. 또한 에이전트 CCP는 미디어 릴레이 주소를 가져오기 위해 Amazon Connect의 TURN 서비스에 대한 TURN 채널을 생성합니다. 이 릴레이 주소는 에이전트 CCP와 Amazon Connect의 다른 미디어 서비스 간에 패킷을 전달할 수 있는 IP/포트 쌍입니다. 에이전트 CCP는 각 IP/포트 쌍을 ICE 후보 목록에 추가합니다. 다음으로 에이전트 CCP는 WebSocket을 통한 신호 채널로 Amazon Connect에 SDP 제안을 보냅니다.

1. Amazon Connect는 동일한 프로세스에 따라 SDP 답변을 생성합니다. 즉, ICE 후보를 수집하여 SDP 답변과 함께 WebSocket을 통해 에이전트 CCP에 전송합니다. SDP를 교환한 후 에이전트 CCP와 Amazon Connect는 일련의 연결 검사를 수행합니다. 각 측은 다른 측의 SDP에서 후보 IP/포트 쌍을 가져와 STUN 요청을 전송합니다. 응답이 수신되면 해당 IP/포트 쌍은 유효한 ICE 후보 쌍으로 표시됩니다.

1.  모든 IP/포트 쌍에 대한 연결 검사가 완료되면 에이전트 CCP와 Amazon Connect가 협상하여 미디어 스트림에 사용할 유효한 쌍 중 하나를 결정합니다.

다음 다이어그램은 WebRTC를 사용한 CCP와 Amazon Connect 간의 커뮤니케이션을 보여 줍니다.

![\[WebRTC를 사용한 CCP와 Amazon Connect 간의 커뮤니케이션 흐름입니다.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/webrtc-diagram.png)


## 모범 사례
<a name="webrtc-ccp-bp"></a>
+ 가장 안정적이고 최상의 오디오 경험을 위해서는 에이전트 워크스테이션과 AWS 간의 미디어 트래픽이 직접 교환되고 VPN 또는 기타 네트워크 가속기 홉을 통과하지 않도록 하는 것이 좋습니다.
+ 비즈니스가 WebRTC 연결을 성공적으로 촉진하고 오류 동작을 완화할 수 있도록 포트 3478(SEND/RECEIVE)에서 수신 UDP 트래픽을 허용 목록에 추가해야 합니다. 자세한 내용은 [옵션 1(권장): Amazon EC2 및 CloudFront IP 범위 요구 사항을 도메인 허용 목록으로 바꾸기](ccp-networking.md#option1) 단원을 참조하십시오. 표에서 `TurnNlb-*.elb.region.amazonaws.com`의 행을 참조하세요.
+ [옵션 2(권장하지 않음): IP 주소 범위 허용](ccp-networking.md#option2)을 사용하는 경우 오류 동작을 완화하려면 다음을 수행하는 것이 좋습니다.
  + Amazon Connect에 대해 비즈니스에서 허용 목록에 있는 IP 범위를 모니터링합니다.
  + IP 범위 내의 변경 사항을 모니터링합니다.
  + 목록에 새로 추가된 항목에는 SEND/RECEIVE 트래픽에 대한 3478(UDP) 포트 및 프로토콜 허용 목록이 포함되어야 합니다.
+ 프로덕션으로 이동하기 전에 다음을 수행합니다.
  + [Amazon Connect 엔드포인트 연결 테스트 도구](check-connectivity-tool.md)를 사용하여 WebRTC 연결을 테스트합니다. 이 도구는 에이전트 스테이션에서 Amazon Connect WebRTC 미디어 엔드포인트에 액세스할 수 있는지 확인하는 데 도움이 됩니다.
  + [네트워킹 환경](network-ts.md#investigate-ndc) 및 방화벽 업데이트, 엣지 라우터, VPN과 같은 온프레미스 네트워킹 아키텍처의 변경 사항을 테스트하고 추적합니다.
+ 상태 비저장 방화벽을 사용하는 경우 [상태 비저장 방화벽](ccp-networking.md#stateless-firewalls) 섹션에 설명된 대로 허용 목록에 임시 포트 범위를 추가했는지 확인합니다.

# Amazon Connect에서 통합 애플리케이션에 허용 목록 사용
<a name="app-integration"></a>

특정 인스턴스에 대한 CCP를 포함하는 모든 도메인은 인스턴스에 대한 도메인 간 액세스가 명시적으로 허용되어야 합니다. 예를 들어, Salesforce와 통합하려면 Salesforce Visualforce 도메인을 허용 목록에 넣어야 합니다.

**도메인 URL을 허용하려면**

1. [https://console.aws.amazon.com/connect/](https://console.aws.amazon.com/connect/)에서 Amazon Connect 콘솔을 엽니다.

1. **인스턴스 별칭**에서 인스턴스 이름을 선택합니다.

1. 탐색 창에서 **승인된 오리진**을 선택합니다.

1. **오리진 추가**를 선택합니다.

1. URL을 입력하고 **추가**를 선택합니다.

**참고**  
Amazon Connect가 다른 앱에 내장된 경우, 사용자가 Amazon Connect를 닫았다가 다시 열고 로그인하면 **세션 만료됨** 오류 메시지가 표시될 수 있습니다.  
로그인하는 동안 **세션 만료됨** 메시지가 표시되는 경우 세션 토큰을 새로 고치기만 하면 문제가 해결될 수 있습니다. ID 제공업체로 이동하여 로그인합니다. Amazon Connect 페이지를 새로 고칩니다. 이 메시지가 계속 표시되면 IT 팀에 문의하세요.

# Amazon Connect 도메인 업데이트
<a name="update-your-connect-domain"></a>

2021년 3월 31일 이전에 생성된 Amazon Connect 인스턴스에는 다음과 같은 도메인이 할당되었습니다.
+  https://*your-instance-alias*.**my.connect.aws/**

이러한 도메인 중 하나가 있는 경우 즉시 변경하는 것이 좋습니다. 다음과 같이 변경하세요.
+ https://*your-instance-alias*.**my.connect.aws/**

가까운 시일 내에 긴급 액세스 URL을 포함하여 AWS 콘솔에 표시되는 나머지 이전 도메인을 새 URL로 자동으로 변경할 계획입니다.
+ 이전 도메인이 있는 URL에 액세스하려고 하면 새 도메인으로 자동으로 리디렉션됩니다.
+  사용자 지정 코드, 커넥터 또는 방화벽이 있는 경우 Amazon Connect URL에 대한 모든 참조를 이전 도메인에서 새 도메인으로 업데이트하는 것은 사용자의 책임입니다.
+ 이전 도메인에서 새 도메인으로 자동 리디렉션은 사용자가 여전히 이전 즐겨찾기를 클릭하는 등 실수로 누락된 참조에만 해당됩니다.

**이전 도메인 이름을 자동으로 변경할 때(즉, 이전 도메인에서 새 도메인으로 트래픽을 리디렉션할 때) 대비하는 데 도움이 되도록 이 주제의 단계를 수행합니다**.

에를 들어, 이전 링크가 다음과 같은 경우:
+ https://*examplecorp*.**awsapps.com/connect/**

**다음으로 변경하세요.**
+ https://*examplecorp*.**my.connect.aws/**

방화벽, SAML 또는 Salesforce와 같은 기타 커넥터를 사용하는 경우 이 주제를 계속 읽습니다. 이 항목에서는 새 도메인으로 마이그레이션할 때 고려해야 할 정보를 제공합니다.

**Topics**
+ [사용자 지정 코드 및 통합](#new-domain-custom)
+ [방화벽 허용 목록](#new-domain-allow-list)
+ [Amazon Connect 액세스 URL 및 비상 로그인 정보](#about-access-url)
+ [개인 설정](#new-domain-settings)
+ [전송 계층 보안(TLS)](#new-domain-tls)

## 사용자 지정 코드 및 통합
<a name="new-domain-custom"></a>

Amazon Connect와 관련된 사용자 지정이 있는 경우 해당 코드를 검토하고 이전 도메인에 대한 하드 코딩된 참조를 새 도메인으로 바꿉니다. 예를 들어 사용자 지정 고객 응대 제어판(CCP) 통합이 있는 경우 포함된 URL을 사용하는 경우가 많습니다. 다음은 통합의 기타 유형을 업데이트하기 위한 팁입니다.

### Active Directory
<a name="new-domain-ad"></a>

Active Directory를 사용하여 자격 증명을 관리하고 [Amazon Connect에서 관리하거나 고객이 관리하는](connect-identity-management.md) 인스턴스가 있는 경우 [ccpUrl](https://github.com/amazon-connect/amazon-connect-streams#connectcoreinitccp)을 새 도메인으로 업데이트하세요. 다음에 사용자가 CCP에 액세스하면 새 도메인에 로그인하라는 메시지가 표시됩니다 (한 번만).

### SAML 2.0
<a name="new-domain-saml"></a>

SAML 2.0을 사용하여 자격 증명을 관리하는 경우 다음 단계를 수행하세요.
+ [Amazon Connect 스트림](https://github.com/amazon-connect/amazon-connect-streams#connectcoreinitccp)의 `ccpUrl`을 새 도메인 `your-instance-alias.my.connect.aws/ccp-v2`로 업데이트합니다.
+ 자격 증명 공급자의 릴레이 상태를 구성할 때는 `new_domain=true`를 사용하여 `loginUrl`을 업데이트합니다.
+ URL의 대상 및 new\$1domain에 [URL 인코딩](https://en.wikipedia.org/wiki/Percent-encoding)을 사용해야 합니다.

SAML로 설정된 이전 인스턴스가 있는 경우 다음 단계를 수행하세요.

1. `loginUrl`에 `destination=%2Fconnect%2Fyour-destination-endpoint`가 포함된 경우 새 도메인 대상에서 `%2Fconnect` 엔드포인트 접두사를 제거합니다.

1. `destination=%2Fyour-destination-endpoint` 이전 또는 이후에 `new_domain=true`를 추가합니다. `&` 기호로 구분해야 합니다.

1. `loginUrl`에 대상 또는 기타 파라미터가 포함되지 않은 경우 릴레이 상태 URL 뒤에 `?new_domain=true`를 추가하세요.

다음은 유효한 릴레이 상태 URL의 예입니다.
+ `https://us-east-1.console.aws.amazon.com/connect/federate/your-instance-id?destination=%2Fccp-v2%2Fchat&new_domain=true`
+ `https://us-east-1.console.aws.amazon.com/connect/federate/your-instance-id?new_domain=true`

**참고**  
RelayState 자체가 다른 URL에 대한 파라미터인 경우 이전에 `destination`에서 수행한 모든 URL 인코딩 외에도 전체 RelayState 자체를 URL로 인코딩해야 합니다. 예를 들어 파생된 RelayState가 `https://us-east-1.console.aws.amazon.com/connect/federate/your-instance-id?destination=%2Fccp-v2%2Fchat&new_domain=true`였고 이것을 `https://my.idp.com/signin?RelayState=<here>`에 삽입해야 하는 경우 최종 URL은 `https://my.idp.com/signin?RelayState=https%3A%2F%2Fus-east-1.console.aws.amazon.com%2Fconnect%2Ffederate%2Fyour-instance-id%3Fdestination%3D%252Fccp-v2%252Fchat%26new_domain%3Dtrue.`여야 합니다. [쿼리 문자열](https://en.wikipedia.org/wiki/Query_string)에서 올바르게 구문 분석하려면 URL 인코딩이 중요합니다.

### 기타 커넥터
<a name="new-domain-saml"></a>

Salesforce, Zendesk, ServiceNow 또는 기타 커넥터를 사용하는 경우: 

1. 최신 버전의 커넥터로 업그레이드합니다.

1. 커넥터에서 설정으로 이동하여 해당 커넥터에 저장된 Amazon Connect 도메인을 업데이트합니다. 해당하는 경우 SAML 팁을 따르세요.

## 방화벽 허용 목록
<a name="new-domain-allow-list"></a>

다음과 같은 새 도메인을 허용 목록에 추가합니다.
+ *your-instance-alias*.my.connect.aws
+ \$1.static.connect.aws

새 로그인 환경을 테스트하거나 사용하는 경우 허용 목록에 다음 도메인도 추가합니다. 자세한 내용은 [새 Amazon Connect 로그인 환경 테스트](new-signin-experience.md) 단원을 참조하십시오.
+ \$1.apps.signin.aws
+ \$1.signin.aws
+ \$1.signin-fips.amazonaws-us-gov.com
+ \$1.apps.signin-fips.aws-us-gov.com
+ \$1.apps.signin.aws-us-gov.com
+ \$1.threat-mitigation.aws.amazon.com
+ \$1.s3.dualstack.\$1.amazonaws.com

**중요**  
다음 도메인과 같이 허용 목록에 이미 있는 도메인은 제거하지 마세요.  
*your-instance-alias*.awsapps.com/connect/ccp-v2
*your-instance-alias*.awsapps.com/connect/api
\$1.cloudfront.net
이러한 도메인을 허용 목록에 유지하면 원활하게 전환할 수 있습니다. 나중에 마이그레이션이 완료된 후에 제거할 수 있습니다.

허용 목록 설정에 대한 자세한 내용은 [네트워크 설정](ccp-networking.md) 섹션을 참조하세요.

## Amazon Connect 액세스 URL 및 비상 로그인 정보
<a name="about-access-url"></a>

Amazon Connect 액세스 URL 및 긴급 로그인 URLs은 도메인 마이그레이션을 완료한 후 AWS 콘솔에서 업데이트됩니다. 그 때까지는 이전 도메인을 반영합니다.

다음 이미지는 **Amazon Connect 가상 콜센터 인스턴스** 페이지에서 액세스 URL의 위치를 보여 줍니다. 도메인을 업데이트하는 단계를 밟았더라도 이 URL은 이전 도메인을 계속 표시합니다. 이전 도메인 트래픽이 새 도메인으로 리디렉션되기 시작하면 이 페이지의 URL이 자동으로 업데이트됩니다. **이 URL을 사용하여에 로그인하지 말고** 팀에게 사용해야 하는 새 URL을 전달하세요.

![\[Amazon Connect 콘솔의 액세스 URL입니다.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/access-url.png)


다음 이미지는 **계정 개요** 페이지에서 긴급 로그인 URL의 위치를 보여 줍니다. 이 URL은 트래픽이 새 도메인으로 자동 리디렉션되기 시작할 때까지 이전 도메인으로 연결됩니다. **비상 상황이 아닌 한 이 URL을 사용하여 로그인하지 마세요**. 대신 새 도메인과 연결된 로그인 페이지에서 사용자 이름과 암호로 로그인합니다.

![\[계정 개요 페이지의 비상 로그인 링크입니다.\]](http://docs.aws.amazon.com/ko_kr/connect/latest/adminguide/images/emergency-login.png)


## 개인 설정
<a name="new-domain-settings"></a>

팀이 혼란과 중단을 방지하기 위한 조치를 취할 수 있도록 예정된 변경 사항에 대해 알리세요. 링크가 포함된 내부 문서가 있는 경우 그에 따라 검토하고 업데이트하세요. 팀원에게 *로그인 페이지*와 Alfred 같은 생산성 앱의 브라우저 북마크를 업데이트하도록 권장하세요.

팀이 원활하게 전환할 수 있도록 URL 참조를 식별하는 조치를 취하는 것이 좋습니다.

## 전송 계층 보안(TLS)
<a name="new-domain-tls"></a>

에이전트가 [Amazon Connect가 지원하는 브라우저](connect-supported-browsers.md)를 사용하는 경우, 아무런 조치도 취하지 않습니다. 예를 들어 최신 Chrome 및 Firefox 버전을 사용하는 경우 작업이 필요하지 않습니다.

TLS 1.1 이하를 사용하는 경우 TLS 1.1\$1 프로토콜을 지원하도록 도구를 업그레이드해야 합니다.

TLS 프로토콜 요구 사항은 TLS 1.2이며 TLS 1.3이 권장됩니다. 새 도메인은 TLS 1.1 및 TLS 1.0을 지원하지 않습니다.

새 TLS 정책인 [ALB FS-1-2-Res-2019-08](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html#tls-security-policies)을 검토하는 것이 좋습니다. 참고로 이전 TLS 정책은 [CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers) TLSv1에서 확인할 수 있습니다.