freeswitch php esl,FreeSWITCH增加PHP ESL模块支持
若FreeSWITCH以前已经编译过,需要增加PHP ESL模块支持,操作步骤如下
安装依赖
yum -y install libxml2-devel pcre-devel bzip2-devel curl-devel gmp-devel aspell-devel libtermcap-devel gdbm-devel db4-devel libedit-devel php-devel
进如FreeSWITCH源码目录,执行如下命令
/root/freeswitch-1.4.26
./configure
cd libs/esl/
[root@localhost esl]# make phpmod-install
make MYLIB=".././.libs/libesl.a" SOLINK="-shared -Xlinker -x" CFLAGS="-I/root/freeswitch-1.4.26/libs/esl/src/include -I/root/freeswitch-1.4.26/src/include -I/root/freeswitch-1.4.26/src/include -I/root/freeswitch-1.4.26/libs/libteletone/src -fPIC -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL" CXXFLAGS="-I/root/freeswitch-1.4.26/libs/esl/src/include -I/root/freeswitch-1.4.26/src/include -I/root/freeswitch-1.4.26/src/include -I/root/freeswitch-1.4.26/libs/libteletone/src -fPIC -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1" CXX_CFLAGS="" -C php
make[1]: Entering directory `/root/freeswitch-1.4.26/libs/esl/php'
g++ -I/root/freeswitch-1.4.26/libs/esl/src/include -I/root/freeswitch-1.4.26/src/include -I/root/freeswitch-1.4.26/src/include -I/root/freeswitch-1.4.26/libs/libteletone/src -fPIC -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -I/root/freeswitch-1.4.26/libs/esl/src/include -I/root/freeswitch-1.4.26/src/include -I/root/freeswitch-1.4.26/src/include -I/root/freeswitch-1.4.26/libs/libteletone/src -fPIC -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -Wno-unused-label -Wno-unused-function -c esl_wrap.cpp -o esl_wrap.o
g++ -shared -Xlinker -x esl_wrap.o .././.libs/libesl.a -lcrypt -lcrypt -ledit -lncurses -lm -ldl -lnsl -lm -lm -lcrypt -lm -lcrypt -lpthread -o ESL.so -L. -lssl -lcrypto
make[1]: Leaving directory `/root/freeswitch-1.4.26/libs/esl/php'
make -C php install
make[1]: Entering directory `/root/freeswitch-1.4.26/libs/esl/php'
test -d "/usr/lib64/php/modules" || mkdir -p "/usr/lib64/php/modules"
cp ESL.so "/usr/lib64/php/modules"
test -d "/usr/share/pear" || mkdir -p "/usr/share/pear"
cp ESL.php "/usr/share/pear"
test -d "/etc/php.d" || mkdir -p "/etc/php.d"
test -f "/etc/php.d/esl.ini" || echo 'extension=ESL.so' > "/etc/php.d/esl.ini"
make[1]: Leaving directory `/root/freeswitch-1.4.26/libs/esl/php'
到此为止已经编译完成,进入到目录,该目录下有如下文件
cd freeswitch-1.4.26/libs/esl/php/
[root@localhost /]# ls
ESL.php ESL.so esl_wrap.cpp esl_wrap.o Makefile Makefile.am Makefile.in php_ESL.h single_command.php test.php
测试是否成功,可运行single_command.php脚本,传入任何FreeSWITCH命令作为参数,如下已经成功执行命令
[root@localhost /]# ./single_command.php version
Command to run is: version
FreeSWITCH Version 1.4.26~64bit ( 64bit)
后期ESL开发过程中只需拷贝文件ESL.php和ESL.so到项目目录,并引入ESL.php文件即可
参考官方文档https://freeswitch.org/confluence/display/FREESWITCH/Event+Socket+Library
freeswitch php esl,FreeSWITCH增加PHP ESL模块支持相关推荐
- 添加议题模块html,WordPress 技巧:为评论模块增加更多 HTML 标签支持
WordPress 原生的评论模块内容,支持使用 HTML 标签来增强评论内容的格式和效果.但是这肯定会带来一些安全隐患,特别是评论这种随便一个浏览者都可以提交数据的地方,容易产生跨站攻击(XSS), ...
- Nginx平滑升级,并增加清除缓存模块
平滑升级nginx0.8.46到nginx1.0,并增加清除缓存模块 ×××: wget http://labs.frickle.com/files/ngx_cache_purge-1.0.tar.g ...
- 万粉博主为CSDN增加粉丝数据分析模块【硬核】
万粉博主为CSDN增加粉丝数据分析模块[硬核] 1. 写在前面 2. 数据准备 2.1. 博客主页面 2.2. 粉丝主页面(多个) 3. 代码展示 3.1. 爬取博客主页面粉丝数据 3.2. 爬取粉丝 ...
- 电钢琴电子琴如何增加蓝牙MIDI模块BLE连接手机双模支持U盘播放
简介 随着电子乐器的不断兴起,用户体验至上的apple,竟然把乐器MIDI和蓝牙整合在一起,出了一个蓝牙MIDI标准 这就大大增加了乐器和IOS系统的设备互动性了,你可以选择iphone,当然也可以选 ...
- 【原创】关于X10DAC增加TPM2.0模块升级Windows11的二三事儿
关于X10DAC增加TPM2.0模块升级Windows11的二三事儿 背景 TPM2.0 关于处理器 尾声 背景 Windows11已经发布好久好久了,一直想升级,笔记本经过一番隐私相关的折腾,终于能 ...
- 激光雷达模块支持提高高速公路速度
激光雷达模块支持提高高速公路速度 LiDAR module supports increased highway speed What's LIDAR? 自动驾驶技术的出现,无疑地扩大了激光成像探测和 ...
- 技嘉B85M-D3V刷入NVME模块支持NVME SSD启动
技嘉B85M-D3V刷入NVME模块支持NVME SSD启动 目的:自己留存 前因:机械硬盘已经慢的跟蜗牛一样了,是时候更换固态硬盘了,而主板不带nvme插槽,再加上sata和nvme的ssd,价格相 ...
- Openwrt增加对 sd card 支持
一.硬件平台 1.1 控制器:MT7620(A9内核) 二.软件平台 2.1.开发环境:Ubuntu12.04 2.2.软件版本:openwrt 官方15.05版本SDK开发包(CHAOS CALME ...
- ClewareControl 2.4 发布,传感器控制程序,增加对 python 的支持
为什么80%的码农都做不了架构师?>>> ClewareControl 2.4 增加对 python 的支持,可轻松开发使用该接口的相关应用. Clewarecontrol 可 ...
- 用python操作浏览器的三种方式_python的webbrowser模块支持对浏览器进行一些操作...
python 的 webbrowser 模块支持对浏览器进行一些操作 主要有以下三个方法: webbrowser.open(url, new=0, autoraise=True) webbrowser ...
最新文章
- retinaface tensorRT
- 牛客竞赛语法入门班数组栈、队列和stl习题【未完成】
- java取网页源码_Java获取任意http网页源代码的方法
- interface abstract与virtual
- ZOJ3805Machine(二叉树左右子树变换)
- 第3課 ここはデパートです
- magento图片处理 Customize Magento’s Image Resize Functionality
- 一看就懂的例子告诉你用react-redux的正确姿势
- 百度 自然语言处理API
- 天猫广告业务独立运营
- python列表姓氏,Python程序可以打印完整姓氏的名字的缩写吗?
- 飞思卡尔K60最小系统设计板方案
- bt种子制作php,BT种子制作
- 我的世界联机侠服务器文件夹,我的世界联机侠空岛服务器怎么建 | 手游网游页游攻略大全...
- 2.2.2-6-2 补码位乘法(Booth算法)
- rf 433/868MHZ sub-1g 无线通信知识系列(3):组网信道
- excel 中如何设置误差线以及其意义
- SAP采购订单屏幕BADI增强(实例)
- Teach Yourself Programming in Ten Years——用十年教会自己编程
- 数字信号处理 | 实验二 MATLAB z换和z逆变换分析+求解差分方程+求解单位冲击响应+求解幅频相频特性曲线+求解零极点