CRM 集成代码片段
本帮助页面上的信息同时适用于 CXone Studio 和 Desktop Studio。
您可以将 CRM 应用程序与 CXone Agent、CXone Agent Embedded 或 CXone Agent Integrated 集成。您的集成脚本中需要以下代码片段。有关将这些代码片段添加到脚本中的信息,请参阅为 CXone Agent、CXone Agent Embedded,或 CXone Agent Integrated 设置数据记忆的在线帮助。
Workflow Inputs
此代码向脚本引入了一些变量,以保存 CRM 集成的配置 ID 以及您希望脚本处理的工作流的 ID。
该代码还会创建一个名为 searchInput 的动态数据对象 。该对象保存工作流输入和从 CRM 传递到 坐席应用程序 的负载。在示例代码中,该对象是根据搜索工作流命名的。对于其他工作流,请使用相关名称。
//this is the ID of the CRM integration from the CXone Agent Integrations page
ASSIGN integrationConfigId="[integration configuration ID]"
//This is the ID of the workflow you want to use
ASSIGN searchWorkflowId="[workflow ID]"
DYNAMIC searchInput
searchInput.workflowInput.phoneNumber="{ANI}"
//Include the following variable if you want to establish a timeout.
//Connect the OnTimeout branch of the Workflow Execute Studio action if you create a timeout.
searchInput.timeoutMilliSec = "6000"
ASSIGN searchJson = "{searchInput.asjson()}"
工作流输入 #2
此操作可创建当前交互记录。此记录存储有关坐席当前正在处理的联系人的信息。默认情况下,其在 坐席应用程序 和您的 CRM 之间进行链接。
为了创建当前交互记录,此操作会创建一个名为 create[Record] 的动态数据对象。将 [Record] 替换为您要使用的 CRM 记录类型的名称,例如 Phonecall 或 Account。create[Record] 对象的 pinnedRecord 参数固定坐席的当前交互记录。这意味着它会出现在 客户卡 的“当前交互”部分中,以便于访问。
DYNAMIC create[Record]
create[Record].subject="{CONTACTID}-{SKLNAME}"
create[Record].phoneNumber="{ANI}"
create[Record].directionCode="incoming"
create[Record].pinnedRecord="true" // set as true for pinning this record in the CXone Agent app, string variable
DYNAMIC create[Record]Payload
create[Record]Payload.workflowInput=create[Record]
ASSIGN create[Record]Json= "{create[Record]Payload.asjson()}"
Workflow Response
此操作传递第一个 CustomEvent 操作所需的信息。
此 Snippet 中的代码将联系人 ID 添加到在 Workflow Execute 操作的 resultSet (out) 属性中设置的变量。它还创建一个变量来保存从 CRM 以 JSON 格式返回的工作流结果。
// WorkflowResult Out parameter from workflow execute action
workflowResultSet.contactId = "{ContactID}"
ASSIGN searchWorkflowOutputJson = "{workflowResultSet.asjson()}"