CXone Agent SDK
本页内容针对 Controlled Release (CR) 的产品或特性。 如果您不是 CR 组的成员,如需了解更多信息,请联系您的 CXone 客户代表。
SDK 语言:Typescript
当前版本:24.3
当前版本的发布日期:2024 年 7 月 23 日
可用性:所有区域和所有业务部门
浏览器支持:Google Chrome、Microsoft Edge、Island Enterprise
SDK 存储库:向您的 CXone 客户代表 询问存储库的链接
软件开发工具包 (SDK) 就像是开发者的工具箱。它提供了一套可使构建软件 应用 变得更容易的工具和资源。您可以将其视为预制构建块的集合。这些构建块具有现有功能。开发者可使用这些现有块,而不是从头开始亲自构建功能。以下是使用 SDK 的四个一般好处:
-
效率:SDK 提供现成的工具和预构建组件,从而可节省开发者的时间。他们可以专注于其 应用程序 的独特方面,而不是浪费时间做无用功。
-
一致性:SDK 可确保在不同 应用程序 间保持一致性。通过使用同一套工具和库,开发者可为用户保持统一的体验。
-
平台兼容性:iOS 和 Android SDK 针对各自的 平台 进行了量身定制。它们可处理 平台 特定的复杂性,从而使创建跨平台 应用程序 变得更容易。
-
质量保证:凭借记录器,开发者可验证他们的代码,及早发现错误,以及提供更可靠的软件。
总之,SDK 可简化开发,确保质量并促进协作,从而使其成为高效创建 应用程序 的重要工具。
CXone AgentSDK 可使您构建 坐席应用程序 一种将日期写为浮点整数的方法。 指示自 1899 年 12 月 30 日以来的天数。。它还可使您将 CXone Agent 功能集成到现有 应用 中。开发者可通过 SDK 使用预制功能,而不是直接使用 CXone API。这可加快开发时间并节省资源。您的开发者不需要了解所有 CXone API 的工作方式。SDK 可使您在可使用的 JavaScript 包装器中使用 API 组。
CXA SDK 是较小 SDK 的编译。每个较小的 SDK 都专注于功能的特定方面,例如身份验证或呼叫控制。为符合您的使用案例,您可以仅选择所需的 SDK。例如,您可能不需要 Voice SDK,它为 Integrated Softphone 提供 WebRTC 功能。这也意味着开发者只需为您的用例安装必要的 SDK。
有关 CXA SDK 的主要事实:
-
SDK 通过事件订阅来工作。来自 CXone 平台 的数据随事件一起发布。要使用这些数据,您的 应用程序 必须订阅这些事件。
-
CXone Agent 的所有功能均可通过此 SDK 获得。
-
您必须注册将与 SDK 结合使用的 应用。填写注册表单 以接收此 应用程序 的凭据。开发者门户的入门 页面将引导您完成注册 应用程序 和设置身份验证的过程。
-
SDK 支持带有 PKCE 身份验证流程的 OpenID 连接。
CXA SDK 用例
以下是 CXA SDK 的三个常见用例。
-
自定义坐席客户端:
在这种情况下,您拥有原生 CXone Agent 尚未提供的独特功能或要求。另外,也许您不能简单地将所需的功能嵌入 CXone Agent 中。例如,您可能需要限制坐席对联系信息的可见性。这可能是为了满足特定的安全要求。您可能需要屏蔽坐席的所有联系数据,只有自定义客户端才能有助于实现这一点。 -
将坐席客户端与第三方应用程序集成:
在这种情况下,您不能将 坐席应用程序 嵌入另一个 应用程序 中。其他 应用程序 通常是 CRM、在线银行网站或酒店预订系统。此用例是当您需要坐席客户端的功能,但不一定需要客户端 UI 时的情况。使用 SDK,您可以将一项功能构建到另一个 应用 中。以酒店系统为例,工作人员可以通过预订系统呼叫特定房间。 -
嵌入式应用程序的事件订阅:
这通常用于遵守某些浏览器安全限制。例如,Google 阻止将数据从另一个网站发布到已内嵌框架的窗口。这会使窗口能够在两个框架之间共享消息或数据的方式变得复杂。例如,您有一个在 CXone Agent 中内嵌了框架的医疗保健 应用程序。当坐席接听联系人电话时,您希望使用联系人的电话号码在您的医疗保健 应用程序 中查找他们的信息。这可使您自动向坐席显示联系信息。如果坐席使用 Google Chrome,则医疗保健 应用程序 无法从 CXone Agent 获取联系电话号码。它需要订阅 VC 事件流,这与 CXone Agent 使用的相同。
SDK 细目
CXA SDK 由以下较小的 SDK 组成:
SDK | 详细信息 |
---|---|
ACD |
此 SDK 提供处理语音通话、语音邮件和工作项 通过 Studio 脚本向坐席提供联系人的可自定义方法。的功能。例如:
查看技术详情
以下是有关 ACD SDK 的关键技术详情:
|
坐席 |
该 SDK 用于处理会话事件。它可使您启动会话、加入正在进行的会话等等。其主要重点是:
|
验证 |
该 SDK 有助于安全身份验证和授权。它主要可使您使用 CXone 全局身份验证 来设置登录流程。支持的身份验证流程是使用 PKCE 的 OpenID 连接。用户必须使用 CXone 帐户进行身份验证。这可使您根据用户的 CXone 角色 寻找线索来识别客户挫折。 这些线索包括诸如“我很生气”之类的词语和短语。 挫折并不等同于负面情绪。 挫折的线索表明,客户是不高兴的,而不仅仅是在讨论一些负面的东西。验证他们的身份及其权限。 关键功能包括:
查看技术详情
以下是验证 SDK 的关键技术详情:
|
数字 |
该 SDK 可让您集成数字通信渠道。您可以使用电子邮件、聊天和短信等标准数字渠道,以及 WhatsApp 等社交媒体平台。根据您设置的渠道数量,您可以创建多渠道通信。 查看技术详情
以下是有关数字 SDK 的关键技术详情:
|
语音 | 此 SDK 为您提供 Integrated Softphone 功能。它是 WebRTC 的包装器。 |
资源
SDK 可使您创建自己的自定义功能,因此您的支持资源主要是自助服务内容。您的技术支持选项基于您的组织与 NICE 的支持协议。请联系您的 CXone 客户代表,了解有关您支持选项的更多信息。
除了此页面之外,您的自助服务内容还专注于开发者资源。SDK 包包含以下内容:
-
提供入门信息的每个单独 SDK 的自述文件。
-
展示基本功能的示例 应用。
-
代码摘录自示例 应用 的使用示例。
-
代码评论。
事件
以下是您 应用程序 可侦听的事件。这些事件按其可用的模块进行分类。
ACD SDK
实例 | Event | 说明 |
---|---|---|
CXoneAcdClient.instance.contactManager |
conferenceCallEvent |
侦听与电话会议相关的事件。 |
|
onDispositionEvent |
处理与交互的处置 坐席或系统在语音(处置)或数字(状态)交互结束时分配的结果。相关的事件。 |
|
onTagsEvent |
管理与交互关联的标签相关的事件。 |
|
voiceContactUpdateEvent |
侦听对语音联系人的更新。 |
|
voiceMailContactUpdateEvent |
侦听对语音邮件联系人的更新。 |
|
workItemContactUpdateEvent |
侦听对工作项联系人的更新。 |
CXoneAcdClient.instance.notification |
onUpdateMessageEvent |
侦听针对坐席的新消息或通知。 |
CXoneAcdClient.instance.screenPop |
agentAssistSubject |
处理与坐席协助或 Copilot 应用程序相关的事件。 |
|
contactScreenPopSubject |
处理与呼入联系人的弹出屏幕相关的事件。 |
|
pageOpenSubject |
处理与打开网页相关的事件。 |
|
popUrlSubject |
处理与在新窗口或选项卡中弹出 URL 相关的事件。 |
|
runAppSubject |
处理与运行应用程序或打开自定义表单相关的事件。 |
CXoneAcdClient.instance.session |
agentLegEvent |
侦听会话中与坐席的支路 CXone 与坐席之间发生的交互部分。相关的事件。 |
|
agentStateSubject |
发出与坐席状态变化(例如“可用”变为“不可用”)相关的事件的可观察结果。 |
|
naturalCallingSkillListSubject |
侦听对为自然呼叫启用的技能列表的更新。 事件类型包括:SESSION_START、SESSION_END、JOIN_SESSION_SUCCESS 和 JOIN_SESSION_FAILURE。 |
|
networkOfflineSubject |
侦听与网络连接问题相关的事件。 |
|
onAgentSessionChange |
侦听坐席会话状态(例如开始或结束)的变化。 事件类型包括:SESSION_START、SESSION_END、JOIN_SESSION_SUCCESS 和 JOIN_SESSION_FAILURE。 |
CXoneAcdClient.instance.session.agentStateService |
agentStateSubject |
发出有关坐席状态更改的更新的可观察结果。 |
坐席 SDK
实例 | Event | 说明 |
---|---|---|
CXoneClient.instance |
autoSummaryService |
用于管理自动摘要的服务。 |
|
copilotNotificationClient |
有助于接收有关 Agent Copilot 的实时通知。 |
|
cxoneApiPerformanceMetrics |
侦听来自 CXone API 的绩效指标。 |
CXoneClient.instance.agentSession |
agentSessionEndSubject |
当前坐席的会话结束时发出事件。 |
CXoneClient.instance.agentSetting |
mchAgentSettingsChangeEvent |
侦听坐席的“接听呼叫”(MCH) 设置中的更改。 |
CXoneClient.instance.autoSummaryService |
onAutoSummaryReceived |
当收到联系人自动生成的摘要时触发的可观察事件。 |
CXoneClient.instance.commitment |
onCommitmentEvent |
侦听与坐席承诺相关的事件。 |
|
onCommitmentStatusEvent |
侦听坐席承诺状态的变化。 |
|
onUpdateCommitments |
侦听坐席承诺的更新。 |
CXoneClient.instance.contactManager |
onDigitalContactEvent |
提供 CXone 中数字联系人交互的更新,例如聊天会话和呼出消息。 |
|
onDispositionEvent |
提供呼叫结束后呼叫处理状态的更新。 |
|
voiceContactUpdateEvent |
提供有关正在进行的语音通话详情(例如呼叫者姓名和电话号码)的实时更新。 |
CXoneClient.instance.copilotNotificationClient |
onMessageNotification |
用于订阅呼入 Copilot 消息或通知的可观察结果/事件发射器。 事件类型包括:ADAPTIVE_CARD、RT_SUMMARY、NEXT_BEST_RESPONSE、NEXT_BEST_RESPONSE_LLM、NEXT_BEST_RESPONSE_EXPERT、KB_ANSWERS、SENTIMENT、KB_LINKS、KB_IMAGES、TEXT、FINAL_SUMMARY、FINAL_SUMMARY_NOTES、KB_ANSWERS_VOICE、 、ENLIGHTEN_AGENT_COPILOT 和 AGENT_COPILOT。 |
CXoneClient.instance.directory |
directoryEvent |
侦听与目录相关的事件,例如坐席、团队或技能。 提供有关目录数据更改的更新,例如 CXone 中的新联系人、更新和权限修改。 |
|
onUpdateSkillsEvent |
侦听对坐席已分配技能的更新。 |
CXoneClient.instance.directory.dynamicDirectory |
searchDirectoryResult |
在系统内的目录中查找诸如人员或部门等内容后,等待结果返回。 |
CXoneClient.instance.indicator |
agentIndicatorsEvent |
提供坐席指示器更新的事件,例如可用性、当前活动和自定义坐席状态指示器。 |
|
contactIndicatorsEvent |
提供联系人指示器更新的事件,这些指示器可能会触发显示自定义表单以收集额外信息等的操作。 |
CXoneClient.instance.notification |
onCXoneNotificationEvent |
侦听来自 CXone 平台 的通知。 |
CXoneClient.instance.screenPop |
contactScreenPopSubject |
触发了打开包含现有呼叫的呼叫者信息的网页的事件。 |
|
pageOpenSubject |
触发了打开不一定与当前呼叫相关的网页的事件。 |
|
popUrlSubject |
触发了打开现有呼叫的相关网页的事件。 |
|
runAppSubject |
触发了启动 应用程序 或显示呼叫的自定义表单的事件。 |
CXoneClient.instance.session |
agentLegEvent |
侦听坐席特定呼叫支路的更新,例如呼入或呼出呼叫。 |
CXoneClient.instance.session.agentStateService |
agentStateSubject |
提供有关坐席可用性状态和 CXone 中状态更改的实时更新的事件。 |
CXoneClient.instance.skillActivityQueue |
agentQueueSubject |
提供有关坐席已分配队列信息(例如队列名称、呼叫计数和坐席可用性)的更新的事件。 |
|
agentQueuesDetailSubject |
提供有关坐席已分配队列的详细更新的事件,包括平均等待时间、服务水平协议 (SLA) 和坐席绩效等指标。 |
|
skillActivityEvent |
提供技能活动指标(例如呼叫队列长度、平均等待时间和可用坐席)的更新的事件。 |
验证 SDK
实例 | Event | 说明 |
---|---|---|
CXoneAuth.instance |
onAuthStatusChange |
侦听用户身份验证状态变化的可观察结果。 事件类型包括:AUTHENTICATED、AUTHENTICATING、NOT_AUTHENTICATED、AUTHENTICATION_FAILED 和 REFRESH_TOKEN_SUCCESS |
数字 SDK
实例 | Event | 说明 |
---|---|---|
CXoneDigitalClient.instance.digitalContactManager |
onDigitalContactEvent |
侦听与数字联系人相关的事件。 事件类型包括:CASE_INBOX_ASSIGNEE_CHANGED、CASE_STATUS_CHANGED、MESSAGE_ADDED_INTO_CASE、CASE_INBOX_ASSIGNED、CASE_INBOX_UNASSIGNED、MESSAGE_CREATED、MESSAGE_NOTE_CREATED、MESSAGE_NOTE_DELETED、MESSAGE_NOTE_UPDATED、SENDER_TYPING_START、 SENDER_TYPING_END 和 MESSAGE_PREVIEW。 |
|
onDigitalContactNewMessageEvent |
侦听来自数字联系人的新消息。 |
|
onDigitalContactUserTypingPreviewEvent |
侦听来自数字联系人的键入预览事件。 事件类型包括:CASE_INBOX_ASSIGNEE_CHANGED、CASE_STATUS_CHANGED、MESSAGE_ADDED_INTO_CASE、CASE_INBOX_ASSIGNED、CASE_INBOX_UNASSIGNED、MESSAGE_CREATED、MESSAGE_NOTE_CREATED、MESSAGE_NOTE_DELETED、MESSAGE_NOTE_UPDATED、SENDER_TYPING_START、 SENDER_TYPING_END 和 MESSAGE_PREVIEW。 |
语音 SDK
实例 | Event | 说明 |
---|---|---|
CXoneVoiceClientWrapper.instance |
onCallStatusChanged |
处理与呼叫状态更改相关的事件。 |
|
onConnectionStatusChanged |
处理与语音连接状态更改相关的事件。 |