与电话系统进行接口有谁知道任何'标准'方式与电话系统(思科CCM)通过* nix中的C/C++应用接口吗?我过去使用过MS TAPI,但这仅仅是Windows,不想去看看它的唯一选项jTAPI(Java)路线。从* nix
我想监视电话系统的记录目的(所以我知道用户何时打过电话,接到过电话等)。 TAPI善于处理这类事情,但我不能成为第一个想在没有Windows服务器的情况下做类似事情的人。
请注意,我需要与现有的PABX系统集成 - 特别是Cisco CCM和Nortel BCM。
与电话系统进行接口有谁知道任何'标准'方式与电话系统(思科CCM)通过* nix中的C/C++应用接口吗?我过去使用过MS TAPI,但这仅仅是Windows,不想去看看它的唯一选项jTAPI(Java)路线。从* nix
我想监视电话系统的记录目的(所以我知道用户何时打过电话,接到过电话等)。 TAPI善于处理这类事情,但我不能成为第一个想在没有Windows服务器的情况下做类似事情的人。
请注意,我需要与现有的PABX系统集成 - 特别是Cisco CCM和Nortel BCM。
据我所知,在两个电话标准TAPI和CSTA方面有经验,供应商(如思科,北电,NEC)之间在标准API方面没有这样的协议。
假设不需要呼叫/设备控制,我建议您在目标PBX平台上查看SMDR(站点消息详细记录)的可用性。这将允许您以文本流的形式访问PBX活动,并且可以解析数据以进一步操作以适合您的目的。
PBX供应商之间的格式最有可能会有所不同,但希望这可以被抽象掉,以便核心应用程序功能可以重复使用。
这可能是更便携的选择,再次假设不需要呼叫/设备控制,因为您不依赖于供应商在您选择的平台上提供CTI连接。
这是SMDR的另一个投票。我见过的电话系统都提供了通过电话盒上的串行端口进行SMDR记录的选项。只需从串口捕获文本并根据需要进行解析即可。
我写了一个服务器进程,捕获SMDR输出,解析并将结果保存在数据库中,我们的其他应用程序可以使用该数据库查看每部电话的分机号码,电话号码,时间和长度。
这是一个老问题,但仍显示在搜索结果中,所以我想我会后我的解决方案在这里:
我创建了一个通过telnet连接到松下KX PBX小bash脚本,它计划使用crontab
运行,然后编写我的应用程序代码以获取日志文件并解析它们。
这里是我的bash脚本:
#!/bin/sh
HOST="192.168.0.200"
PORT="2300"
USER="SMDR"
PASS="PCCSMDR"
FILE=/var/smdr/smdr-`date +%F`.log
TS=`date +"%F %T"`
echo "### ${TS}" >> $FILE
(
echo open $HOST $PORT
sleep 2
echo $USER
sleep 2
echo $PASS
sleep 150
echo "quit"
) | telnet | tee -a $FILE
退房[星号](http://www.asterisk.org/)。 – Ferruccio 2008-09-17 18:44:27