使用开发工具包路由 Salesforce 电子邮件

注意: 本文适用于适用于 Salesforce 的 Genesys 云。

在 Salesforce 中配置 Salesforce 电子邮件的路由后,请使用托管软件包中的 SDK 通过 Genesys Cloud 进行 Salesforce 电子邮件路由。 该软件开发工具包使用 Salesforce Apex 编程语言。 

注意: 这篇高级自定义文章面向熟悉 Salesforce 的开发人员。

必备

  • 配置身份验证。

通过 Pure cloud.sdk.email 和 purecloud.email 命名空间下的电子邮件类访问我们的软 件开发工具包。 使用 P ureCloud.email 命名空间设置主题、FromName 和 FromAddress 的信息。

电子邮件类

包含通过适用于 Salesforce 的 Genesys Cloud 路由 Salesforce 电子邮件的静态方法。

名称空间

Purecloud.sdk. 电子邮件

使用

使用这些方法创建 Genesys Cloud 电子邮件对象,这些对象通过 Genesys Cloud 进行 Salesforce 路由 Salesforce 的电子邮件。 这些对象可以包含用于设置屏幕弹出窗口、修改交互详细信息或向 Salesforce 中的活动记录添加数据的数据。

邮件方法

以下方法可用于 Email 类。

将电子邮件互动路由到指定队列,屏幕会弹出指定的 Salesforce 页面。

参数

姓名 数据类型 描述 注释
队列 字符串 在您希望 Salesforce 电子邮件路由到的 Genesys Cloud 组织中排队。 在交互详细信息中映射到 call.queueName。
sfurlpopValue 字符串 要在交互提醒时弹出的 Salesforce 页面 URL 中的值。

示例

以下示例说明如何执行这些操作:

  • 将 Salesforce 电子邮件路由到指定队列。
  • 屏幕弹出指定的 Salesforce 页面。

使用 Apex 代码的交互详情

purecloud.SDK.Email.create('CustomerService', '500360000015OCJ');

将 Salesforce 电子邮件路由给指定队列中的座席,这些座席在 Genesys Cloud 组织中被分配了指定的技能和语言,然后使用属性参数执行操作。

参数

姓名 数据类型 描述 注释
队列 字符串 在您希望集成将 Salesforce 电子邮件路由到的 Genesys Cloud 组织中排队。 在交互详细信息中映射到 call.queueName。
技能 列表<String> Genesys Cloud 组织中的技能列表。  与您想要接收 Salesforce 电子邮件的座席相关联。
语言 字符串 Genesys Cloud 组织的语言技能。  与您想要接收 Salesforce 电子邮件的座席相关联。
属性 地图<String, Object=""> 请参见 属性映射

属性映射

可包含 Salesforce 页面或搜索结果或要添加到 Salesforce 中交互详细信息或活动记录的数据的属性映射。

参数

类型 必填或可选 描述 注释
SF_urlPop 字符串 可选 当互动提醒时要屏幕弹出的 Salesforce 页面的 ID 使用 sf_urlPop 或 sf_search 值,而不是同时使用两者。 为了更快地处理屏幕弹出窗口,请使用 SF_urlPop。
SF_SEARCHVALUE 字符串 可选 当互动提醒时要屏幕弹出的 Salesforce 搜索结果的 ID 使用 sf_urlPop 或 sf_search 值,而不是同时使用两者。 为了更快地处理屏幕弹出窗口,请使用 SF_urlPop。
自定义属性 字符串、整数、布尔值 可选 交互提醒时要添加到交互详细信息或活动记录的数据。

示例

以下示例说明如何执行这些操作:

  • 将 Salesforce 电子邮件路由给指定队列中分配了指定技能和语言的座席。
  • 屏幕弹出指定的 Salesforce 页面。
  • 在交互详情中添加案例编号。
  • 将远程电子邮件地址添加到 Salesforce 中的活动记录中。

注意: 由于 casenNumber 和 ContactemailAddress 是自定义属性,因此必须首先添加参与者。{customFieldName} 到客户端设置下的自定义交互详细信息和活动字段映射部分。 有关客户端设置的更多信息,请参阅 托管软件包设置。 

使用 Apex 代码的交互详情

String[] skills = new List<String>();
skills.add('Warranties');
skills.add('Cellphone repair');

String language = 'English - Spoken';

Map<String, Object> attributes = new Map<String, Object>();
attributes.put('SF_URLPop', '500360000015OCJ');
attributes.put('CaseNumber', 'Case: 000149');
attributes.put('contactEmailAddress', 'john.smith@customer.com');

purecloud.SDK.Email.create('CustomerService', skills, language, attributes);

实例化 purecloud。电子邮件 对象。 请参阅 P urecloud。电子邮件 选项卡。 

电子邮件类

代表 Genesys Cloud 电子邮件交互。 包含通过适用于 Salesforce 的 Genesys Cloud 路由 Salesforce 电子邮件的方法。

