使用 API 自定义 Guide 聊天

您可以使用这些与聊天相关的 API 来自定义通过 Guide 实现的聊天的外观和行为。

聊天运行 API 调用

本节中的调用允许您更改 Guide 聊天窗口的运行方式。

设置授权代码

为 oAuth 流程设置授权代码。OAuth 是一种身份验证协议。它可以让一个应用程序代表您与另一个应用程序交互,而不会泄露您的密码。必须在聊天初始化之前调用。

cxone('chat','setAuthorizationCode', 'authorization_code');

自定义初始自动联系消息

当聊天在 Guide 中开始时,会创建一个新的案例关闭 通过某个渠道与坐席进行的完整对话。例如,交互可以是语音呼叫、电子邮件、聊天或社交媒体对话。,并在发送聊天会话的第一条消息时,将其添加到队列中。聊天会话开始时,会代表访问者发送隐藏的自动消息。这减少了访问者等待坐席的时间。尽管初始消息对联系是隐藏的,但坐席可以看到。

默认消息是客户单击以开始对话的按钮上的文本。您可以通过三种方式自定义初始自动消息的文本:

  • 覆盖默认按钮文本。

    cxone('chat','sendFirstMessageAutomatically', 'Hello');
  • 动态更改初始消息。

    cxone('chat','setFirstAutomatedMessageContent', 'Hello, I have a question');
  • 更改翻译页面上的消息文本。

使初始自动消息对联系人可见

如果您希望访问者能够看到初始自动消息,请将此调用加入脚本:

cxone('chat','hideFirstSentMessage', false);

延迟案例创建

Guide 创建一个新案例,并在发送聊天会话的第一条消息时将其添加到队列中。聊天会话开始时,会代表访问者发送隐藏的自动消息。这减少了访问者等待坐席的时间。当访问者单击聊天图标开始对话时,聊天会话就会开始。尽管初始消息对客户是隐藏的,但坐席可以看到。

您可以配置 Guide 在使用此调用创建案例之前,等待访问者的实际第一条消息:

cxone('chat','sendFirstMessageAutomatically', false);

启用游戏模式

允许访问者在等待坐席时玩贪吃蛇 (Snake) 游戏。

cxone('chat','allowGameMode');

自动满意度调查

满意度调查可以自动检测并显示在弹出窗口中。这可以启用或禁用它们是否被检测和显示。

cxone('chat','automatedSatisfactionSurveyModal', 'false');

聊天信息 API 调用

这些调用允许您自定义聊天会话期间访问者可用的信息。

获取客户身份 ID

返回聊天中访问者的唯一标识符。

cxone('chat','getCustomerIdentityId');

设置客户 ID

为聊天中访问者设置唯一标识符。

cxone('chat','setCustomerId', 'customer_id');

隐藏队列计数器

队列计数器可以让访问者知道,根据他们在坐席队列中的位置,坐席多久可以为其提供帮助。您可以在访问者成功路由到坐席后隐藏队列计数器。这样,坐席即可从收件箱中移除客户卡,而不会被访问者察觉。

cxone('chat','hideQueueCounterAfterAssignment');

设置活动状态

更改活动栏中的消息。例如,您可以使用它来传达您对聊天消息传递关闭 异步聊天,联系人可随时发送聊天消息并等待回复会话的响应时间。因为聊天消息传递是一种异步的聊天形式,因此访问者可能必须等到坐席才能收到消息,这一功能就会比较实用。

cxone('chat','setStatusMessage', 'We typically reply within 3 hours.');

设置坐席的图像

动态更改聊天窗口中显示的坐席图像。默认情况下, Guide 使用坐席配置文件中的图像。当您在脚本中包含此调用时,它会使用代码片段中 URL 指定的图像。将示例 URL 替换为您希望聊天使用的图像的 URL。

cxone('chat','setAgentImage', 'http://classics.com/images/agents/elizabeth_bennet.png');

设置客户名称

客户姓名是联系前调查表单上的一个字段,访问者需要在与聊天消息传递关闭 异步聊天,联系人可随时发送聊天消息并等待回复信道上的坐席聊天之前完成填写。此 API 调用会动态填充该字段。

cxone('chat','setCustomerName', 'Elizabeth');

设置日期格式

