提前警告:我是Dynamics CRM的绝对新手!
我希望有一个像Lync / Skype集成的功能,但使用我自己的URL。 (单击CRM中的任何电话号码并将其调用)。
例如。假设我有一个可以按URL启动呼叫的Web服务:http://telephony.com/call?nr=012345678
。现在,只要CRM用户点击CRM中的电话号码字段(在表单和视图中),就应该调用我的Web服务而不是Skype / Lync。
事实上我正在尝试重现某事。比如InGenius Connecter。
我已经尝试将JS Web资源注入特定的公式(在我的情况下,它是默认的联系表单)并覆盖Mscrm.ReadFormUtilities.openPhoneClient
回调(它似乎处理Lync / Skype集成)。
function load() {
// override integrated CTC (Lync/Skype)
Mscrm.ReadFormUtilities.openPhoneClient = function (telephoneNr) {
// redirect user to my web service
window.location.replace("http://telephony.com/call?nr="+telephoneNr);
return;
}
}
找到此方法
这在Dynamics 2015的形式中运行良好(我的自定义链接弹出而不是Skype / Lync)。但是,这仅适用于实体表单,因为我无法将Web资源注入实体视图。
我的其他想法如何实现这样的功能:
由于我掌握了对Dynamics的理解并且没有插件/资源开发方面的经验,所以我对这些问题感到有点困惑。
答案 0 :(得分:0)
目前,我找到了两种可用于实现自定义CTC功能的选项。 (两者都有不受动态crm官方支持的缺点。)
非常简单:将“Click-To-Call”按钮添加到全局功能区,该功能区仅在选择一行时在特定网格上启用。 此按钮指的是一个JS-Action,它通过ODATA检索电话号码,然后启动拨号过程。
CustomRule
注入向功能区添加一个全局按钮,该按钮引用每<CustomRule>
的JS资源。然后,JScript从具有.ms-crm-Phone
类的链接中取消绑定所有操作,并替换其href属性。
如果想要用自己的逻辑覆盖集成的“Skype / Lync - Click to Dial”功能,这将非常有用。
直到现在我才测试这种方法,所以我不能保证它的工作正常!
注意:我会在有空的时候尽快提供示例脚本。