名称空间

Purecloud。电子邮件

使用

使用这些方法创建 Genesys Cloud 电子邮件对象。 这些对象可以包含用于设置屏幕弹出窗口、修改交互详细信息或向 Salesforce 中的活动记录添加数据的数据。 这些对象还可以设置主题、fromName 和 fromAddress 的信息。

邮件方法

以下方法可用于 Email 类。

使用已定义的实例属性创建 Genesys Cloud 交互。 

属性

姓名 数据类型 描述 注释
队列 字符串 在您希望集成将 Salesforce 电子邮件路由到的 Genesys Cloud 组织中排队。 在交互详细信息中映射到 call.queueName。
技能 列表<String> Genesys Cloud 组织中的技能列表。  与您想要接收 Salesforce 电子邮件的座席相关联。
语言 字符串 Genesys Cloud 组织的语言技能。  与您想要接收 Salesforce 电子邮件的座席相关联。
属性 地图<String, Object=""> 请参见 属性映射
主题 字符串 通过电子邮件发送活动的主题行。 在交互提醒时添加到交互详细信息中。 在交互详细信息中映射到电子邮件主题。
发件人姓名 字符串 活动交互组件的远程名称。 在交互提醒时添加到交互详细信息中。 在交互详细信息中映射到 call.remotenAME。
发送地址 字符串 活动交互的远程电子邮件地址。 在交互提醒时添加到交互详细信息中。 在交互详细信息中映射到 Salesforce.DisplayAddress。

属性映射

可包含 Salesforce 页面或搜索结果或要添加到 Salesforce 中交互详细信息或活动记录的数据的属性映射。

参数

类型 必填或可选 描述 注释
SF_urlPop 字符串 可选 当交互提醒时,您想要屏幕弹出的 Salesforce 页面的 ID。 使用 sf_urlPop 或 sf_search 值,而不是同时使用两者。 为了更快地处理屏幕弹出窗口,请使用 SF_urlPop。
SF_SEARCHVALUE 字符串 可选 要在交互提醒时弹出的 Salesforce 搜索结果的 ID。 使用 sf_urlPop 或 sf_search 值,而不是同时使用两者。 为了更快地处理屏幕弹出窗口,请使用 SF_urlPop。
自定义属性 字符串、整数、布尔值 可选 交互提醒时要添加到交互详细信息或活动记录的数据

示例

以下示例说明如何创建电子邮件对象以及如何使用属性执行这些操作:

  • 将 Salesforce 电子邮件路由给指定队列中分配了技能和语言的座席,或者使用 Architect 入站电子邮件流和分配的技能和语言将 Salesforce 电子邮件路由给座席。
  • 屏幕弹出指定的 Salesforce 页面。
  • 在交互详情中添加案例编号。
  • 将远程电子邮件地址添加到 Salesforce 中的活动记录中。
  • 将主题、fromName 和 fromAddress 属性添加到交互详细信息中。

注意: 由于 casenNumber 和 ContactemailAddress 是自定义属性,因此必须首先添加参与者。{customFieldName} 到客户端设置下的自定义交互详细信息和活动字段映射部分。 有关客户端设置的更多信息,请参阅 托管软件包设置。 

使用 Apex 代码的交互详情

使用队列路由 Salesforce 电子邮件的示例

String[] skills = new List<String>();
skills.add('Warranties');
skills.add('Cellphone repair');

Map<String, Object> attributes = new Map<String, Object>();
attributes.put('SF_URLPop', '500360000015OCJ');
attributes.put('CaseNumber', 'Case: 000149');
attributes.put('contactEmailAddress', 'john.smith@customer.com');

purecloud.Email email = purecloud.SDK.Email.create();
email.queue = 'CustomerService';
email.skills = skills;
email.language = 'English - Spoken';
email.attributes = attributes;
email.subject = 'Warranty Question'; 
email.fromName = 'John Smith'; 
email.fromAddress = 'john.smith@customer.com'; 
email.create();

使用入站电子邮件流路由 Salesforce 电子邮件的示例

Map<String, Object> attributes = new Map<String, Object>();
attributes.put('SF_URLPop', '500360000015OCJ');
attributes.put('CaseNumber', 'Case: 000149');
attributes.put('contactEmailAddress', 'john.smith@customer.com');

purecloud.Email email = purecloud.SDK.Email.create();
email.flow = 'RouteEmails';
email.attributes = attributes;
email.subject = 'Warranty Question'; 
email.fromName = 'John Smith'; 
email.fromAddress = 'john.smith@customer.com'; 
email.create();

有关更多信息,请参阅配置 Salesforce 电子邮件的路由使用流程生成器来路由 Salesforce 电子邮件关于 Salesforce 电子邮件的路由。 

有关集成的更多信息,请参阅 关于适用于 Salesforce 的 Genesys Cloud