报错:
Connected to Asterisk 16.5.0 currently running on cloudflpc (pid = 32733)
== Using SIP RTP CoS mark 5
-- Executing [9999@public:1] Answer("SIP/1001-00000000", "") in new stack
[Aug 26 16:52:06] WARNING[365][C-00000001]: pbx.c:2922 pbx_extension_helper: No application 'MeetMe' for extension (public, 9999, 2)
== Spawn extension (public, 9999, 2) exited non-zero on 'SIP/1001-00000000'
在<<asterisk权威指南>》第七章:外线连接7.3.2.1节中了解到:dahdi是一个获取有效时钟源的简单可靠方法,
而meetme会议通话,需要同步时钟。这也是与以下可能原因契合。
查找到可能原因:
装好asterisk之后,app_meetme的功能不能使用,是因为在安装asterisk的时候检测到dahdi没有安装好,所以app_meetme没有安装。(安装app_meetme需要依赖dahdi),这个可以从menuselect.makeopts里面看到。
所以要使用meetme,page的功能,必须首先安装好dahdi。
用安装包dahdi-linux-complete-2.2.0.2.2安装dahdi时会遇到很多问题:如遇到以下问题:error: 'TASK_INTERRUPTIBLE' undeclared (first use in this function)。 是因为缺少头⽂件sched.h,在相应⽂件⾥加⼊#include "linux/sched.h"即可。
之后还会出现:struct "net_device" has no member of "start"/"stop"...... 这是因为linux内核版本与所下载的dahdi-linux-complete安装包不匹配。
下载⼀个⾼版本的dahdi-linux-complete包(dahdi-linux-complete-..)即可,上⾯的问题也不存在 了。
http://www.360doc.com/content/12/0902/11/7919609_233719984.shtml
但我安装dahdi后,按照以下步骤:
进入到asterisk源码目录下,执行
1 |
|
选中Application菜单下的app_meetme,保存退出
重新编译,安装asterisk
1 |
|
重新尝试会议拨号,依然出现pbx.c:2922 pbx_extension_helper: No application 'MeetMe' for extension (public, 9999, 2),未能解决。
遂不再使用meetme会议方案,在asterisk menu模块中,他已经被Confbridge替代了。
使用confbridge替代MeetMe:
编辑confbridge.conf file加入以下代码:
; --- ConfBridge Bridge Profile Options ---
[default_user]
type=user
[default_bridge]
type=bridge
max_members=50
在extension.conf file加入下方代码:
exten => 2000,1,Progress()
exten => 2000,n,Wait(1)
exten => 2000,n,ConfBridge(1,default_bridge,default_user)