1、 在Linux环境下已经安装了freeswitch,(没安装freeswitch,请安装说明文档)
2、 进入源代码目录 cd libs/esl 目录下 首先安装 yum install python-devel
l 首先安装 python-devel,执行yum install python-devel
l make pymod
l make pymod-install
3、安装pip工具参照前面的一篇博客
4、安装swig工具,yum install swig
5、安装完成pip之后,再安装python-ESL
执行 pip install python-ESL
脚本:
import ESL
con = ESL.ESLconnection(‘localhost‘, ‘8021‘, ‘ClueCon‘) #通过ESL与freeswitch建立连接
if con.connected: con.events(‘plain‘, ‘CHANNEL_CREATE CHANNEL_ANSWER CHANNEL_PROGRESS CHANNEL_PROGRESS_MEDIA CHANNEL_HANGUP‘) while 1: e = con.recvEvent() event_name = e.getHeader("Event-Name") if event_name in ["CHANNEL_CREATE"]: unique_id = e.getHeader("unique-id") caller = e.getHeader("Caller-Caller-ID-Number") #主叫 按照事情进行获取消息字段中的值 callee = e.getHeader("Caller-Destination-Number") #被叫 con.execute("ring_ready", "", unique_id) elif (event_name in [‘SERVER_DISCONNECTED‘]): break 里面还有很多函数可以参考 libs/esl 中的例子和源码
时间: 2024-11-05 12:25:27