스크립트 및 API

SOAP 또는 RESTful API 표준을 사용하는 Studio 스크립트를 사용하여 웹 서비스에 연결할 수 있습니다. 다음과 같은 방법으로 연결할 수 있습니다.

  • REST API Studio 작업
  • Integration Hub
  • API Studio 작업
  • CRM 워크플로 통합

 

RESTful 웹 서비스

Studio 스크립트를 사용하면 Snippet 작업에 있는 REST 프록시를 사용하여 RESTful API에 연결할 수 있습니다. GetRestProxy() 함수로 이 서비스에 액세스할 수 있습니다. REST 프록시를 사용하면 스크립트가 원격 웹 서버와 상호작용할 수 있습니다. REST 프록시는 이를 수행하기 위해 사용할 수 있는 속성과 함수를 제공합니다.

REST 프록시는 동적 데이터 개체를 사용해야 합니다. 동적 데이터 유형을 사용하면 스크립트가 형식이 XML 및 JSON인 응답을 작업할 수 있습니다. 동적 데이터 개체는 이러한 형식으로 데이터를 수신하고 이를 읽도록 허용할 수 있습니다. 또한 XML 또는 JSON으로 변환할 수 있는 개체를 동적으로 생성할 수 있습니다. 이러한 기능은 RESTful API 사용에 필수적입니다.

REST 프록시를 사용하려면 스크립트에 Snippet 작업을 추가하고 Snippet Editor 창을 엽니다. 다음 구문을 사용하여 GetRESTProxy() 함수를 호출합니다.

ASSIGN proxy = GetRESTProxy() 
 proxy.<property | function>([parameters]) 

<property | function>의 경우, 다음 섹션에서 설명하는 속성 및 함수를 선택합니다.

속성

속성 세부 사항
StatusCode MakeRestRequest()에 대한 호출 후 HTTP 상태 코드를 보유합니다. 이 속성은 수정할 수 없습니다. 함수가 실패하면 상태 코드를 더 이상 보유하지 않습니다.
StatusDescription MakeRestRequest()에 대한 호출 후 HTTP 상태 설명을 보유합니다. 이 속성은 수정할 수 없습니다.
ContentType

기본 콘텐츠 유형 헤더를 재정의할 수 있게 됩니다. 기본값은 application/x-www-form-urlencoded입니다.

거는 통화에 따라 헤더를 변경해야 할 수 있습니다. 예를 들어 JSON을 전송하는 경우에는 이를 application/json(으)로 변경합니다. 이 속성을 수정해야 합니다.

ProxyTimeoutSeconds 요청 타임아웃을 변경할 수 있게 됩니다. 기본값은 10초입니다. 이 속성을 수정해야 합니다.

기능

다음 테이블에서는 RESTful API에 연결할 때 사용할 수 있는 함수에 관한 정보를 제공합니다. 문자열을 인코딩 및 해싱할 수 있는 추가 REST 프록시 함수가 있습니다.

기능 세부 사항
MakeRestRequest(URL) 지정된 URL에 HTTP 요청을 수행합니다.
AddHeader HTTP 요청에 사용자 정의 헤더를 추가합니다.
ClearHeaders AddHeader(으)로 추가된 모든 사용자 정의 헤더를 지웁니다.

ASSIGN proxy = GetRESTProxy()
ASSIGN proxy.ContentType = "application/json"
ASSIGN url = "https://catfact.ninja/fact"
ASSIGN verb = "GET"
ASSIGN result = proxy.MakeRestRequest(url,payload,'JSON',verb)

 

ASSIGN restProxy=GetRESTProxy()

restProxy.AddHeader("x-api-key", "qwer") //Assigning incorrect header for demonstration purposes
restProxy.ClearHeaders()
restProxy.AddHeader("x-api-key", "asdf")
ASSIGN restProxy.ProxyTimeoutSeconds = "2"
ASSIGN restProxy.ContentType = "application/json"

ASSIGN uri = "http://postman-echo.com/post"

DYNAMIC beowulfCharacteristics
ASSIGN beowulfCharacteristics.name = "Beowulf"
ASSIGN beowulfCharacteristics.occupation= "Hero" 
ASSIGN beowulfCharacteristics.foe = "Grendel"
ASSIGN payloadJSON = "{beowulfCharacteristics.asJSON()}

SOAP 웹 서비스

SOAP 기반 웹 서비스를 Studio 스크립트에 사용할 수 있습니다. WSDL 또는 Proxy DLL 을 Studio로 가져오기해야 합니다. 가져온 DLL은 NICE CXone에 의해 승인되어야 합니다. DLL을 승인한 이후에는 사업부닫힘 고급 조직 그룹화는 CXone 환경을 위해 기술 지원, 청구 및 글로벌 설정을 관리하는 데 사용됩니다. 의 파일 저장소 루트에 저장됩니다.

SOAP 웹 서비스를 사용하려면 NICE CXone의 지원이 필요합니다. 자세한 내용은 CXone 계정 담당자에게 문의하십시오.

스니펫에서 SOAP 사용

Studio 스크립트에서 SOAP 기반 웹 서비스를 사용하려는 경우에는 스니펫을 생성해야 합니다. 스크립트에 Snippet 작업을 추가합니다. 스니펫 편집기 창에서 생성했고 사업부닫힘 고급 조직 그룹화는 CXone 환경을 위해 기술 지원, 청구 및 글로벌 설정을 관리하는 데 사용됩니다. 의 파일 저장소에 저장한 프록시 DLL 파일의 이름을 정하는 USES 을 추가합니다.

다음 스니펫은 Studio 스크립트로 SOAP 기반 웹 서비스를 사용하는 예시입니다.

USES "sf.dll"
cStart="{now}"
sforce=new SforceService()
session=new SessionHeader()
loginResult=sforce.login("demo@nice.com",password6")
sforce.sessionheadervalue=session
session.sessionid=loginResult.sessionid
sforce.url=loginresult.serverUrl

t=new Task()
t.ActivityDate=#"8/20/2050"
t.Description="Call placed by {first }{Last}."
t.Subject="Call @{cStart}"
t.Status="Completed"
t.CallType="Outbound"
t.OwnerId=SF_Agent_ID
t.ReminderDateTime="{cStart}"

SWITCH Type
{
   CASE "CON" { t.WhoId=SF_Obj_ID }
   CASE "LEA" { t.WhoId=SF_Obj_ID }
   CASE "ACC" { t.WhatId=SF_Obj_ID }
   CASE "OPP" { t.WhatId=SF_Obj_ID }
   CASE "CAS" { t.WhatId=SF_Obj_ID }
}
SaveResult=sforce.create(t)