我正在为一个客户做一个简单的客户关系管理系统的呼叫程序,我和他们的电话系统有问题。他们有一个具有内部路由的Cisco IP电话系统,当我执行以下代码时,我总是得到'9900‘作为主叫方ID号码。有没有办法得到被路由的号码?我基本上是TAPI的新手,所以提前感谢您的帮助。
cn = tapi.RegisterCallNotifications(line, true, true, TAPI3Lib.TapiConstants.TAPIMEDIATYPE_AUDIO, 2);
if (cn.Call.CallState == TAPI3Lib.CALL_STATE.CS_OFFERING){
string c = cn.Call.get_CallInfoString(TAPI3Lib.CALLINFO_STRING.CIS_CALLERIDNUMBER);
}Aaron Brake
发布于 2013-02-14 22:48:31
我不熟悉这个系统,它可能不太可能,但您是否尝试过查看ConnectedIdNumber (也在CallInfo结构中)。这个值可能不会被填充,直到呼叫被接受(不等于被应答),但它确实显示了正确的呼叫线路标识符,它可能仍然会出现一些问题……祝好运!
发布于 2014-08-04 23:53:23
这是一个老生常谈的问题,所以我希望你能找到答案,但仅供后人参考,我在一个UCCM电话系统上做了类似的工作,并发现了该系统使用UCCX进行呼叫队列/寻线管理时的一个关键限制。
当使用UCCX时,线路的实际来电将在UCCX层为此设置的一组分机中的一个上进行暂留。然后将呼叫前转到呼叫中心座席的线路时,监视该线路的TAPI客户端上的软件可见的事件将获取UCCX用于暂留呼叫的分机作为主叫方ID,而不是原始的外线号码。我从来不知道如何使用TAPI来获取原始呼叫背后的号码,但是UCCX会跟踪,所以我们最终的解决方案只是在UCCX中创建了一个脚本,该脚本将使用正确的源号码来查询我们的数据库,以获得更高级的CID信息(这是原始TAPI应用程序的要点,最初设计用于“普通”UCCM 800块)。
https://stackoverflow.com/questions/14856422
复制相似问题