Scripts en API's

U kunt verbinden met webservices met Studio-scripts die SOAP- of RESTful API-normen gebruiken. U kunt verbinden met de volgende methoden:

  • REST APIStudio-actie
  • Integration Hub
  • APIStudio-acties
  • CRM-workflowintegraties

 

RESTful web-services

U kunt Studio-scripts gebruiken voor het verbinden met RESTful API met de REST-proxy in een Snippet-actie. Deze service is toegankelijk met de GetRestProxy()-functie. Met de REST-proxy kunnen uw scripts interactief werken met externe webservers. Dit biedt enkele eigenschappen en functies die u hiervoor kunt gebruiken.

De REST-proxy vereist het gebruik van dynamische gegevensobjecten. Met het dynamische gegevenstype kunnen uw scripts werken met reacties die zijn opgemaakt in XML en JSON. Dynamische gegevensobjecten kunnen gegevens ontvangen in deze indelingen zodat ze kunnen worden gelezen. U kunt ook dynamisch objecten maken die kunnen worden omgezet in XML of JSON. Deze mogelijkheden zijn nodig voor het gebruik van RESTful API's.

Om de REST-proxy te gebruiken, voegt u een Snippet-actie toe aan uw script en opent u het Snippet Editor venster. Roep de GetRESTProxy()-functie op met de volgende syntaxis.

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

Voor <property | function> kiest u uit de eigenschappen en functies die zijn beschreven in de volgende secties.

Eigenschappen

Vertakking Details
StatusCode Bevat de HTTP-statuscode na een aanroep naar MakeRestRequest(). Deze eigenschap kan niet worden gewijzigd. Als de functie mislukt, behoudt deze niet langer de status code.
StatusDescription Bevat de HTTP-statusbeschrijving na een aanroep naar MakeRestRequest(). Deze eigenschap kan niet worden gewijzigd.
ContentType

Hiermee kunt u de standaard content-type header overschrijven. De standaardwaarde is application/x-www-form-urlencoded.

Afhankelijk van de aanroep die u maakt, kunt u de koptekst wijzigen. Als u bijvoorbeeld JSON verzendt, wijzigt dit naar application/json. U moet deze eigenschap wijzigen.

ProxyTimeoutSeconds Hiermee kunt u de time-out voor de aanvraag wijzigen. De standaardwaarde is 10 seconden. u moet deze eigenschap wijzigen.

Functies

De volgende tabel biedt informatie oer de functies die beschikbaar zijn voor gebruik wanneer u verbindt met RESTful API's. Er zijn extra REST-proxyfuncties waarmee u strings kunt coderen en hashen.

Functie Details
MakeRestRequest(URL) Voert een HTTP-verzoek uit naar de aangewezen URL.
AddHeader Voegt een aangepaste header toe aan het HTTP-verzoek.
ClearHeaders Wist alle aangepaste headers die zijn toegevoegd met AddHeader.

Voorbeelden

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-webservices

U kunt op SOAP gebaseerde webservices gebruiken in uw Studio-scripts. Dit vereist dat u een a WSDL of Proxy DLL importeert in Studio. De geïmporteerde DLL moet worden geautoriseerd door NICE CXone. Na het autoriseren van de DLL's, wordt dit opgeslagen in de hoofdmap van de bestandopslag van bedrijfseenheidGesloten Een organisatorische eenheid die wordt gebruikt om technische ondersteuning, facturering en globale instellingen voor uw CXone-omgeving te beheren .

Het gebruik van SOAP-webservices vereist hulp van NICE CXone. Neem voor meer informatie contact op met uw CXone-accountmanager.

SOAP gebruiken in een snippet

Wanneer u een op SOAP gebaseerde webservice wilt gebruiken in een Studio-script, moet u een fragment maken. Voeg een Snippet-actie toe aan uw script. Voeg in het venster Fragment-editor eenUSES verklaring toe die het proxy DLL-bestand vermeldt dat u hebt gegenereerd en opgeslagen in de bestandsopslag van uw bedrijfseenheidGesloten Een organisatorische eenheid die wordt gebruikt om technische ondersteuning, facturering en globale instellingen voor uw CXone-omgeving te beheren .

Het volgende fragment is een voorbeeld van het gebruik van een op SOAP gebaseerde webservice met een Studio-scripts.

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)