将日期格式设置为绝对日期格式 (01/01/2022) 或相对日期格式(今天、星期一)。

cxone('chat','setDateFormat', 'date_format');

设置区域

设置聊天窗口中翻译的区域。

cxone('chat','setLocale', 'locale');

显示案例信息

仅限聊天消息关闭 异步聊天,联系人可随时发送聊天消息并等待回复渠道。向访问者显示案例信息

cxone('chat','showCaseInfo');

显示/隐藏“发送转录”按钮

如果将发送转录按钮设置为可见,则必须配置聊天信道,允许访问者将聊天转录发送给自己。为聊天消息传递实时聊天配置此选项。

cxone('chat','showSendTranscript');
cxone('chat','hideSendTranscript');

显示/隐藏系统消息

显示或隐藏坐席分配历史记录等系统消息。

cxone('chat','showSystemMessages');
cxone('chat','hideSystemMessages');

使用条款

您可以在聊天窗口中向访问者提供使用条款文档。此功能可以向窗口添加一个按钮。您可以自定义按钮的标签和样式,以及访问者单击它时发生的操作。单击操作可以将使用条款显示为内部窗口或外部链接。

内部窗口:

cxone('chat','showTermsOfUse', 'Show terms of Use', 'modal' , 'Our terms of use are ...');

外部链接:

cxone('chat','showTermsOfUse', 'Show terms of Use', 'externalLink' , 'http://yourdomain.com/terms-of-use');

要禁用该功能:

cxone('chat','hideTermsOfUse');

自定义字段、标签和短语

创建和填充自定义字段

可与此调用一起使用的自定义字段客户卡 中可用的字段相同。如果您在打开聊天窗口之前使用这些调用,联系前表单中的字段将填充您加入 API 调用的数据。

如要定义案例自定义字段的值:

cxone('chat','setCaseCustomField', 'ident_of_custom_field', 'value_of_custom_field');

如要定义客户卡自定义字段的值:

cxone('chat','setCustomerCustomField', 'ident_of_custom_field', 'value_of_custom_field');

自定义标签和短语

您可以自定义 Guide 聊天所用的许多标签和短语,以及对自定义进行定义。如果您需要动态更改短语或屏幕标签,请使用这些 API 调用。

要更改单个消息或标签:

cxone('chat','setTranslation', 'key', 'your translation');

要更改多个消息或标签:

cxone('chat','setTranslations', {key1: 'your custom label', key2: 'your custom message'});

聊天窗口外观 API 调用

您可以修改Guide所用的聊天窗口的外观。

隐藏分配的坐席

cxone('chat','hideAssignedAgent');

隐藏标题

cxone('chat','hideHeader');

显示客户头像

cxone('chat','showCustomerAvatar');

显示发送按钮

cxone('chat','showSendButton');

为回复框设置字符限制

cxone('chat','setReplyBoxLimit', '280');

带有数据选择器的自定义 CSS

您可以通过使用 API 调用中的数据选择器的自定义 CSS,来自定义聊天窗口的外观。数据选择器允许您指定要应用自定义 CSS 的聊天窗口部分。使用 data-selector 属性定义数据选择器。将其设置为您要修改的聊天窗口组件的名称。

要使用数据选择器添加自定义 CSS,请使用此 API 调用作为参考:

cxone('chat','setCustomCss', '[data-selector="CUSTOMER_MESSAGE_BUBBLE"] {color: white !important; background: black !important};');

仅使用 data-selector 属性应用自定义 CSS 组件。请勿将其应用于类选择器或 JavaScript 代码的其他部分,例如本示例:

.Widget__Widget___1qQCf { background: red; }

与第三方应用程序集成

当某些聊天事件发生时,此部分中的调用允许您接收推送通知。

在聊天窗口中识别活动线程

cxone('chat','getOngoingThreads');

在聊天窗口中识别正在进行的联系

cxone('chat','getOngoingContact');

接收特定聊天事件的推送通知

接收一个聊天事件的通知:

cxone('chat','onPushUpdate', 'event', callback);

接收多个聊天事件的通知:

cxone('chat','onPushUpdate', ['event', 'event', 'event'], callback);

接收所有聊天事件的通知:

cxone('chat','onAnyPushUpdate', callback);