分享

Elastix CDR通话记录写入MS SQL Server数据库

 昵称16778930 2014-04-17

融合通讯统一通信的一大特征就是能够让企业通信和企业管理信息系统比如CRM客户关系管理系统,MIS管理信息系统,ERP企业资源管理系统等结合起来。我们与很多系统集成商和软件开发商合作的时候发现,打通数据库可能是首要解决的问题。

Elastix/Asterisk使用Linux操作系统环境和Mysql数据库,并不直接支持MS SQL Server作为数据库后端,而很多系统集成商和管理软件开发商使用的Windows环境和MS SQL Server数据库。我们以一个最基本的融合案例:CDR通话详情记录表写入到MS SQL数据库,介绍一种融合的方法,供通信厂家和管理软件厂家参考。

如果想让Elastix/AsteriskCDR呼叫详情记录到Microsoft SQL Server 数据库的话,有两种办法: cdr_odbc 或者 cdr_tds 。无论哪种办法,都是依赖FreeTDS 包的。

Ealstix安装包官方并未提供FreeTDS,因此,要实现与MS SQL Server对接,就首先要安装FreeTDS,然后再重新编译安装Asterisk。具体步骤如下:

1     安装配置freetds

yum –y install freetds*

vi /etc/freetds.conf

写入如下信息:

[Server80]

host = 数据库服务器IP地址

port = 1433

tds version = 8.0 SQL Server2000以上用8.0,其他低版本对应7.0

 

编辑完之后可以用这个命令行来测试数据库联接情况,

tsql -S Server80 -U sa -P sa密码

如果有报错误,则首先考虑是否1433端口未打开。

数据库服务器需开放1433端口。如果不确认是否已开放该端口,可以在Elastix机器上用telnet 数据库服务器IP 1433 这个命令来测试下。

2     编译安装Asterisk

Elastix 2.3为例,该版本采用Asteisk 1.8.11.0,所以我们先重新编译这个版本。

3     创建数据表

Microsoft SQL Server 2000下面创建一个新的数据库asteriskcdrdb,然后在该数据库下面创建cdr表。

4   配置cdr_tds.conf

清空cdr_odbc.conf

> /etc/asterisk/cdr_odbc.conf

编辑cdr_tds.conf

vi /etc/asterisk/cdr_tds.conf



如您在配置过程中遇到问题,更多详细操作步骤细节,请与简捷通信联系探讨。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多