使用分机点自定义点击拨号

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

您可以使用扩展点在适用于 Salesforce 的 Genesys Cloud 中自定义点击拨号行为。 扩展点使用 Salesforce Apex 编程语言。

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

必备

  • 包含 “扩展点设置” 部分的托管软件包的版本。 有关详细信息,请参阅 配置扩展点

在 Salesforce 中,使用实现了 purecloud.cti.Clicktodial 接口的 Apex 类创建单个 Apex 文件。 将 Apex 类定义为全局类,以便集成可以调用代码。

purecloud.cti.Lick.TI.CLICKTODAL 接口

包含一个方法签名,您可以定义该签名以在 Genesys Cloud 中自定义 Salesforce 中的点击拨号功能。

使用

使用 purecloud.cti.clicktoDial 界面中的方法签名来定义点击拨号功能的工作方式。

onClickToDial 方法

发起电话或短信。 

当 Salesforce 向客户发出有关点击拨号事件的警报时,客户端将根据您的 Apex 代码中的参数执行点击拨号事件。 该方法可以返回更改默认点击拨号行为的数据。

如果 Apex 代码触发异常,则集成将执行默认的点击拨号行为。 如果未返回任何值,则集成将禁止点击拨号行为。

输入属性

传递给方法的 JSON 数据中包含以下属性。

姓名 数据类型 描述 注释
号码 字符串 集成调用的电话号码。
对象 字符串 Salesforce 中的对象类型,例如联系人或帐户。
对象 ID 字符串 要与活动自动关联的相关对象(例如联系人或帐户)的 ID。 ObjectID 仅适用于单个记录。 
对象名 字符串 Salesforce 中记录的名称。

输出属性

从方法返回的 JSON 数据中支持以下属性。

姓名 数据类型 描述 注释
号码 字符串 请参阅 输入属性 表。
对象 字符串 请参阅 输入属性 表。
对象 ID 字符串 请参阅 输入属性 表。
对象名 字符串 请参阅 输入属性 表。
属性 对象 要添加到交互组件的键值对属性。
queueId 字符串 要代表其进行呼叫的队列的 ID。
自动放置 布尔值 集成会自动拨打电话 (true),或者集成会在 “姓名” 或 “号码” 框中填充电话号码 (false)。
类型 字符串 交互类型。

有效值: 打电话,短信。 

如果未提供 任何 类型,则默认为 call。 

主叫姓名 字符串 向电话接听者显示的姓名。
来电者 ID 字符串 向电话接听者显示的电话号码。
关联 阵列 要添加到客户端的 “名称” 或 “相关对象” 框中的 Salesforce 记录的列表。

有关详细信息,请参阅自定义 Visualforce 页面上的点 拨号配置点击拨号和 创建点击拨号。 

示例

重要提示:
  • 将 Apex 类定义为全局类,以便集成可以调用代码。
  • 如果实现多个扩展点(或接口),请将它们全部放在同一个 Apex 文件中。
global class MyCTIExtensions implements purecloud.CTIExtension.ClickToDial {
    public String onClickToDial(String data) {
        // Example: Specify On Behalf of Queue, Caller ID and Name for click-to-dial.
        Map<String, Object> clickToDialData = (Map<String, Object>) JSON.deserializeUntyped(data);
        clickToDialData.put('queueId', '04a183b6-de9e-4c01-9e88-eab81799ad0d');
        clickToDialData.put('callerIdName', 'John Smith');
        clickToDialData.put('callerId', '+13175550123');
        return JSON.serialize(clickToDialData);
    }
}

有关更多信息,请参阅适用于 Salesforce 的 Genesys 云中的 扩展点

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