在 B2B 支持中,根据当前连接到您帐户的人员来限制知识库和/或联系表格中的特定内容是很常见的。例如,当支持多个公司时,您不希望公司 A 看到公司 B 的知识库文章。公司 C 可能是唯一被允许查看特定工单表格的公司。或者,D 公司想要一个特定的电邮模板。每个公司都有不同的自定义,您需要掌握它们。
在本文中,我将向您展示如何在 Zendesk Support 中轻松一劳永逸地自定义终端用户的知识库、电邮模板和工单表格。更好的是,我将向您展示如何使用单点登录 (SSO) 自动执行此过程。
我们将分 4 个部分进行:
设置 JSON 网络密钥以启用单点登录
为简化此过程,我们将使用单点登录,根据您数据库中的现有信息创建终端用户。例如,既然您知道 Travis Bickle 先生在组织 BlueBerry 工作,您可以将他视为 VIP,并且该信息已经存在于您的数据库中。我们只需在 Zendesk Support 中即时创建此用户,并将其放在正确的组织中。
然后,我们将使用该组织来限制对知识库文章和/或工单表格的访问。
- 在 管理中心中,单击 帐户 图标 (),然后选择 安全 > 单点登录标签。
- 对于JSON 网络密钥,单击配置。
- 按照 此指南 在您的身份管理系统和 Zendesk Support 之间设置 JSON 网络密钥(欢迎使用我们的 开源脚本 )
- 在您的 JWT 有效载荷中包含 组织属性,以便每次在正确的组织中创建终端用户。
JWT claims hash: {"iat"=>xxx, "jti"=>yyy, "name"=>"Travis Bickle", "email"=>"t.bickle@gmail.com", "external_id"=>"5678", "organization"=>"BlueBerry", "tags"=>"vip", "locale_id"=>"8"}
如上图所示,是在 BlueBerry 工作的 Travis 的回复示例,终端用户个人资料标签为 vip 。例如,当终端用户连接到您的网站并单击 Support 链接时,我们将使用正确的信息在 Zendesk Support 中创建该终端用户帐户,如下所示:
创建受限知识库
使用帮助中心的一大优势是能够创建多个知识库,并通过一个 Zendesk Support 实例按终端用户的语言、标签或组织限制对其访问。在此示例中,我们将重点关注组织 BlueBerry from Travis。
- 以管理员身份登录 Zendesk,单击 帮助中心 图标 ( )。
- 创建您的帮助中心内容 ,并为“蓝莓”添加一个特定的组别,继续本例。
- 将对 特定组别的访问权限限制 为仅限 BlueBERG 工作人员访问。
现在只有组织中的 终端用户 可以访问此内容。
例如,我们现在可以更进一步,已经根据带有标签 vip 的终端用户限制访问。在同一个帮助中心里,您还可以找到多种可能性。我们暂时保持简单。
自定义帮助中心主题以隐藏/显示工单表格
工单表格要么对所有终端用户可见,要么不可见。现在我们需要创建工单字段,将其添加到表格中,并使用 JavaScript 使表格根据已连接的终端用户自动显示/隐藏。
- 在 管理中心中,单击 对象和规则 图标 (),然后选择 工单 > 字段。
- 创建工单字段 。 不要忘记将字段设置为“可编辑”,以便您的终端用户看到。
- 创建至少两个工单表格 。 不要忘记将其设置为对您的终端用户可见。
- 现在我们将处理组织名称 BlueBerry、特定的 BlueBerry 工单表格 ID,并添加一些 JavaScript 到我们的帮助中心。
我们的同事 Robber 发表了一条提示,解释如何隐藏/显示字段。参见此处 。
查找工单表格 ID
- 在 管理中心中,单击 对象和规则 图标 (),然后选择 工单 > 表格。
- 从您的工单表格列表中选择合适的工单表格。
- 在 URL 中最后一个斜杠后找到 ID 号。
查找组织名称
- 在 Support 中,单击侧栏中的组织图标 ()。
- 浏览或搜索组织以找到正确的组织名称。我们将继续以 BlueBlackBerry 为例
祝您 JavaScript 愉快
$(window).load(function() {
var i = 0;
var cZendesk = false; //assume user is not part of the BlueBerry Organization
//reserve space for additional organizations
var checkExist = setInterval(function() {
i++;
if ($("a.nesty-input").length){
clearInterval(checkExist);
$("a.nesty-input").each(function() {
$(this).bind( "click", function() {
for (var c in HelpCenter.user.organizations) {
if (HelpCenter.user.organizations[c].name == "BlueBerry"){
cZendesk = true; //if user is part of the organization called "BlueBerry", then set its variable to true.
}
//reserve space for additional organizations
}
if (!cZendesk){
$("#TICKET_FORM_ID").remove(); //replace the "TICKET_FORM_ID" with the proper id from the dropdown list. Leave the pound sign intact.
}
//reserve space for additional organizations
});
});
}
if (i > 10){
clearInterval(checkExist);
}
}, 100);
});
重要提示! 您需要编辑上面的代码,请按照以下步骤操作。
- 将“TICKET_FORM_ID”替换为我们在上面找到的实际工单表格 ID。
- 将“蓝莓”替换为您要为其显示工单表格的实际组织。
- 复制上面的代码块。
- 将代码粘贴到 您帮助中心的 JavaScript 部分 。
- 保存模板并发布更改以查看效果。
自定义出站电邮的外观
此操作是可选的,但您可能还希望从 BlueBerry 发送到 Travis 的电邮与发送给“常规”客户的电邮有不同的外观和风格。您可以使用 Liquid Markup 和触发器来实现这一点。
- 在 管理中心中,单击 对象和规则 图标 (),然后选择 业务规则 > 触发器。
- 继续这个例子,让我们创建一个带有条件的触发器:
- 工单已创建
- 组织是 BlueBERG
- 和操作:
- 添加标签 蓝莓
- 如果您已在 渠道 > 电邮 下的电邮模板中添加了公司徽标,则可能需要将其移除。
- 返回“触发器”,找到名为“将已收到的请求通知请求者”的默认触发器并 复制 。
- 在条件中,添加
- 工单标签包含以下值之一 - 蓝莓
- 向下滚动到操作并修改正在发送的电邮
原始内容如下:
Your request ({{ticket.id}}) has been received and is being reviewed by our support staff.<br /><br />To add additional comments, reply to this email.<br /><br />
新内容如下:
{% capture tags %}
{{ ticket.tags }}
{% endcapture %}
{% if tags contains 'blueberry' %}
<img src="https://LINK/TO/LOGO.png" /></center>
{% endif %}
Your request ({{ticket.id}}) has been received and is being reviewed by our support staff.<br /><br />To add additional comments, reply to this email.<br /><br />
我们使用 Liquid Markup 来捕获工单标签,并根据工单中的标签添加条件以添加不同的徽标。
最终结果
这样就完成了!现在您可以依靠此自定义项,从您的身份管理系统通过 SSO 自动创建终端用户。终端用户将只能访问其应查看的信息,而无权访问。
现在,让我们看看来自 BlueBerry 的终端用户 Travis 看到的内容与来自不同组织的终端用户相比有什么不同。
之前(工单提交):
之后(工单提交):
之前(知识库):
之后(知识库):
之前(电邮):
之后(电邮):
翻译免责声明:本文章使用自动翻译软件翻译,以便您了解基本内容。 我们已采取合理措施提供准确翻译,但不保证翻译准确性
如对翻译准确性有任何疑问,请以文章的英语版本为准。