FreeSWITCH及VOIP,Openser,电话机器人等产品中文技术资讯、交流、沟通、培训、咨询、服务一体化网络。QQ群:293697898
遇到很多人想要存储话单,我的第一建议是用FreeSWITCH官方推荐的pg_cdr模块,但又有很多人希望使用mysql,那么多年前哥们写过一个mysql原生模块在:
https://github.com/ordinerf/mod_cdr_mysql/
apt-get install mysql-server
apt-get install libmysql++-dev
在安装了mysql-server后,mysql -u root -p后
```sql
create database cdr;
CREATE TABLE IF NOT EXISTS `freeswitch_cdr` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`direction` varchar(16) DEFAULT NULL,
`call_id` varchar(255) DEFAULT NULL,
`local_ip_v4` varchar(32) CHARACTER SET latin1 DEFAULT NULL,
`caller_id_number` varchar(255) CHARACTER SET latin1 DEFAULT NULL,
`context` varchar(32) DEFAULT NULL,
`destination_number` varchar(255) CHARACTER SET latin1 DEFAULT NULL,
`route` varchar(255) DEFAULT NULL,
`route_ip` varchar(32) DEFAULT NULL,
`start_stamp` timestamp NULL DEFAULT NULL,
`answer_stamp` timestamp NULL DEFAULT NULL,
`end_stamp` timestamp NULL DEFAULT NULL,
`duration` int(11) DEFAULT NULL,
`billsec` int(11) DEFAULT NULL,
`hangup_cause` varchar(64) CHARACTER SET latin1 DEFAULT NULL,
`uuid` varchar(255) CHARACTER SET latin1 DEFAULT NULL,
`read_codec` varchar(64) CHARACTER SET latin1 DEFAULT NULL,
`write_codec` varchar(64) CHARACTER SET latin1 DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=11 ;
```
然后git clone下以上的git到fs/src/mod/event_handlers/下
并进行编译,一切顺利就会把模块加载到你的fs中了
freeswitch@internal> load mod_cdr_mysql
+OK Reloading XML
+OK
2016-04-25 18:12:21.721813 [INFO] mod_enum.c:880 ENUM Reloaded
2016-04-25 18:12:21.721813 [INFO] switch_time.c:1415 Timezone reloaded 1750 definitions
2016-04-25 18:12:21.721813 [INFO] mod_cdr_mysql.c:539
##########################################
########## MySQL CDR LOADED ##########
##########################################
########## HOST : localhost
########## DB : cdr
########## Table : freeswitch_cdr
##########################################
2016-04-25 18:12:21.721813 [CONSOLE] switch_loadable_module.c:1465 Successfully Loaded [mod_cdr_mysql]