API 및 스크립트

Studio 스크립트에서는 SOAP 또는 RESTful API 표준을 사용하는 웹 서비스에 연결할 수 있습니다.

지원되는 옵션

Studio은(는) 다음과 같은 웹 서비스에 연결하는 방법을 지원합니다.

옵션 세부사항
REST API Studio 작업

REST API Studio 작업을 사용하면 스크립트에서 RESTful API 호출을 수행할 수 있습니다. 이 메서드는...

  • SNIPPET 작업에서 RESTful 호출을 수행할 때보다 더 많은 부하를 처리할 수 있으며, 특히 대량으로 처리할 수 있습니다.
  • 스크립트에서 API 호출을 수행할 때 선호하는 메서드입니다.
  • 호출에 JSON이 포함되는 경우 사용하는 옵션입니다.
CXone API Studio 작업 Studio에는 여러 API 작업이 있으며, 스크립트에서 CXone API로 호출을 수행할 수 있습니다. 일부 CXone API는 작업으로 사용할 수 없지만, 사용할 수 있는 작업은 다른 메서드 대신 사용해야 합니다. Desktop Studio에 있는 프레임워크 탭의 API 섹션과 CXone Studio의 API 작업 팔레트에서 API 작업을 찾을 수 있습니다.
SNIPPET 작업

스크립트에서 RESTful 또는 SOAP 웹 서비스에 연결하도록 SNIPPET 작업에서 코드를 작성할 수 있습니다. 컨택 처리 속도가 느려질 수 있으므로 REST 호출에는 권장하는 메서드가 아닙니다. 하지만 다음과 같은 경우에는 이 메서드를 사용해야 합니다.

  • 호출에 XML이 포함되는 경우
  • SOAP 서비스에 연결하는 경우

반환된 데이터 크기 한도

CXone플랫폼을(를) 사용하면 REST API가 최대 32KB의 데이터를 반환할 수 있습니다. 이 제한은 클러스터 불안정 및 중단을 방지합니다. 이 제한은 엄격하게 적용됩니다.

이 제한 사항은 REST API 작업SNIPPET 작업으로 호출 수행을 포함하여 웹 서비스에 연결하는 모든 메서드에 적용됩니다. 가능하다면 REST에 SNIPPET 작업 대신 REST API 작업을 사용하십시오. REST API의 반환 한도는 32KB이지만, SNIPPET 메서드보다 더 많은 부하를 처리할 수 있습니다.

반환된 데이터의 크기를 줄이는 방법:

  • API 반환에서 데이터를 필터링합니다. 예를 들어 NICE 보고 API를 사용하여 컨택을 얻는 경우 컨택의 startDateendDate을(를) 기준으로 결과를 필터링할 수 있습니다. 또한 이 API 호출을 사용하면 최대 항목 수를 반환하고 제한할 수 있습니다. 사용할 수 있는 필터링을 결정하기 위해 호출하는 API에 관한 설명서를 참조하십시오.
  • 필요한 데이터만 반환하도록 API 요청을 업데이트합니다. 예를 들어 NICE 보고 API를 사용하여 컨택을 얻는 경우 contactId 또는 agentId 필드를 사용하여 관련 데이터만 반환할 수 있습니다. 사용할 수 있는 데이터 제한을 결정하기 위해 호출하는 API에 관한 설명서를 참조하십시오.

이전 옵션 중 하나를 수행할 수 없는 경우 미들웨어를 빌드합니다.

-1 오류 코드

-1 오류 코드는 API 호출에서 오류가 발생했음을 나타내기 위해 사용하는 내부 코드입니다. 구체적으로 설명하면, 이 코드는 HTTP 상태 코드가 반환되지 않거나 반환되더라도 스크립트에 전달할 수 없는 상황을 의미합니다.

-1 오류 코드와 함께 제공되는 상태 설명은 문제를 파악하는 데 도움이 될 수 있습니다. 이 코드와 함께 제공될 수 있는 상태 설명은 다음과 같습니다.

  • 이 요청은 중단되었습니다. 작업이 타임아웃되었습니다. 이 요청은 처리되었거나 처리되지 않았을 수 있습니다. 상태 코드 -1에 대한 응답으로 루프를 설정하기 전에 유효성 검사를 수행해야 합니다. ProxyTimeoutSeconds 속성을 사용하는 호출을 설정하는 타임아웃을 변경해야 할 수 있습니다.
  • 잘못된 JSON Primitive입니다. 응답 때문에 JSON 구문 분석기에 혼동이 발생했습니다. 응답에 잘못된 문자가 포함되었거나 JSON이 아니었습니다. 이 오류는 HTML로 응답이 전송될 때 종종 발생합니다. 스니펫 디버거에서 응답을 테스트할 수 있습니다. REST API 응답은 JSON 또는 XML이 아닙니다 중앙에서 오른쪽 상단 모서리를 향하는 화살표가 있는 정사각형입니다. 지식 베이스 문서에 도움이 되는 정보가 있을 수 있습니다.

  • 루트 수준에서의 데이터가 잘못되었습니다. 응답 때문에 XML 구문 분석기에 혼동이 발생했습니다. 응답에 잘못된 문자가 포함되었거나 XML이 아니었습니다. 이 오류는 HTML로 응답이 전송될 때 종종 발생합니다. REST API 응답은 JSON 또는 XML이 아닙니다 중앙에서 오른쪽 상단 모서리를 향하는 화살표가 있는 정사각형입니다. 지식 베이스 문서에 도움이 되는 정보가 있을 수 있습니다.

  • 'doctype'은 예상치 못한 토큰입니다. 예상한 토큰은 'DOCTYPE'입니다. 이 목록의 루트 수준에서의 데이터가 잘못되었습니다를 확인하십시오.

  • x줄 x 위치의 'br' 시작 태그가 'body' 종료 태그와 일치하지 않습니다. 이 목록의 루트 수준에서의 데이터가 잘못되었습니다를 확인하십시오.

  • 기본 연결이 닫혔습니다. 전송 중에 예기치 않은 오류가 발생했습니다. 이는 종종 TLS 핸드셰이크에 문제가 있다는 의미입니다. 방화벽에서 IP 또는 포트가 열려 있지 않거나, 지원되지 않는 오래된 버전의 TLS를 사용하거나, 인증서가 유효하지 않거나 아니면 만료되었거나, HTTPS와 함께 IP 주소를 사용하는 경우 또는 이와 유사한 문제로 인해 발생할 수도 있습니다. 수신 서버 측의 방화벽 로그를 통해 이 응답 문제를 해결하세요.

  • 기본 연결이 닫혔습니다. SSL/TLS 보안 채널에 대한 신뢰 관계를 설정할 수 없습니다. 이 목록의 기본 연결이 닫혔습니다. 전송 중에 예기치 않은 오류가 발생했습니다를 참조하십시오.

  • 요청이 중단되었습니다. SSL/TLS 보안 채널을 생성할 수 없습니다. 이 목록의 기본 연결이 닫혔습니다. 전송 중에 예기치 않은 오류가 발생했습니다를 참조하십시오.

  • 응답이 너무 큽니다. (> 32KB). 이 응답에는 32KB를 초과하는 데이터가 포함되어 있습니다. 이 경우 시스템에서 하나의 변수에 32KB 이상을 저장할 방법이 없기 때문에 응답이 삭제됩니다. 이 응답은 반환되는 데이터 양을 줄이기 위해 수정 또는 필터링해야 합니다.