做好自己份内事
分类: 其他UNIX
2015-12-02 15:03:00
作者:赵晓筱
日期:2015-11-25
联系邮箱:
本文基于前一篇文章openwrt集成asterisk基础上集成asterisk-gui。如果openwrt都没有集成asterisk,集成asterisk-gui也毫无意义。
在openwrt历程中是有支持asterisk-gui的。不知道为什么后期这部分被删除了,具体原因尚且不是很清楚。在现在的openwrt中luci选择节点下有luci-app-asterisk及luci-app-pbx。不过这两个界面支持个人不知道如何使用,asterisk-gui是大多数人比较熟悉的配置界面。不过既然选择集成asterisk-gui,所以本文只介绍如何集成asterisk-gui。
要想集成asterisk-gui,首先得熟悉openwrt中package的概念。openwrt支持那么多集成模块,而且源码也不是很多,完全依靠这个神秘的package。大家可以看下官网介绍如何创造一个自己的package。地址:http://wiki.openwrt.org/doc/devel/packages#dokuwiki__top。
要想集成asterisk-gui就得写一个通用的package。在这里我分享一下我个人写的package,可能不是很好,但是经过测试使用是可以用的。
首先在openwrt源码中package目录下新建文件夹asterisk-gui,进入文件夹新建Makefile文件,文件内容如下:
点击(此处)折叠或打开
然后在裁剪内核的配置界面中选择:
Network --->
Telephony --->
< > asterisk-gui............................... Asterisk GUI for Asterisk x.x
主意哦,这个选项是增加了Makefile才会有的哦,默认是没有的哦,选择之后编译成功之后,uboot烧录之后。
ssh进入openwrt系统中修改配置文件,asterisk配置文件在/etc/asterisk/目录下;
修改配置文件http.conf:(没有此配置文件,确定asterisk已经正确安装时就增加此文件)
[general]
enabled=yes
enablestatic=yes
bindaddr=0.0.0.0 # allow GUI to be accessible from all IP addresses.
#bindaddr=127.0.0.1 # require access from the machine Asterisk is running on
bindport=8088
修改配置文件manager.conf:
[general]
enabled = yes
webenabled = yes
文件结尾增加:
[admin]
secret = admin
read = system,call,log,verbose,command,agent,config,read,write,originate
write = system,call,log,verbose,command,agent,config,read,write,originate
执行命令:
chmod 644 /etc/asterisk/*
rm -rf /usr/share/asterisk/static-http
ln -s /var/lib/asterisk/static-http /usr/share/asterisk/static-http
重新启动asterisk,在asterisk后台分别执行命令:
http show status
manager show settings
输出结果应该类似如下:
如果有错误则检查。
如果正常,则在浏览器中输入:
及可以打开熟悉asterisk-gui配置界面了。
登录名,密码都为admin
第一次登陆会出现一些错误,最常见的是.. /dahdi/system.conf文件缺失,这个手动创建/etc下dahdi目录,再创建一个system.conf文件。主要是看有错误就解决对应的错误,在编译配置的时候需要配置
Utilities --->
Telephony --->
<*> dahdi-cfg..... DAHDI tools dahdi_cfg, dahdi_scan and
fxotun
<*> dahdi-monitor.. DAHDI tools dahdi_monitor,
dahdi_speed and dahdi_test
Kernel modules --->
Voice over IP --->
-*- kmod-dahdi............ DAHDI basic infrastructure
如果后期asterisk-gui启动有错误,就将packages/telephony下对应的kmod-dahdi_**.ipk安装到openwrt中。这样就能解决问题了。
Good luck!!