创建适用于统一服务台的 CTI 适配器的注意事项

 

发布日期: 2016年11月

适用于: Dynamics 365 (online),Dynamics 365 (on-premises),Dynamics CRM 2013,Dynamics CRM 2015,Dynamics CRM 2016

本主题提供了有关在创建计算机电话集成 (CTI) 适配器以使其可以用于 Unified Service Desk 时要考虑事项的信息。

本主题内容

CTI 控件 (软件电话用户界面) 规范

支持电话功能的操作

CTI 屏幕弹出消息

CTI 搜索

聊天事件的特殊功能

CTI 控件 (软件电话用户界面) 规范

要确保软件电话和 CTI 用户界面组件与 Unified Service Desk 进行交互操作,请确保做到以下几点:

  • 使用 Windows Presentation Foundation (WPF) 创建并从 DynamicsBaseHostedControl 类派生控件。

  • CTI 控件防置于 Unified Service Desk 的 CtiPanel 面板上。 控件的高度应是 23 以适应 CtiPanel 的大小。 可以使用较大的控件。

  • CtiPanel 上可以存在多个 CTI 控件或用户界面组件。 这是一个水平堆栈面板,因此,如果您有多个控件在此面板上,各控件将相邻显示。

支持电话功能的操作

Unified Service Desk 的一个功能是无需编程就可以配置高级应用程序设计的能力。 通过 Unified Service Desk 中的操作概念公开这种功能。 要实现将电话控件功能扩展到按钮、代理脚本和托管应用程序中的链接这个想法,系统要依靠为 CTI 适配器所显示的能力而定义的操作。 这要通过显示您的 CTI 组件的 CTI Desktop Manager 托管控件中的 UII 操作实现。 每个操作都给予了管理员对应用程序的更多控制权。

建议在 CTI Desktop Manager 托管控件中定义并实施以下操作:

操作​​

说明

拨号

呼叫号码。 如果未提供此参数,则会显示拨号盘供用户输入数字。

如果呼叫为当前呼叫,像为 IVR 一样,此操作将拨号数字。

转账

这将启动或完成转接。 如果启动了转接,但是没有完成,则将转接电话并拒绝参数。 如果存在当前呼叫,这会保持通话并进行一次传递上下文数据的新呼叫。

会议

这将启动或完成会议。 如果启动了会议,但是没有完成,则将开电话会议并拒绝参数。 如果存在当前呼叫,这会保持通话并进行一次传递上下文数据的新呼叫。

挂断

这会结束当前呼叫。

备注

如果 CTI Desktop Manager 托管控件支持这些操作,用户将能够从应用程序内的许多位置触发此功能,从而提供紧密集成的代理体验。

CTI 屏幕弹出消息

您在 Unified Service Desk 中设计 CTI 屏幕弹出消息时,必须确保以下事项。

  • 必须填充 CTI 请求的 CallInfo 参数的以下值:

    参数

    说明

    方向

    为传入呼叫指定“inbound”,为传出呼叫指定“outbound”。

    系统用此允许管理员指定取决于呼叫方向的不同行为。

    Calltype

    为语音呼叫指定“phonecall”,为聊天会话指定“chat”。

  • CTI 适配器不应自动在 Microsoft Dynamics 365 中创建活动,因为这并非总是必需的行为。 因此,这应留给系统管理员配置。

    try
    {
      FireRequestAction(new RequestActionEventArgs("*", CtiLookuprequest.CTILOOKUPACTIONNAME,GeneralFunctions.Serialize<CtiLookupRequest>(data)));
    }
    

备注

假定 CTILOOKUPACTIONNAME 用于调用 CTI 操作,应用程序名称将为“*”,如示例代码中所示。

重要

为不遵循 User Interface Integration (UII) CTI 框架的 Unified Service Desk 创建 CTI 适配器是可能的。

CTI 搜索

使用 Dynamics 365 中的 FetchXML 完成 CTI 搜索。 您可以使用来自 CTI 的任何参数中传递的任何数据在 Dynamics 365 中搜索您实体的任意字段。 一次搜索一个规则,直到发现匹配项。 一旦在 Unified Service Desk 中找到了 Window 导航规则的匹配项,下一步将遵循导航规则中配置的指南。 通常,设置规则以打开关于活动的会话,并选择性地显示选项卡中的活动。 有关如何配置窗口导航规则以执行 CTI 搜索的详细信息,请参阅 演练:为 CTI 事件路由使用通用侦听器适配器

