本文主要是介绍Asterisk电话会议功能主要应用介(1),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
MeetMe
Asterisk称作为“会议桥”,但从阅读源代码可以了解到其实现的功能包括对即将进入会议的语音通道携带的参数的有效性进行检查;对会议选项参数进行设置且生效,会议选项参数将会在下面介绍;对加入成员的语音通道的语音编解码进行转换成线性语音格式;将加入成员的语音通道桥接到会议通道当中,会议通道对应DAHDI驱动中的一个伪设备,标识为pseudo;将混音后的线性语音格式转换为加入会议语音通道的语音格式;最后meetme中的闭循环监控语音通道中的DTMF事件等。
如何配置Asterisk会议室?
Asterisk meetme功能可通过以下三种方式配置会议室号码及密码:
1)静态分配会议,静态会议在meetme.conf中配置,在context为[rooms]下配置会议室,配置使用如下:
conf => confno[,pin][,adminpin]
例如:
conf => 2345 ;分配一个会议号码为2345的会议室
conf => 2345,1111 ; 分配一个会议号码为2345的会议室,会议密码为1111,
conf => 2345,1111,2222 ; 分配一个会议号码为2345的会议室,会议密码为1111, ; 主持人密码为2222
2)动态分配会议,动态会议室不需要在meetme.conf配置固定的会议号码,只需要在拨号方案中使用meetme应用时添加 d 或 D选项,表示动态的增加一个会议室。
例如:
exten => 12345,1,MeetMe(501,Mpd)
3) realtime 会议,暂且翻译为实时会议,实时会议的会议号码将在数据表中分配,此数据表由Asterisk定义,通过extconfig.conf中配置访问数据表的方式。那么在拨号方案中可以无需再指定会议室号码,可以保留为空。当用户拨打进入会议室的分机号时,Asterisk将提示用户输入会议号码和会议密码,当输入的信息与数据表中保存的一致时,用户就可以加入会议室当中,此种方式配置相对复杂,但是应用却是非常广泛。
如何在拨号方案中配置电话会议应用?
MeetMe([confno][,options[,pin]])
例如:
MeetMe(501, 1111,2222) ;其中501为会议室号码,1111为参会密码,2222为主持人密码。
下面将介绍meetme应用的所有选项,引用了Asterisk电话会议中提供的信息:
-= Info about application 'MeetMe' =-
[Synopsis]
MeetMe conference bridge.
[Description]
Enters the user into a specified MeetMe conference. If the <confno> is o
mitted, the user will be prompted to enter one. User can exit the conference
by hangup, or if the 'p' option is specified, by pressing '#'.
NOTE: The DAHDI kernel modules and at least one hardware driver (or
dahdi_dummy) must be present for conferencing to operate properly. In addition,
the chan_dahdi channel driver must be loaded for the 'i' and 'r' options to
operate at all.
[Syntax]
MeetMe([confno][,options[,pin]])
[Arguments]
confno
The conference number
options
a: Set admin mode.
A: Set marked mode.
b: Run AGI script specified in ${MEETME_AGI_BACKGROUND} Default:
'conf-background.agi'.
NOTE: This does not work with non-DAHDI channels in the same
conference).
c: Announce user(s) count on joining a conference.
C: Continue in dialplan when kicked out of conference.
d: Dynamically add conference.
D: Dynamically add conference, prompting for a PIN.
e: Select an empty conference.
E: Select an empty pinless conference.
F: Pass DTMF through the conference.
i: Announce user join/leave with review.
I: Announce user join/leave without review.
l: Set listen only mode (Listen only, no talking).
m: Set initially muted.
M[(class)]: Enable music on hold when the conference has a single
caller. Optionally, specify a musiconhold class to use. If one is not
provided, it will use the channel's currently set music class, or 'de
fault'.
o: Set talker optimization - treats talkers who aren't speaking as
being muted, meaning (a) No encode is done on transmission and (b) Received
audio that is not registered as talking is omitted causing no buildup
in background noise.
p[(keys)]: Allow user to exit the conference by pressing '#' (default)
or any of the defined keys. If keys contain '*' this will override option
's'. The key used is set to channel variable ${MEETME_EXIT_KEY}.
P: Always prompt for the pin even if it is specified.
q: Quiet mode (don't play enter/leave sounds).
r: Record conference (records as ${MEETME_RECORDINGFILE} using format
${MEETME_RECORDINGFORMAT}. Default filename is 'meetme-conf-rec-${CON
FNO}-${UNIQUEID}' and the default format is wav.
s: Present menu (user or admin) when '*' is received (send to menu).
t: Set talk only mode. (Talk only, no listening).
T: Set talker detection (sent to manager interface and meetme list).
W[(secs)]: Wait until the marked user enters the conference.
x: Close the conference when last marked user exits
X: Allow user to exit the conference by entering a valid single digit
extension ${MEETME_EXIT_CONTEXT} or the current context if that variable
is not defined.
1: Do not play message when first person enters
S(x): Kick the user <x> seconds *after* he entered into the
conference.
L([x][:y[:z]]): Limit the conference to <x> ms. Play a warning when
<y> ms are left. Repeat the warning every <z> ms. The following special
variables can be used with this option:
${CONF_LIMIT_TIMEOUT_FILE}: File to play when time is up.
${CONF_LIMIT_WARNING_FILE}: File to play as warning if <y>
is defined. The default is to say the time remaining.这篇关于Asterisk电话会议功能主要应用介(1)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!