zoukankan      html  css  js  c++  java
  • 使用python语言编写脚本控制freeswitch总结

    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 中的例子和源码
  • 相关阅读:
    spring boot 与 spring cloud 版本映射
    Java锁
    并发编程(二)
    并发工具类和线程池
    并发编程
    Map双列集合(二)
    Map双列集合(一)
    单列集合List
    类加载
    JVM字节码与代码优化
  • 原文地址:https://www.cnblogs.com/Edwardzhao/p/5908671.html
Copyright © 2011-2022 走看看