使用 Unified Service Desk 中的 Window 导航规则配置示例 CTI 搜索规则。 有关窗口导航规则的详细信息,请参阅 在统一服务台中使用 Windows 导航规则

  1. 在导航栏上,选择“Microsoft Dynamics 365”,然后选择“设置”。

  2. 在导航栏上,选择“设置”,然后选择“窗口导航规则”。

  3. 选择“新建”。

  4. 键入 Window 导航规则的名称和顺序。 在“起始”框中,选择您的 CTI CTI Desktop Manager 托管控件。

  5. 选择了您的 CTI Desktop Manager 后,CTI 选项将以一个启动活动开始显示。 启动活动字段应包含从 CTI 适配器传递的实体类型。 例如,它可以是电话呼叫、聊天、电子邮件等等。 一个规则只处理 CTI 服务器的一种活动类型。

    用于路由 CTI 事件的新窗口导航规则

  6. 单击右下角的“保存”保存记录,并为下一步启用所需字段。

  7. 在“CTI 搜索”中单击搜索图标,然后在搜索框中单击“新建”使用 FetchXML 查询定义新搜索条件。

  8. 在“新 CTI 搜索”屏幕中指定 CTI 搜索查询的名称和顺序。 方向字段为传入或传出,只用于搜索 CTI 事件的特定方向。 此方向从 CTI 适配器传递。

    为 CTI 搜索输入所需的 FetchXML 查询。 使用 Dynamics 365 中的高级查找功能,创建您的初始搜索,然后下载 FetchXML。 该关键字段在 Microsoft Dynamics 365 高级查找搜索中常常不可用,所以您可能发现在导出后,您需要手动将条件添加到 XML。 还应选择希望在 Unified Service Desk 上下文中显示的属性。 立即显示这些内容,而不是像其他类型的数据参数将页面加载到显示后填充。 一旦您拥有了所需的 FetchXML,请将该文本粘贴到“FetchXML”框,并保存 CTI 搜索规则。

    Unified Service Desk 中的新 CTI 搜索

  9. 系统将搜索规则的每个 CTI 搜索项。 可以将这看作类似于交叉实体搜索。 这些条件与最终结果集相关,可能在处理多个结果的情况下,指示在多个实体类型中找到了一个或多个记录。

    搜索列表下是三个用于指示在每个案例中进行哪些操作的条件和选择。

    条件

    说明

    没有匹配项

    如果在规则中指定的所有搜索中未发现匹配项,那么系统该如何操作呢?

    单个匹配项

    在只发现了通过组合搜索得到的一个记录时,系统该如何操作?

    多个匹配项

    如果在所有搜索中发现了多个结果,系统该如何操作?

    对于每个条件,要去决定该做些什么。

    决策

    说明

    创建会话,然后执行操作

    在触发配置操作之前创建新会话。 在此新会话的上下文中将触发该操作。

    创建会话,加载匹配项然后执行操作

    创建一次会话,然后基于 Microsoft Dynamics 365 窗体的”结果选项卡“将匹配项加载到选项卡或实体搜索中。 最后,它即称为一个操作。 此选项仅针对单个匹配项有效。

    执行操作

    告诉系统对结果不进行任何操作,但是针对这个条件可以选择性地调用已配置的操作。 因此,如果要按顺序调用多个操作,您可以调用全局管理器托管控件上的 FireEvent 操作。 将在当前会话的上下文中触发该操作。 将不再会创建新会话。

    下一个规则

    指示系统忽略对这个规则的余下处理并查找可能匹配的其他规则。 新搜索将对后续规则执行操作。

    重要

    在系统不选择在您的导航规则中配置的“下一规则”选项的任何时间,它也将自己执行对导航规则执行配置操作。 若要只在特定案例中执行规则,您应该在那节使用该操作。 对于应该执行有关一般目的的操作,无论选择哪个,您可以在导航规则的操作列表中将其输入。

聊天事件的特殊功能

在响应聊天时间时,在系统中会发生一些特殊事项。 假定用 CTI Desktop Manager 托管控件名称填充 CTI 事件数据参数“CTIDESKTOPMANAGERCONTROL”值,则该参数支持 SendIM 操作。 如果传递到 CtiLookupRequestCALLTYPE 是“聊天”,Unified Service Desk 将在代理脚本用户界面上显示其他按钮。 如果代理单击此按钮,即尝试调用在CTIDESKTOPMANAGERCONTROL 控件中指定的 CTI Desktop Manager 托管控件上的 SendIM操作。 它将代理脚本的文本传递到此操作,假定 CTI Desktop Manager 托管控件将此文本编写到聊天输出。

另请参阅

CTIDESKTOPMANAGERCONTROL
UII 计算机电话服务集成 (CTI) 框架
创建 CTI 桌面管理器
在统一服务台中使用 Windows 导航规则
演练:为 CTI 事件路由使用通用侦听器适配器

Unified Service Desk 2.0

© 2017 Microsoft。 保留所有权利。 版权