65.9K
CodeProject 正在变化。 阅读更多。
Home

通过更新的 Spokes SDK 实现高级呼叫管理 ICallCommand:优势!

2012年11月7日

CPOL

3分钟阅读

viewsIcon

17155

高级呼叫管理 ICallCommand:更新的 Spokes SDK 的优势

 

过去,与缤特力设备的集成通常通过较低级别的 SDK 完成,该 SDK 仅公开原始设备事件和设备命令。

现在,集成商可以受益于更简单、更高级别的接口,其中许多困难的工作已经为您完成,尤其是在耳机和应用程序之间的呼叫状态管理方面。

这使得集成和支持最新的缤特力设备以及处理多个来电场景变得更加快捷和容易!

Spokes SDK 有 3 种集成方式:COM 服务、REST 服务和 iPlugin SDK。 注意:所有这些都需要安装并运行 Spokes 运行时。(有关更多信息,请阅读:Spokes 到底是什么?)。

我最近在探索 ICallCommand 呼叫管理接口,并想在这里分享一些想法/结果。

来电流程

如果您正在基于 C++ SpokesSDKCOMSampleC# SpokesSDKCOMNETSample 进行软电话集成,则可以实现以下流程

  • 您的软电话有来电
  • 调用缤特力 SDK 的 “callcommand->IncomingCall” 函数
    • 传递一个包含呼叫唯一数字 ID 的 ICall 对象
    • 可选地传递一个包含联系人姓名(来电显示)的 IContact 对象,以便在支持的 Calisto 扬声器/手机设备屏幕上显示,否则传递空字符串
  • 这将导致缤特力设备进入 PC/VoIP 线路响铃状态,并预计下一次按下“通话”按钮将接听电话
  • 用户按下“通话”按钮,Spokes 通过 CallStateEventHandler 回调函数通知您的软电话呼叫正在进行中
    • 在收到此回调后,根据回调参数中的呼叫 ID 和呼叫状态,您的软电话可以连接呼叫!(或者根据呼叫状态采取其他操作,例如将呼叫置于保持状态等)
  • 然后在第一个呼叫仍在进行中时,第二个呼叫进入!
  • 像以前一样调用 IncomingCall 函数,使用不同的呼叫 ID
  • 用户可以选择终止第一个呼叫(通话按钮)并接听第二个呼叫(通话按钮),或者用户可以选择将第一个呼叫置于保持状态并接听第二个呼叫(闪烁按钮,见下文)
  • 同样,呼叫状态更改通过 CallStateEventHandler 通知

来电显示可以在支持的 Calisto 设备的显示屏上显示。

演示...

可以通过以下示例代码演示此流程:C++ SpokesSDKCOMSample,或 C# SpokesSDKCOMNETSample

使用 SpokesSDKCOMSample 测试处理多个来电

  • 下面的屏幕截图显示了示例应用程序两次输入“incoming”以模拟 2 个来电

  • 结果:当第 2呼叫进入(响铃)时,按下闪烁按钮将接听第 2呼叫,将第 1呼叫置于保持状态。 再次按下闪烁按钮将切换回第 1呼叫,将第 2呼叫置于保持状态。 您可以根据需要执行此操作。
  • Spokes SDK 通过 “呼叫状态” CallStateEventHandler 回调告诉您的应用程序要将呼叫设置为哪个呼叫状态
  • 按下“通话”将终止活动呼叫。 保持状态的呼叫将保持保持状态,直到您再次按下“闪烁”以切换到它(激活它)。
  • 新版 SDK 的另一个好处是它支持拨号盘功能,例如 Calisto P240 和 800 系列以及 Savi 7xx 的多线路功能。

注意:此测试是使用缤特力 Savi 745 设备完成的。 并非所有产品都支持 “闪烁按钮” 呼叫切换功能。 如果有疑问,请查看 www.plantronics.com 上的用户手册

本文由 Lewis Collins 贡献。 他于 2011 年 8 月加入缤特力工程团队。 在此职位上,他为团队内部以及希望与缤特力 SDK 工具包和耳机产品集成的外部开发合作伙伴提供软件咨询和专业知识。 此前,Lewis 在广泛的软件工程活动和技术方面获得了经验,曾在 Integraph 担任软件工程师,担任 Altran Technologies UK 的顾问以及 Teleca Ltd. 的软件工程师,并在电信和公共安全部门工作。

© . All rights reserved.